[Unity][開篇]我為什么學習unity

什么是游戲引擎

“游戲引擎”就是一款游戲中一些核心的代碼。如果說一款完整的游戲是一個“人”,那么“游戲引擎”就是這個“人”的“心臟”,這個“人”在這個“心臟”的基礎上,添加上游戲場景,游戲系統,界面等等一系列東西,相當為這個“人”加上皮,肉。就這樣,一款游戲就誕生了。目前游戲引擎一般都包含以下系統:渲染引擎(即“渲染器”,含二維圖像引擎和三維圖像引擎)、物理引擎、碰撞檢測系統、音效、腳本引擎、電腦動畫、人工智能、網絡引擎以及場景管理。而cocos2dx與u3d則分別是2d與3d引擎領域的佼佼者。

cocos2dx與u3d的對比

出于實用主義的角度,出于“學什么能更快的做出更好的游戲”的角度,U3D明顯更能勝任。
出于自我積累自我提升的角度,二者各有優劣,cocos2d有助于讓你了解更多底層細節、平臺差異,并給你很多實際填坑上的參考。而Unity更有助于讓你開拓眼界,了解現代的先進生產環境,了解更具擴展性的架構設計,還可以學習3D相關知識。

我為什么學習u3d

游戲引擎的核心競爭力在哪里?在于工具鏈的完備性。現在的游戲行業上,開發效率才是王道,用好用的引擎,比競品更早發布,更快迭代,才是生存之道。

一、強大的編輯器

Unity3D具有目前幾乎最方便使用的編輯器,能夠極大的提升整個開發過程中的協作效率,策劃可以實時改變數值觀察效果,美術資源可以被更快的無縫整合。而這些東西在cocos里面是需要程序員手工實現的,而且實現出的還多是個不好用的東西。

二、組件式編程

雖然不少程序員不太適應組件式的開發思維,然而配合穩定流暢設計合理的編輯器,很多工作可以分配給策劃和美術,程序員專注于游戲邏輯。必要時通過資源商店可以購買種類豐富的插件和美術資源,甚至自己開發定制的插件,節省了寶貴的開發時間。

三、方便的跨平臺

值得一提的是直接發布webgl版本(通過il2cpp將c#字節碼編譯成c++再用emscripten將c++編譯成js),目前時髦的瀏覽器都可以直接運行,無須任何插件,這也讓adobe互聯網多媒體的霸主地位開始動搖。反觀cocos2d為了兼顧web,搞出了cocos2d-js這樣的方案,結果是花費大量精力去做到js和c++方面api的步調一致,在發布的時候發現即使在web上流暢跑起來,要發布成原生版本還是有許多坑要探索。

四、領先的3d和日漸完善的2d支持

經過10年的積累以及近幾年的高速發展,Unity的3d部分是比較成熟的,能夠滿足大部分游戲開發者的需求。配合強大的編輯器,cocos2d-x想要追趕沒那么容易。2d的支持雖然比較晚出來,但是之前的許多優秀2d插件已經證明了Unity可以勝任2d游戲制作。

五、團隊的打磨

要把自己的團隊打造成一支游戲開發團隊,而不僅僅是cocos2d團隊,團隊中的每個人也不僅僅是cocos2d開發人員,而是游戲開發者

當然,cocos和unity等等都只是標,不是本,是加分項而不是基礎分,在修好基礎分的情況下多點加分項,是對我們團隊當前來說最好的選擇。

簡書怎么插代碼塊,凌亂了。。。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 該分享僅供參考,目的是提升大家對游戲引擎方面的一些認知。文檔中部分內容收集于互聯網,若有內容不準確,還請告知。 關...
    qiyer閱讀 13,130評論 3 6
  • 111. [動畫系統]如何將其他類型的動畫轉換成關鍵幀動畫? 動畫->點緩存->關鍵幀 112. [動畫]Unit...
    胤醚貔貅閱讀 13,214評論 3 89
  • 這個是我剛剛整理出的Unity面試題,為了幫助大家面試,同時幫助大家更好地復習Unity知識點,如果大家發現有什么...
    編程小火雞閱讀 3,923評論 2 34
  • Unity技術面試題 一:什么是協同程序? 答:在主線程運行時同時開啟另一段邏輯處理,來協助當前程序的執行。換句話...
    沐冉閱讀 2,921評論 1 19
  • 戰國時期的楚國屈原在《離騷》中有這樣的詩句:“日月忽其不淹兮,春與秋其代序/惟草木之零落兮,恐美人之遲暮”,意思是...
    飛鳥集閱讀 1,411評論 0 2