【AR开发-开源框架】使用Sceneform-EQR快速开发AR应用,当前接入了AREngine、ORB-SLAM,可快速地适配不同的安卓设备

Sceneform-EQR

Sceneform 概览

Sceneform是一个3D框架,具有基于物理的渲染器,针对移动设备进行了优化,使您可以轻松构建增强现实应用程序,而无需OpenGL。

借助 Sceneform,您可以轻松地在 AR 应用和非 AR 应用中渲染逼真的 3D 场景。其中包括:

  • 高级场景图 API
  • 由 Filament 提供的逼真的基于物理的渲染程序
  • 一款用于导入、查看和构建 3D 素材资源的 Android Studio 插件

Sceneform仅适用于支持ARCore的设备,而在20年之后,华为设备是不被ARCore所支持的。那么若要兼容所有安卓设备,那么则需要对其进行扩展。

EQR介绍

EQ-R模块现已开源(2024年6月3日)

源(缘)于sceneform_v1.16,现正在努力完善一个可适用于所有安卓设备的轻量化渲染器((Sceneform)EQ-Renderer)。

若您使用它做AR应用,当前接入了ARCore、AREngine、ORB-SLAM,可快速地适配不同的安卓设备(无论是否支持ARCore)。

当然,您可以仅使用它构建3D场景,而无需了解OpenGL的知识。

仓库地址

Sceneform-EQR

运行

文件目录

  • Eq-Renderer : 基于sceneform(filament)扩展的一个用于安卓端的渲染库
  • SampleProj : 示例程序
├─Eq-Renderer
│  └─Android
│      └─eq-renderer
└─SampleProj└─app

运行示例

  1. 启动AndroidStudio
  2. File > Open,选择SampleProj,点击"OK"
  3. 点击"Run ‘app’ ",运行app模块

相关文档

Sceneform

sceneform相关接口使用可以参考以下文档。

需要注意的是:sceneform1.15以及之前的版本采用sfa、sfb的方式加载模型,sceneform1.16仅支持gltf2.0格式的模型(通过gltfio,具体使用可参考filament)。

Google sceneform1.16源码存档

Google sceneform1.15帮助文档

使用EQR

sceneform-eqr是对sceneform的扩展,相关接口调用与sceneform大同小异。

个人网站

Android AR渲染引擎

安卓原生AR开发

仓库地址

不用编译Eq-Renderer源码,直接使用EQ-R的aar

https://repo.eqgis.cn/com/eqgis/eq-renderer

maven {allowInsecureProtocol = trueurl "http://repo.eqgis.cn"
}

示例

三维场景中加载模型

示例

AR场景中加载模型

示例

使用EQR实现AR桌面

示例

适配双屏设备

用于采用光学透视的AR眼镜(安卓),左右双屏合目显示。

示例

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/21337.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

音乐版权NFT开发流程

开发音乐版权NFT(非同质化代币)的流程涉及多个步骤,从概念化和版权管理到技术实现和市场推广。以下是一个详细的开发流程指南。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流合作。 1.概念化与规划 定义…

使用git

解决参考如下链接 git设置全局用户名和邮箱以及删除方式

【Qt系列教程】一、认识Qt、安装Qt、运行Hello Qt

