火红火热的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下面,以此跟踪摄像头。

Paste_Image.png

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

源码:https://download.csdn.net/download/u014528558/12552261
------------End-----------

AR技术应用 の 如何做一个Pokemon GO这只皮卡丘是你的吗?相关推荐

  1. [转载]如何做一个出色的程序员

    爱这行!!!        从事任何行业都一样,只有真正的爱上了这份工作,才会投入热情,才会在顺境中自我警醒,在逆境中寻找突破.这个行业的竞争很激烈,你停下来走,别人就立刻会跑步超过你,没有对这一行业 ...

  2. 我们怎样才能学会?做一个学者或学生?

    今天我们来谈的话题是"学习".本文的部分构成素材来自网友:"lesini" (乐死你?还是累死你?). 我们从出身到将来多年后的"走人",每 ...

  3. 我们该怎么学习?做一个学者还是习者?

    今天我们来谈的话题是"学习".本文的部分构成素材来自网友:"lesini" (乐死你?还是累死你?). 我们从出身到将来多年后的"走人",每 ...

  4. 玩过八音符游戏吗?今天教大家用python做一个八音符游戏

    先来看一下效果图: 需要用到的东西 Python3.6 cocos2d模块 pyaudio模块 以及一些Python自带的模块 cocos2d模块用于搭建游戏框架 pyaudio模块用于获得麦克风的声 ...

  5. 整活~使用webAI做一个网页AR吃豆人小游戏

    一个好习惯,先给结论 使用网页端深度学习框架识别人脸,做一个AR吃豆人小游戏.吃豆人会随着人脸在镜头内的移动而移动,吃完全部豆子即为获胜. 在线体验地址:点我预览 代码地址:点我github 本文首发 ...

  6. Pokemon Go:AR技术的成功应用

    Pokemon Go:AR技术的成功应用 随着智能手机和AR技术的不断发展,AR游戏成为了一种受欢迎的娱乐方式.最著名的AR游戏之一就是Pokemon Go,这款游戏在2016年发行后迅速走红,吸引了 ...

  7. 小雷郑重承诺:在2017年之前,对大学毕业4年以来的所有努力和探索,做一个全面客观的总结,技术研究、工作创业、投资理财、朋友感情等...

    又是新的一年,祝各位上班族,开工大吉. 祝各位朋友,身体健康,开开心心赚钱过日子. 回家过了12天,经历了一些事情,放佛过了好久好久,有几年的样子. 回首过去,惨惨的,真的很惨.一点拿得出手的成绩和成 ...

  8. 做一个像Keras在线技术文档(Sphinx + GitHub + Read the Docs)

    之前看到Keras的中文文档十分心动也想自己做一个,最终被我做成了.这里写一下制作流程. 制作效果感觉还是不错的 链接:https://opencv-learning.readthedocs.io/z ...

  9. 对linux做一个简单介绍,对“Fork”做一个技术方面的简介

    使用过 GitHub 的人大多知道它上面有个"Fork"的功能,用来将某个仓库克隆到你的账户之下,从而可以对其进行修改.衍生,也可以比较方便的将你的修改推回到原来的仓库(所谓的上游 ...

  10. python自己做个定时器_技术图文:如何利用 Python 做一个简单的定时器类?

    原标题:技术图文:如何利用 Python 做一个简单的定时器类? 背景 今天在B站上看有关 Python 最火的一个教学视频 -- "零基础入门学习 Python",这也是我们 P ...

最新文章

  1. java在线编程题_阿里笔试题(2017在线编程题)-- 数串分组 --Java实现
  2. C和C++中struct和typedef struct的异同
  3. 站点安全预警,建议大家多重禁止load_file函数!
  4. linux操作常用命令
  5. java mongodb 聚合函数_MongoDB的聚合函数 Aggregate
  6. 医药行业进销存软件 零售药店管理软件
  7. 盘点2021年10个顶级数据分析软件,及优缺点对比
  8. URI与URL的区别
  9. java绘图-常用条形码类型组成及使用说明
  10. 玩转手机摄影 oeasy教程总结
  11. restTemplate访问接口
  12. 使用RAD Studio 10 Seattle创建自定义按钮样式
  13. 1296: 植树问题(C语言)
  14. 二叉树的前序遍历(Java)
  15. Facebook个人账号相关问题?
  16. Android 获取android密钥哈希码(keytool -exportcert -alias openssl sha1 -binary | openssl base64)
  17. 服务器所属文件变成nobody,NFS(expirtfs命令,NFS客户端创建新文件所属组和所属主都为nobody)(示例代码)...
  18. [深度概念]·简述人脸识别开发原理
  19. 前端页面使用的icon图标
  20. zabbix系列:解决The frontend does not match Zabbix database.

热门文章

  1. python 爬虫1
  2. 【MME】云CloudMain
  3. Ubuntu18.04开机自动开启小键盘
  4. R中怎么做加权最小二乘_R方的理解与用法
  5. hadloop大数据平台论文_基于Hadoop的大数据解决方案的设计及应用
  6. 一起来自制水果甜品吧
  7. 用matlab四边形中心,matlab4
  8. 如何快速合并PDF文件?几个方法教你合并PDF
  9. oracle latch等待,latch等待事件汇总
  10. android技术交流群 付费群,QQ群付费入群功能停止服务是怎么回事?QQ付费入群功能停止服务详情一览[多图]...