带你开发类似Pokemon Go的AR游戏(1)
来源:互联网 发布:刚开的淘宝店铺如何运营 编辑:程序博客网 时间:2024/06/02 11:57
-- 作者 谢恩铭 转载请注明出处
Pokemon Go, 译名"精灵宝可梦":
任天堂联手Google等公司开发的AR(增强现实)手游,简单的说就是可以让你用移动设备在全世界(除了我们伟大的祖国和一些国家…)地图上抓虚拟的宠物小精灵。
近日, Pokemon Go的热潮还在继续,虽然没有之前那么火爆,但我身边好几个朋友和同事都开始玩这款游戏了。
我没玩过这款游戏,看过别人玩。我对AR和VR技术感兴趣,而不是游戏本身。
我才知道,之前法国的App Store还没有正式上架这款游戏。所以法国人还玩不到这款游戏。当然了,在法国的中国人都知道可以去其他渠道下载,但法国人不知道(是蠢萌吗?:P)。
昨天我心血来潮,想着:这Pokemon Go到底是什么游戏引擎开发的呀?就去网上查了一下。
原来这款火遍全球,拉动任天堂股价好多亿的游戏是Unity 3D开发的,搭配其他SDK,比如地图,AR,坐标转换等。
因此,我很想自己也来做一个简易的Pokemon Go的小游戏,可以有一只精灵在手上飞舞。如下图这样, 会扇动翅膀的:
要做这样一个小游戏不是很难。我会带大家做一个,今天先把游戏开发环境搭建起来,下载所用素材。下一课就可以开发啦, 之后会把项目开源在我的Github上。
说起Unity 3D,我还是挺有感情的。
Unity 3D是一个著名的游戏引擎,它很年轻,但已享誉世界。
当然了,我绝对不希望大家沉迷游戏。可以看我之前的文章:【现身说法】玩游戏不如自己开发游戏
全球有不少游戏是用Unity 3D开发的,例如著名的暴雪的《炉石传说》,《跑跑卡丁车》手机版,《神庙逃亡 2》,《愤怒的小鸟 2》,还有《坎巴拉太空计划》等, 再到现在的Pokemon Go。
2013年我第一次接触Unity 3D,那是参加Intel(英特尔)携手CSDN举办的Perceptual Computing Challenge(感知计算大赛),比赛在全球还是引起了很大反响。
我用Unity 3D结合英特尔的感知摄像头和感知计算SDK, 开发了一个模仿Fruit Ninja(水果忍者)的游戏, 那时我还太稚嫩(现在也没好到哪里去好嘛), 没有获奖。源码在这个链接 https://github.com/frogoscar/MyFruitSlasher_20130923_final, 不过因为要安装2013年那时的Interl感知SDK, 还需要NGUI, 要运行还需要Intel感知摄像头(那时候比赛第一阶段结束后被选上, Intel免费寄来的), 所以早都不更新了, 大家就吐槽一下就好了, 哈哈。
现在回头看看,那时候一些优秀参赛者开发的游戏就类似AR(增强现实)。
大家可以参看这个链接, 是获奖选手或队伍的Showcase()
https://software.intel.com/sites/campaigns/perceptualshowcase/winners.htm
例如:
获得游戏组第一名的是来自中国的参赛队(为国争光了),他们开发了一个霸王龙养成游戏:
https://software.intel.com/sites/campaigns/perceptualshowcase/arpedia.htm
有意思哦!
Unity 3D的优势是开发上手很快, 我2014年和一个在法国的朋友一起用Unity 3D制作了几个手游, 可以看游戏蛮牛的这个链接 http://www.manew.com/thread-19397-1-1.html, 是对我们的报道。我们还自己组建了小小的工作室, 可惜后来朋友回国发展了, 就没有继续开发游戏。
我在2014年用的Unity 3D还是4.5.x版本, 后来Unity 3D 5震撼登场, 可惜我没继续开发游戏。而是把时间用在Linux嵌入式和Android开发学习上。
为什么说Pokemon Go是Unity 3D开发的呢? 可以来启动游戏看一下, 首先是Nuantic的Splash界面:
各位Pokemon Go的玩家很熟悉吧~
而后有个一闪而过, 可能大家忽略的启动画面, 就是表明这款游戏是用Unity 3D打造的(made with Unity就是英语“用Unity来制作”的意思):
哈哈, 看到Unity 3D的Logo了。
那么我们的AR小游戏的开发环境都需要些什么呢?
- Unity 3D: 必备啦, 最新版是5.4.0f3
- 一款AR引擎: 只要适配Unity 3D, 都可以
- 素材: 提供了, 当然你也可以自己设计制作
安装Unity 3D
Unity 3D可以安装在Windows, Mac OS X或Linux中, 但是对Linux支持貌似还不是很好, 官网没给出Linux的个人版下载链接(当然了, 你可以自己百度或Google, 有Linux的版本的)。
我们下载个人版(免费, 其他都老贵了)的Unity 3D:
下载链接: https://store.unity.com/download?ref=personal
请适配你的操作系统版本, 例如Windows 32位版请安装32位的Unity 3D。
下载后安装, 就和安装QQ什么的没太大区别, 不过最好不要装在Windows的C盘, 因为Unity 3D很大, 有好几个GB。
安装AR引擎SDK
安装Vuforia (它目前刚发布的6.0版新增了支持64位的Windows版Unity 3D。Mac OS X版的Unity 3D倒是64位和32位都可以...)
https://developer.vuforia.com/downloads/sdk
或者安装国产的EasyAR(支持64位的Windows版Unity 3D)
http://www.easyar.cn/
EasyAR实现步骤:
1,登录 http://www.easyar.cn/ ,注册帐号,点击首页导航“开发”选项(官方手册这里有个坑,没有提示点击开发...);
2,申请Licence Key,然后显示。
3,在Unity3d中导入EasyAR 项目实例(HelloAR),填入KEY。
4,导入模型,拖拽到场景。
5,替换识别图,很好找。
素材
https://pan.baidu.com/s/1hsAtABi (Pokemon模型网页版)
https://pan.baidu.com/s/1bBB5Au (喷火龙(其中的fbx文件带动画))
总结
Pokemon Go的走红大大提高了人们对于AR和VR的兴趣, 预计不久会有更多基于AR和VR的实现, 敬请期待吧~
下一课我们就来一起制作吧!
带你开发类似Pokemon Go的AR游戏(2)
我是谢恩铭,在法国巴黎奋斗的嵌入式软件工程师。
目前工作是Android嵌入式和app开发。
热爱生活, 喜欢游泳,略懂烹饪。
- 带你开发类似Pokemon Go的AR游戏(1)
- 带你开发类似Pokemon Go的AR游戏(2)
- 听说你要开发pokemon - ar游戏开发资料集合
- 从火遍全球的Pokemon GO游戏看AR(增强现实)
- AR技术应用 の 如何做一个Pokemon GO这只皮卡丘是你的吗?
- 《Pokemon Go》开发商明年将推出「哈利波特」题材AR游戏
- 【黑色科技】Pokemon Go 游戏教程
- Pokemon GO对AR行业有什么刺激
- iOS开发:Pokemon Go试玩,未越狱的iPhone伪造GPS定位信息
- Pokemon Go 教程
- Pokemon Go 反伪造GPS机制的探讨
- Pokemon Go的发家史与营销套路
- iOS 模仿Pokemon Go主页的动画Menu
- AR技术应用 の 如何做一个Pokemon GO丢出精灵球抓住皮卡丘吧!(2)
- 苹果的AR真那么高科技?带你见识这些神奇AR应用
- pokemon go 和 虚拟gps
- 带你的团队玩“杀人游戏”
- 手把手教你开发一款简单的AR软件
- Linux中比Top颜值更高的系统监控工具Glances
- 对于程序员, 为什么英语比数学更重要? 如何学习
- HDU 5691 Sitting in Line 状压dp
- 程序员如何长寿 | 从CSDN大牛博主猝死想到的
- [转] 学习React Native必看的几个开源项目
- 带你开发类似Pokemon Go的AR游戏(1)
- Mockito注解解析以及控制台打印
- C语言探索之旅 | 第一部分第四课第二章:变量的世界之变量声明
- C语言探索之旅 | 第一部分第四课第三章:变量的世界之显示变量内容
- Android探索之旅 | Android Studio配合Lint检测缺失Permission
- Android探索之旅 | Material Design学习资源
- jsonobject 取得json借点里面的字符串,jsonloader工具类的使用
- zookeeper实战与源码分析----ZooKeeper中ACL权限认证使用
- Android开源项目学习 | QKSMS短信app