文章目录 1.1 Qt 简介1.2 Qt 的安装1.3 编写 Hello World 1.1 Qt 简介 Qt(官网:https://www.qt.io)于1995年5月首次公开发布,是一个跨平台的应用程序开发框架,也是最主流的 C 开发框架; Qt 具有其他编程…

前端 实现有时间限制的缓存

首先我们需要创建一个名为TimeLimitedCache的构造函数,然后定义一些方法,如set, get,和count。以下是具体的示例代码: // 定义 TimeLimitedCache 构造函数 var TimeLimitedCache function( ) {// 初始化一个空的 cache 对象,用于…

【全开源】考试答题系统源码(FastAdmin+ThinkPHP+Uniapp)

一款基于FastAdminThinkPHPUniapp开发的小程序答题考试系统,提供全部前后台无加密源代码,支持私有化部署。 📝考试答题系统:便捷高效的学习新选择💡 📚 考试答题系统是什么? 考试答题系统&…

【Transformer(7)】Transformer架构解析

一、Transformer结构图 从上图可以看到: Transformer结构主要由编码和解码两大部分组成: (1)输入- position embedding - patch embedding (2)编码器 多头注意力机制 Add & NormMLP Add & Norm &…

怎么判断护眼台灯真的有用吗?揭秘护眼台灯怎么选!

中国目前面临着严重的近视问题,各学段学生的近视率普遍偏高,且高度近视的占比也不容忽视。这不仅对学生的身体健康构成威胁,也对国家的经济社会可持续发展和国家安全构成潜在风险。随着时代的进步和教育的普及,儿童近视的问题已经…

Ubuntu Todesk远程连接一直卡在100%

关于Todesk远程Linux卡在连接服务器的解决方案 在网上看到很多篇文章都说改硬解码什么的 反正我试过是没用 下面是我的解决方案 编辑下面的文件 sudo vim /etc/gdm3/custom.conf 这里如果大家不会使用 vim 退出 1. 按一下ESC键 2. 同时按住shfit: 3. 输入wq 4. 回车重启系…

植物大战僵尸杂交版全平台 PC MAC 安卓手机下载安装详细图文教程

最近植物大战僵尸杂交版非常的火,好多小伙伴都想玩一玩,但作者只分享了 win 版,像手机还有MAC电脑都没有办法安装,身为 MAC 党当然不能放弃,经过一番折腾,也是成功在所有平台包括手机和MAC电脑都成功安装上…

新闻发稿:8个新闻媒体推广中最常见的错误-华媒舍

在数字时代,新闻媒体的推广手段已经越来越多样化。许多媒体在推广过程中常常会犯下一些常见错误。本文将会介绍八个新闻媒体在推广中最常见的错误,并希望能够帮助各位更好地规避这些问题。 1. 缺乏明确的目标受众 在进行推广前,新闻媒体需要…

有钱还系统源码,人人还众筹还钱模式还贷系统源码

盈利模式: 1.系统里直推400 2.间推得200 3.升级是隔代匹配200 4.漏单直接设置归系统 5.九级匹配不到直接归平台 有钱还平台新注册会员,即新入的负债者要分9次分别资助先来的11名负债者每人200元,这笔资助不是一次性给到对方&#xff0c…

php设计模式之单例模式详解

单例模式(Singleton Pattern)是一种常用的软件设计模式,它确保一个类只有一个实例,并提供一个全局访问点来获取这个实例。在PHP开发中,单例模式常用于那些需要频繁实例化但又希望限制实例数量的场景,比如数…

docker学习--最详细的docker run 各子命令解释与应用

文章目录 docker run应用docker run -it那怎样才能退出容器而不用容器关闭呢 docker run -d-p-P--name docker run 容器运行命令 docker run 常见的子命令及其含义 -i 交互式,和-t一起使用 -t 打开一个终端 -d 后台运行 -p/-P 暴露容器中的服务端口 –name 指定容…

速通systemverilog

这里写目录标题 一、systemverilog的大部分新语法logicalways_combunique_casepriority casealways_fftypedefstructenumunioninterface 二、实现流水灯三、全加器以及仿真 一、systemverilog的大部分新语法 logic always_comb unique_case priority case case中常量和变量互…

透视龙江安全网:黑龙江信息安全等级保护测评的标准化实践与地域特性

在当今数字时代,信息安全成为衡量社会发展水平的重要指标之一。作为中国北方的重要省份,黑龙江省在推进信息安全等级保护测评(以下简称“等保测评”)的过程中,既遵循了国家统一的标准框架,又在实践中融入了…

对HTTP和HTTPS的介绍

HTTP HTTP 是什么? HTTP (全称为 “超⽂本传输协议”) 是⼀种应⽤⾮常⼴泛的 应用层协议. 所谓 “超⽂本” 的含义, 就是传输的内容不仅仅是⽂本(⽐如 html, css 这个就是⽂本), 还可以是⼀些其他的资源, ⽐如图⽚, 视频, ⾳频等⼆进制的数据 HTTP 往往是基于传输层…

Python入门推荐:初学者指南与深度探索

Python入门推荐:初学者指南与深度探索 在数字时代的浪潮中,Python作为一种强大且易学的编程语言,日益受到广大编程爱好者的青睐。对于初学者而言,如何选择合适的入门路径,以及如何深入学习Python的精髓,是…

重学java 52.Collections集合工具类、泛型

"我已不在地坛&#xff0c;地坛在我" —— 《想念地坛》 24.5.28 一、Collections集合工具类 1.概述:集合工具类 2.特点: a.构造私有 b.方法都是静态的 3.使用:类名直接调用 4.方法: static <T> boolean addAll(collection<? super T>c,T... el…

Spring Bean的Session作用域:深度剖析与实战应用

1. 引言 理解Spring框架中Bean的作用域至关重要。其中&#xff0c;Session作用域在Web应用程序中尤为关键&#xff0c;因为它确保了用户会话期间Bean实例的共享和一致性。 2. Session作用域的基本概念 Session作用域意味着在一个HTTP Session的生命周期内&#xff0c;Spring容…

YOLOv10(1):初探,训练自己的数据

目录 1. 写在前面 2. 值得关注的点 3. 训练自己的数据集 4. 阅读代码的小建议 1. 写在前面 很多人YOLOv9还没有完全研究透&#xff0c;YOLOv10出来了。 惊不惊喜&#xff0c;意不意外&#xff01; 据论文里提到&#xff0c;YOLOv10就是为了加速推理&#xff0c;在保证精度的…