首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ARCore 初探

VR和AR区别 比较正式的解释: 虚拟现实(Virtual Reality):利用计算机创造一个虚拟空间,利用虚拟现实眼镜能够使用户完全沉浸在一个虚拟的合成环境中,利用双目视觉原理,虚拟世界在眼镜中是3D...需要使用上面提到的能支持 ARCore 的 Android 设备。...,接着在arcore_client.aar所在目录下执行jar cvf arcore_client.aar -C aar_client. 6.生成apk:在Android Studio中build->clean...建图定位:ARCore和ARKit都使用了离散点云图,跟踪器会提前去判断是否有预加载的图,没有的话就自定义新的模型,会获取到相机视角下的一个3D范围。...当你移动设备时,摄像头会捕捉到新的一图像,并加载到之前新建的3D模型中,不断增加内容。

6.4K11

Google AR 交互的开源与幕后

Light Board 的这些设计是在 Maya 和 Cinema 4D 中创建的。我们使用 Substance Painter 为模型创建了基于实物的材质。...我们在创建 Light Board 的过程中获得了很多乐趣,也希望大家可以从这个例子中看到,你们不仅可以轻松创建 AR 应用,更可以轻松使用 Cloud Anchors 等非常酷的新功能。...在 Google I/O 中,我们将 Cloud Anchors 添加到应用中,这样一来,即使一个人使用 Android 设备,另一个人使用 iOS 设备,两个人也可以同时在同一空间中协同创作。...通过多种手法配合,在不影响设计意图的情况下实现最佳的成像效果。 该应用是在 Unity 中使用 ARCore 创建的,大部分视觉内容则是在 Cinema 4D 中创建的。...3D 动画以 fbx 的格式导入到 Unity 中,在实际使用时展现的样子完全由用户和艺术品的相对位置来驱动,不得不说这种画廊看起来真是令人神往。 请点击此处下载源代码快来亲身体验一下吧!

