u3d是做什么的 通過原神來(lái)看,米哈游對(duì)Unity引擎的運(yùn)用在國(guó)內(nèi)算是什么水平呢?
通過原神來(lái)看,米哈游對(duì)Unity引擎的運(yùn)用在國(guó)內(nèi)算是什么水平呢?從技術(shù)上講,它是世界頂級(jí)的。MIHA tour開發(fā)商多次參加unity開發(fā)商分享大會(huì)。事實(shí)上,使用unity作為在線系統(tǒng)幾乎是一場(chǎng)災(zāi)難。
通過原神來(lái)看,米哈游對(duì)Unity引擎的運(yùn)用在國(guó)內(nèi)算是什么水平呢?
從技術(shù)上講,它是世界頂級(jí)的。MIHA tour開發(fā)商多次參加unity開發(fā)商分享大會(huì)。
事實(shí)上,使用unity作為在線系統(tǒng)幾乎是一場(chǎng)災(zāi)難。要達(dá)到最初的在線效果,這并不是特別特別特別,幾乎相當(dāng)于重寫了網(wǎng)絡(luò)層…
在實(shí)際的游戲中,使用統(tǒng)一作為一個(gè)開放的世界,對(duì)硬件來(lái)說也是一場(chǎng)災(zāi)難。如果將點(diǎn)設(shè)置為區(qū)域1,則周圍區(qū)域?qū)⒏鶕?jù)同心圓和旋轉(zhuǎn)進(jìn)行編號(hào)。在unity中,當(dāng)您在區(qū)域1中時(shí),您已經(jīng)預(yù)加載了區(qū)域14的內(nèi)容。所以在實(shí)際的游戲過程中,大地圖幾乎不看,都很流暢。這是一個(gè)非常嚴(yán)格的硬件要求,但它是在移動(dòng)電話上實(shí)現(xiàn)的。
綜上所述,游戲的質(zhì)量是沒有評(píng)估的。但這項(xiàng)技術(shù)絕對(duì)處于頂級(jí)水平。
游戲的引擎到底是什么,它在游戲中起到什么作用?
所謂的游戲引擎,簡(jiǎn)單來(lái)說就是一套用于游戲編程的API(應(yīng)用程序編程接口)。使用游戲引擎可以簡(jiǎn)化我們的游戲編程。
為了讓您更容易理解,讓我舉一個(gè)更容易理解的類似編程示例。比如在實(shí)際編程中,我們經(jīng)常會(huì)根據(jù)需要編寫大量的函數(shù),每個(gè)函數(shù)都可以完成一定的函數(shù)。簡(jiǎn)言之,每個(gè)功能都是一個(gè)功能載體。例如,要實(shí)現(xiàn)search函數(shù),可以編寫一個(gè)bool find(string objname)函數(shù),其中包含一個(gè)參數(shù),即要搜索的對(duì)象名,并返回一個(gè)bool(logical true false)值。如果找不到對(duì)象,則返回false,否則返回true。這樣,在編程過程中,如果要判斷一個(gè)對(duì)象是否存在,只需調(diào)用這個(gè)函數(shù),大大簡(jiǎn)化了工作量。
同樣地,游戲引擎也做類似的工作。在游戲編程中,由于性能等方面的問題,很多時(shí)候需要直接訪問底層硬件,如果不使用游戲引擎,工作量相當(dāng)大,難度也很高,有時(shí)甚至無(wú)法完成。但是,使用游戲引擎,工作量大大減少,因?yàn)橛螒蛞姹举|(zhì)上是一組我們可以調(diào)用的函數(shù),它為我們封裝了底層代碼。我們不需要關(guān)心這些函數(shù)是如何實(shí)現(xiàn)的,我們只需要根據(jù)我們的需求調(diào)用相關(guān)的函數(shù)。
或使用上述搜索功能的示例進(jìn)行比較。如果要實(shí)現(xiàn)搜索,請(qǐng)調(diào)用find函數(shù)。至于find函數(shù)如何查找objname對(duì)象、使用什么算法、搜索過程中需要分配多少內(nèi)存、如何根據(jù)字符串匹配對(duì)象或者如何處理錯(cuò)誤等等,我們不需要在意。類似地,以游戲引擎為例,如果我們想在屏幕上渲染一個(gè)3D圖形,我們只需要調(diào)用引擎提供的3D渲染函數(shù)。至于如何在內(nèi)部實(shí)現(xiàn)這些3D渲染功能,以及如何在不同系統(tǒng)上快速高效地在屏幕上繪制出美觀一致的圖形,我們不需要在意。
u3d和ue4區(qū)別?
1.
U3D比UE4更容易學(xué)習(xí),經(jīng)過短期培訓(xùn)即可開發(fā),而UE4則需要幾個(gè)月甚至一年的時(shí)間。另外,U3D的教材很多,UE4目前沒有中文教材
2.
U3D的安裝和運(yùn)行都很簡(jiǎn)單,內(nèi)存很小。UE4硬件要求高,安裝使用方便
3.
U3D開發(fā)成本較低,UE4引擎需要付費(fèi)
4.
U3D發(fā)布容量小,兼容性高,更適合發(fā)布手機(jī)游戲
5。
U3D引擎功能不如UE4強(qiáng)大
6。
U3D項(xiàng)目管理比較麻煩,團(tuán)隊(duì)合作需要精確的溝通和布局
你可以理解unity是一個(gè)玩家,英文叫player-game player。游戲在玩家身上進(jìn)行。
在unity中,我們更喜歡C作為腳本語(yǔ)言。這個(gè)腳本在宿主播放器上運(yùn)行。這類似于瀏覽器上運(yùn)行的JavaScript。沒有瀏覽器,JavaScript無(wú)法運(yùn)行。
(特殊情況,如節(jié)點(diǎn).js所謂腳本不是編譯成本地機(jī)器代碼(包括Java字節(jié)碼、匯編程序等),而是由主機(jī)直接解釋,即由游戲玩家負(fù)責(zé)解釋,這使得C#與Android系統(tǒng)關(guān)系不大。
如果你不明白播放器是什么,就想想音樂播放器、視頻播放器,更合適的是早期的flash播放器。Flash播放器可以玩游戲。鼠標(biāo),鍵盤操作,腳本,都是玩家處理的。
unity player可以在windows、Android、IOS和瀏覽器上運(yùn)行。Unity負(fù)責(zé)游戲以及如何與Android系統(tǒng)交互。C#只負(fù)責(zé)以腳本形式執(zhí)行游戲邏輯。
注意:上面的討論只是一個(gè)簡(jiǎn)化,實(shí)際過程比這個(gè)復(fù)雜。例如,雖然它是一個(gè)C腳本,但它仍然涉及一些編譯工作,以及打包和壓縮工作。