AR技术应用 の 如何做一个Pokemon GO这只皮卡丘是你的吗?
来源:互联网 发布:《算法》pdf 编辑:程序博客网 时间:2024/05/18 22:08
火红火热的Pokemon GO在中国被锁啦!
只好自己动手做一个吧:)
思路:当镜头在向着地面的时候,开始寻找皮卡丘,一定时间之后皮卡丘根据角度出现在镜头里。
使用引擎:Unity3D 语言:c# AR-SDK:vuforia
1.首先打开unity创建一个AR项目,使用的AR引擎是Vuforia。
官网使用教程:https://developer.vuforia.com/support
中文教程:http://www.manew.com/thread-92723-1-1.html?_dsign=51711fb9
2.导入vuforia包,把预设里的ARCamera拉入场景中,把皮卡丘模型放在ARCamera下的Camera下面,以此跟踪摄像头。
3.为了使皮卡丘真实的出现在“现实”中,我们要先确保其出现在地面,例如桌面、地上,而不是天花板。。所以我们用到手机陀螺仪功能,判断角度是否向下。
①设置镜头跟随螺旋仪旋转
②在Update判断ARCamera是否向下,即三维世界的0~60度内
void Update () { if(camRotation.transform.eulerAngles.x > 0 && camRotation.transform.eulerAngles.x < 60) { Debug.Log("角度正确"); } if(camRotation.transform.eulerAngles.x < 0 || camRotation.transform.eulerAngles.x > 60) { Debug.Log("角度不对"); }}
4.然后要先隐藏皮卡丘,当其出现的时候,不是直接跟随镜头,而是让手机在旋转的同时皮卡丘会被移出镜头范围内。
①在皮卡丘出现的时候,使其脱离ARCamera,并显示出来。
②当摄像头向下的时候,旋转皮卡丘一定角度,使其有看着玩家的感觉。
public GameObject camRotation;//ARCamera摄像头角度 void 发现皮卡丘(){ gameObject.transform.parent = null; gameObject.SetActive(true); gameObject.transform.Rotate(new Vector3(camRotation.transform.eulerAngles.x + this.transform.eulerAngles.x ,this.transform.eulerAngles.y,this.transform.eulerAngles.z)); }
放上APK试玩:http://pan.baidu.com/s/1o84cEdO
------------End-----------
0 0
- AR技术应用 の 如何做一个Pokemon GO这只皮卡丘是你的吗?
- AR技术应用 の 如何做一个Pokemon GO丢出精灵球抓住皮卡丘吧!(2)
- 带你开发类似Pokemon Go的AR游戏(1)
- 带你开发类似Pokemon Go的AR游戏(2)
- 皮卡丘是如何发电的?
- AR--AR 小应用究竟是如何实现的
- 从火遍全球的Pokemon GO游戏看AR(增强现实)
- Pokemon GO对AR行业有什么刺激
- 盘点20款让你脑洞大开的AR技术应用
- 听说你要开发pokemon - ar游戏开发资料集合
- 做技术的你是如何平衡工作与生活的?
- 做技术的你是如何平衡工作与生活的?
- 做技术的你是如何平衡工作与生活的?
- 在制作一个Web应用或Web站点的过程中,你是如何考虑他的UI、安全性、高性能、SEO、可维护性以及技术因素的?
- 你是如何看待技术的
- 怎样从头制作一个实时 pokemon go 地图?
- 《Pokemon Go》开发商明年将推出「哈利波特」题材AR游戏
- 如何做一个只搜索本网站的引擎
- Aandroid:Error:Execution failed for task ':app:processDebugResources'. 的解决办法
- div填充整个页面
- UVALive 7374 Racing Gems - dp,最长上升子序列
- Linux命令和shell编程学习--14章呈现数据
- oracle笔记2
- AR技术应用 の 如何做一个Pokemon GO这只皮卡丘是你的吗?
- 【mysql】order by limit分页数据重复问题
- iOS蓝牙录音
- JZOJ.4714【NOIP2016提高A组模拟8.19】公约数
- Rails中的config.assets.debug配置项
- 找到图中最小有向圈的一个时间复杂度为O(mn)的算法
- 写一个程序,从文件(c:\test.txt)中查出字符串”mobnet”出现的次数?
- 数据对接中的安全性保证及接口设计
- poj3292 Semi-prime H-numbers