1.4K80
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    移动AR市场风头太猛,谷歌ARCore能够狙击苹果ARkit吗?

    最近说到AR,总是会第一时间联想到苹果的ARKit平台,现在一直在移动AR上有所举动的谷歌终于坐不住了,他们在29日发布了可以和ARKit一决高低的AR平台——基于Android平台的ARCore预览版...光线预测:ARCore能够根据环境中的光线变化,使得虚拟对象的周边阴影发生变化,从而让其看起来更加逼真。...同时,谷歌ARCore支持使用Java/OpenGL、Unity和Unreal开发虚拟角色,还支持从Tilt Brush 和Google上个月推出的VR建模工具Blocks中,直接导出ARCore对象。...在手机支持上,目前可以在Google Pixel手机和Galaxy S8上使用谷歌ARCore的一些功能,不过手机系统需要升级到Android 7.0 Nougat或最新的Android 8.0 Oreo...测量,再结合它实时监测的位置和方向,能够根据大量数据实时绘制出周围世界的3D模型。

    1.1K00

    深入浅出 ARCore

    构建出这样一个模型后,可以在上面放置一些虚拟内容了。 ARCore是如何做到的呢?它使用三项关键技术将虚拟内容与真实世界整合到一起,这三种技术分别是: 运动跟踪 环境理解 光线评估 运动跟踪 ?...用户交互 ARCore使用 hit testing(命中测试) 获取与手机屏幕相对应的(x,y)坐标(如通过点击屏幕等交互方式),将其投射到 Camera 的3D坐标系中,并返回与命中点射线相交的所有平面和特征点...创建 Session 和 Conig 在 Activity中的 onCreate 方法中创建 Session 和 Config是个不错的地方。...创建 GLSurfaceView 用于AR展示 在 Google 提供的Demo中,AR的展示部分使用的是 GLSurfaceView。...做视频开发的同学都清楚,Android 可以使用三种View进行视频渲染。

    3.9K10

    2020 Google 多项 ARCore 更新带来AR开发全新可能!

    Google 发布于2018年的 ARCore 是增强现实技术开发者的平台,为 Android 和 iOS 用户创造有效的 AR 体验。...ARCore在中国 - 越来越多开发者正在创新运用 从 2018 年 ARCore 技术登陆中国,已经在教育、购物、游戏等多个行业和大量开发者进行合作。...利用 ARCore 的环境理解(Environmental Understanding)及平面识别(Plane Finding),识别环境中的对象和特征,精确地理解环境,加上炫酷逼真的 3D 模型,为孩子们带来身临其境学单词的乐趣体验...学习过程中,孩子们不仅可以将精致模型投射在家里,从各种角度进行观察,放大缩小或移动;还可以点击模型上的中英文词框,或点进查词结果页,查看中英单词的权威释义,使形象和字义深刻联结。...△ TeamViewer Pilot 应用中的 3D 注释功能让专家远程精准标记出重要细节 三星的快速测量工具 Quick Measure 也在技术支持下不断迭代 ,目前 Quick Measure 就可以在三星

    1K20

    10.16 VR扫描:麻省理工学院用VR还原世界新七大奇迹

    近日,麻省理工学院的研究团队,正尝试开发一个利用VR/AR技术,还原Machu Pichu 3D模型的项目。MachuPichu是现今保存完好的前哥伦布时期的印加遗迹,被誉为“世界新七大奇迹之一”。...研究团队利用最新一代的设备和技术扫描整个建筑,以全方位的视角记录Machu Pichu的所有特征,将其还原为3D模型。用户将能与模型交互,查看更多细节。...近日,德国初创公司Visualix推出一款新的企业级AR云平台,该平台能够帮助企业扫描仓库、工厂和商店,并创建AR导航图。据悉,该平台包括扫描应用和内容管理系统,兼容ARKit和ARCore。...Pokemon Go AR+模式支持ARCore,交互功能更加完善 ? 近日,Pokemon Go游戏开发商Niantic宣布AR+模式首次登陆Android平台。...结合ARCore新功能,允许用户使用新的AR功能体验游戏,并在真实环境中与Pokemon进行更多交互。

    73820

    在Android开发中怎样使用Application类

    ---- 在Android开发中怎样使用Application类 ---- 自己独立开发项目才发现以前对Application类并不是十分了解,现在开始直接搭建一个新项目的框架才重新踩过这个坑。...Application类在项目开发中的使用 首先在项目目录下一个Java类继承Application类,实现是onCreate()方法。...因为Application是系统组件,系统组件实例是要由系统去创建的,如果我们这里直接创建一个,不过是简单的Java对象而已,不具备任何Context能力,也无法进行任何Context操作。...在控件的构造方法中获取Context或者做其他视图操作 写过Android的同学应该知道自己或者看别人dome都很少或者基本看不到在控件构造函数内进行初始化,获取参数等这些操作吧!...具体原因是在ContextWrapper类的源码中,他有一个attachBaseContext()方法,这个方法会将传入的一个Context参数赋值给mBase对象,之后mBase对象就有值了。

    2.2K50

    ProgressiveJpeg介绍与在Android中的使用

    imageMogr2/thumbnail/300x300/interlace/1 在Android中如何使用ProgressiveJpeg 目前,在众多的开源图片加载库中,只有Fresco支持了ProgressiveJpeg...Jpeg ProgressiveJpeg的编码格式非常复杂,但使用渐进式加载,我们并不需要破解它所有的奥秘。...因为不论支不支持渐进式加载,一般的解码器(如Android中的BitmapFactory)一定能够解码出最终完整的Jpeg图片。 那么,为什么它们无法支持渐进式呢。...上面代码中,我们将读到的所有字节都写入了mBaos中。所以,在newScanOrImageEndFound();中我们将mBaos的数据拿出来做处理。...通过这种方法,我们就可以在Android设备上也展现出渐进式加载的效果。是不是很cooool。 但是,这个方法因为会不断地产生byte[]其实非常吃内存。在实际使用中,我们可以考虑限制渐进图片的粒度。

    1.8K40

    android onresume函数,android – 在Activity中重新创建后未调用onResume

    在应用程序设置中进行某些更改时,我在recreate的onActivityResult中调用MainActivity。重新创建后,不调用onResume。...另外,使用处理程序来调用recreate可以解决问题,但会导致眨眼,对用户而言很糟糕。这可能是什么错误?没有recreate的情况下如何使用Handler? 任何想法将不胜感激。谢谢!...最佳答案 在onResume()之前调用OnActivityResult()。...您可以做的是在OnActivityResult()中设置一个标志,您可以在onResume()中检入,如果该标志为true,则可以重新创建活动。...您实际上可以做的是完成活动并开始相同的活动,而不是重新创建活动。您将获得相同的效果。

    3.4K20

    在博客园随笔中插入3D分子模型

    而我们了解到通过3Dmol这样的前端工具可以实现,通过在博客园随笔中直接引入3Dmol的js最新脚本,然后在当前页构建一个容器,最后在容器中以字符串的形式填进去分子结构,比如可以填充一个xyz文件所定义的...3D分子结构。...Markdown模式的编辑器下直接引入3Dmol的最新js脚本: 然后创建一个容器...因此,我们需要把pdb文件上传到博客园的文件系统中。而又因为博客园的文件系统仅支持几种特定的文件类型,因此我使用的方法是把pdb文件改名为一个sh文件,再传到博客园的文件系统中。...而3Dmol这个工具则使能了我们使用js的技术,将一个分子的3D模型集成到我们的博客内容中,从很大程度上优化了展示的效果。

    60810

    谷歌AR搜索来了!上Chrome不仅能「云吸猫」,更有50种动物可「喂养」

    谷歌从去年开始在其搜索中显示3D动物,最近,又增加了50种动物,除了小熊猫和猫,还有长颈鹿、牛、斑马、猪和河马等。...当你点击「View in 3D」 ,它会打开你的相机,把3D 动物放在你的环境中,这样你就可以抓拍一些照片,比如说,一只河马在你的浴缸里泡澡。...多亏了 AR 技术,你可以通过手机近距离观察它们,」谷歌Arts & Culture在一份声明中说。 这些增强现实的生物或者艺术品是在谷歌的 ARCore 框架的帮助下重新创作的。...一些在 Android 和 iOS 上同时提供的 API 支持共享 AR 体验。...从本质上讲,ARCore 在做两件事:在移动设备移动时跟踪它的位置和构建自己对现实世界的理解。 ARCore 的运动跟踪技术使用手机摄像头标识兴趣点(称为特征点),并跟踪这些点随着时间变化的移动。

    48810

    在Android开发中怎样使用Application类(二)

    接着上次总结的Application类的实际项目使用Android开发中怎样使用Application类,最近我又发现了一个取巧的使用方法,给想要快速开发的同学分享下心得,也是给大家多提供一个思路吧。...App的当前Activity实例来显示Dialog. 2、工具类中用static关键字引入Application实例类的单例对象 这个才是今天我主要想说的,在import中通过static关键字引入Application...实例,工具类和帮助类中的大量方法中就不用大量依赖Context类做传入处理了。...import android.content.Context; import android.content.res.Resources; import com.cq.dome.utils.helper.ResHelper...第二种方法当然在设计模式上有耦合度很高的缺点,导致这些工具类都要依赖App类,但是在Android开发中,这个你可以封装一个BaseApplication的Application的基础类来,让其他的Application

    1.6K20

    在 Mac OS X 中创建和使用内存盘

    在 Mac OS X 中创建和使用内存盘 在 Windows 系统上一直使用 ImDisk 创建内存盘作为缓存, 将系统临时目录、 浏览器缓存等设置到内存盘, 这样做的好处是很明显的: 1、 内存盘不用定时清理..., 系统重启就自动清空 2、 读写内存的速度是非常快的, 程序运行速度也会加快很多 现在转到 Mac OS X 平台, 当然也要使用内存盘了, 在 OS X 系统上, 创建和使用内存盘比较容易的, 而且不需要借助第三方软件..., 只是设置稍微繁琐一些, 在 OS X 系统上创建和使用内存盘的步骤如下: 1、 打开 AppleScript Editor(找不到的可以直接用 Spotlight 搜索); 2、 输入下面的脚本:...我的 MBP 4G 内存, 创建 512M 内存盘。 3、 将这个脚本保存为应用程序, 如下图所示: ?...注意问题 1、 系统运行中不要 unmount ramdisk , 否则可能会出现不可预料的后果; 2、 如果用的是 SSD 硬盘, 就不要再设置内存盘了, SSD 的速度已经很快了;

    3K20

    在springboot工程中创建定时任务,使用quartz

    开篇 这篇只介绍怎么用,不说原理;先说一种常用的定时任务的方法;使用schedule定时任务最常用的是使用Springboot自带schedule;使用springboot自带的schedule实现定时任务...,在定时任务的具体逻辑方法加上注解@Schedule("${cron表达式}")使用Quratz:Quartz 是一个完全由 Java 编写的开源作业调度框架,为在 Java 应用程序中进行作业调度提供了简单却强大的机制...创建springboot工程: 在IDEA中基于springboot 2.7....JobConfiguration,注意添加注解Configuration;在JobConfiguration中添加两个BeanJobDetail 表示一个具体的可执行的调度程序,Job 是这个可执行程调度程序所要执行的内容...在Trigger中使用withSchedule方法加入调用队列;@Configurationpublic class JobConfiguration { @Value("${quartz.push.cron

    3.1K10

    HTTPS 原理浅析及其在 Android 中的使用

    可能是购买的CA证书比较新,Android系统还未信任,也可能是服务器使用的是自签名证书(这个在测试阶段经常遇到)。   ...(4) Android上TLS版本兼容问题   之前在接口联调的过程中,测试那边反馈过一个问题是在Android 4.4以下的系统出现HTTPS请求不成功而在4.4以上的系统上却正常的问题。...但是实际上在API 20+以上才默认开启,4.4以下的版本是无法使用TLS1.1和TLS 1.2的,这也是Android系统的一个bug。   ...(1) 整体结构   不管是使用自签名证书,还是采取客户端身份验证,核心都是创建一个自己的KeyStore,然后使用这个KeyStore创建一个自定义的SSLContext。整体类图如下: ?...(自定义信任的证书集合,并使用客户端证书) makeContextToTrustAll (信任所有的CA证书,不安全,仅供测试阶段使用) (2) 单向验证并自定义信任的证书集合   在App中,把服务端证书放到资源文件下

    3.8K40
    领券