作者 謝恩銘,公眾號「程序員聯盟」(微信號:coderhub)。
轉載請注明出處赞别。
原文:http://www.reibang.com/p/cc615cce0576
這一課內容實在太多焦履,如果寫成文章,我需要截圖幾百張视卢,因此我把這套課程錄制成了視頻教程踱卵,發(fā)布在慕課網上,完全免費:http://www.imooc.com/learn/844
前言
Pokemon Go, 譯名"精靈寶可夢":
對于Pokemon Go据过,大家應該不陌生惋砂,是「口袋怪獸」的意思,之前火爆全球绳锅。由 Niantic Labs 這個 Google 旗下的公司開發(fā)西饵,聯合任天堂等公司制作發(fā)行。
這款游戲的下載量在 App Store 和 Android 的 Google Play 上都達到上億次鳞芙。任天堂股價更是大漲了幾百億美元眷柔。
這個游戲簡單的說就是可以讓你用移動設備在全世界(除了我們偉大的祖國和一些國家…)地圖上抓虛擬的寵物小精靈期虾。
近日, Pokemon Go的熱潮還在繼續(xù),雖然沒有之前那么火爆驯嘱,但我身邊好幾個朋友和同事都開始玩這款游戲了镶苞。
我沒玩過這款游戲,看過別人玩宙拉。我對AR和VR技術感興趣宾尚,而不是游戲本身。
我才知道谢澈,之前法國的App Store還沒有正式上架這款游戲煌贴。所以法國人還玩不到這款游戲。當然了锥忿,在法國的中國人都知道可以去其他渠道下載牛郑,但法國人不知道(是蠢萌嗎?:P)敬鬓。
昨天我心血來潮淹朋,想著:這Pokemon Go到底是什么游戲引擎開發(fā)的呀?就去網上查了一下钉答。
原來這款火遍全球础芍,拉動任天堂股價好多億的游戲是Unity 3D開發(fā)的,搭配其他SDK数尿,比如地圖仑性,AR,坐標轉換等右蹦。
自己動手
因此诊杆,我很想自己也來做一個簡易的Pokemon Go的小游戲,可以有一只精靈在手上飛舞何陆。如下圖這樣, 會扇動翅膀的:
要做這樣一個小游戲不是很難晨汹。我會帶大家做一個,今天先把游戲開發(fā)環(huán)境搭建起來贷盲,下載所用素材淘这。下一課就可以開發(fā)啦, 之后會把項目開源在我的Github上。
說起Unity 3D晃洒,我還是挺有感情的慨灭。
Unity 3D是一個著名的游戲引擎,它很年輕球及,但已享譽世界氧骤。
當然了,我絕對不希望大家沉迷游戲吃引〕锪辏可以看我之前的文章:【現身說法】玩游戲不如自己開發(fā)游戲
全球有不少游戲是用Unity 3D開發(fā)的刽锤,例如著名的暴雪的《爐石傳說》,《跑跑卡丁車》手機版朦佩,《神廟逃亡 2》并思,《憤怒的小鳥 2》,還有《坎巴拉太空計劃》等, 再到現在的Pokemon Go语稠。
2013年我第一次接觸Unity 3D宋彼,那是參加Intel(英特爾)攜手CSDN舉辦的Perceptual Computing Challenge(感知計算大賽),比賽在全球還是引起了很大反響仙畦。
我用Unity 3D結合英特爾的感知攝像頭和感知計算SDK, 開發(fā)了一個模仿Fruit Ninja(水果忍者)的游戲, 那時我還太稚嫩(現在也沒好到哪里去好嘛), 沒有獲獎输涕。源碼在這個鏈接 https://github.com/frogoscar/MyFruitSlasher_20130923_final, 不過因為要安裝2013年那時的Interl感知SDK, 還需要NGUI, 要運行還需要Intel感知攝像頭(那時候比賽第一階段結束后被選上, Intel免費寄來的), 所以早都不更新了, 大家就吐槽一下就好了, 哈哈。
現在回頭看看慨畸,那時候一些優(yōu)秀參賽者開發(fā)的游戲就類似AR(增強現實)莱坎。
大家可以參看這個鏈接, 是獲獎選手或隊伍的 Showcase (展示場所):
https://software.intel.com/sites/campaigns/perceptualshowcase/winners.htm
例如:
獲得游戲組第一名的是來自中國的參賽隊(為國爭光了),他們開發(fā)了一個霸王龍養(yǎng)成游戲:
https://software.intel.com/sites/campaigns/perceptualshowcase/arpedia.htm
有意思哦!
Unity 3D的優(yōu)勢是開發(fā)上手很快, 我2014年和一個在法國的朋友一起用Unity 3D制作了幾個手游, 可以看游戲蠻牛的這個鏈接 http://www.manew.com/thread-19397-1-1.html, 是對我們的報道寸士。我們還自己組建了小小的工作室, 可惜后來朋友回國發(fā)展了, 就沒有繼續(xù)開發(fā)游戲檐什。
我在2014年用的Unity 3D還是4.5.x版本, 后來Unity 3D 5震撼登場, 可惜我沒繼續(xù)開發(fā)游戲。而是把時間用在Linux嵌入式和Android開發(fā)學習上弱卡。
為什么說Pokemon Go是Unity 3D開發(fā)的呢? 可以來啟動游戲看一下, 首先是Niantic的Splash界面:
各位Pokemon Go的玩家很熟悉吧~
而后有個一閃而過, 可能大家忽略的啟動畫面, 就是表明這款游戲是用Unity 3D打造的(made with Unity就是英語“用Unity來制作”的意思):
哈哈, 看到Unity 3D的Logo了乃正。
那么我們的AR小游戲的開發(fā)環(huán)境都需要些什么呢?
- 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
請適配你的操作系統(tǒng)版本, 例如Windows 32位版請安裝32位的Unity 3D婶博。
下載后安裝, 就和安裝QQ什么的沒太大區(qū)別, 不過最好不要裝在Windows的C盤, 因為Unity 3D很大, 有好幾個GB烫葬。
安裝AR引擎SDK
安裝Vuforia (它目前剛發(fā)布的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/ ,注冊帳號垢箕,點擊首頁導航“開發(fā)”選項(官方手冊這里有個坑划栓,沒有提示點擊開發(fā)...);
2条获,申請Licence Key忠荞,然后顯示。
3帅掘,在Unity3d中導入EasyAR 項目實例(HelloAR)委煤,填入KEY。
4修档,導入模型碧绞,拖拽到場景。
5吱窝,替換識別圖讥邻,很好找迫靖。
素材
https://pan.baidu.com/s/1qYlVSPe (皮卡丘模型)
https://pan.baidu.com/s/1bBB5Au (噴火龍(其中的fbx文件帶動畫))
我也把皮卡丘和噴火龍的素材上傳到了我的 Github 賬戶,地址是:https://github.com/frogoscar/pokemon_ar
總結
Pokemon Go的走紅大大提高了人們對于AR和VR的興趣, 預計不久會有更多基于AR和VR的實現, 敬請期待吧~
下一課我們就來一起制作吧!
我是 謝恩銘兴使,公眾號「程序員聯盟」(微信號:coderhub)運營者系宜,慕課網精英講師 Oscar 老師,終生學習者发魄。
熱愛生活盹牧,喜歡游泳,略懂烹飪励幼。
人生格言:「向著標桿直跑」