技術(shù)員聯(lián)盟提供win764位系統(tǒng)下載,win10,win7,xp,裝機(jī)純凈版,64位旗艦版,綠色軟件,免費(fèi)軟件下載基地!

當(dāng)前位置:主頁(yè) > 教程 > 服務(wù)器類(lèi) >

Unity3D在使用上有哪些優(yōu)點(diǎn)?

來(lái)源:技術(shù)員聯(lián)盟┆發(fā)布時(shí)間:2018-07-17 00:20┆點(diǎn)擊:

  Unity3d個(gè)人覺(jué)得網(wǎng)頁(yè)游戲,手機(jī)游戲,對(duì)于各個(gè)平臺(tái)支持都很好。并且支持flash,網(wǎng)頁(yè)運(yùn)行再也不用安裝瀏覽器插件。這塊做的不錯(cuò)。開(kāi)發(fā)人員起點(diǎn)比較低?;镜馁Y料文檔都很豐富了。缺點(diǎn)就是畫(huà)面不給力。燈光、畫(huà)面各方面在這三個(gè)引擎里都是最差的,并且對(duì)于美術(shù)人員來(lái)說(shuō),做開(kāi)發(fā)不是很好上手。很簡(jiǎn)單的一個(gè)材質(zhì)。都要去寫(xiě)shader。。

  UNITY3D現(xiàn)在已經(jīng)成為了眾多團(tuán)隊(duì)的首選3D引擎。 并且,隨著Unity3D 4.3的發(fā)布,原生的2D支持也讓人大開(kāi)眼界。雖然Unity3d的原生2D功能還有很長(zhǎng)的路要走,但也阻擋不了它稱(chēng)霸當(dāng)下。

  2011年中,公司的引擎項(xiàng)目停止之后,我的目光便轉(zhuǎn)到了U3D的身上,經(jīng)過(guò)幾番掙扎后,終于對(duì)基于組件式的對(duì)象模型有了新的認(rèn)識(shí)。 而如今,這種模式,成為了我最推崇的模式。 因?yàn)樗芙鉀Q我在設(shè)計(jì)引擎對(duì)象時(shí)的糾結(jié)。 而這些糾結(jié),是我在先前的引擎開(kāi)發(fā)中,一直不能優(yōu)雅地解決的。

  首先,我們來(lái)說(shuō)說(shuō)U3D的好處??赡芸偨Y(jié)得不夠完善,如果有不足的地方,就表示我自己沒(méi)有體驗(yàn)到。

  一、可定制的IDE環(huán)境

  U3D這種ALL IN ONE的設(shè)計(jì)思路,我在一個(gè)叫神咒的代碼中見(jiàn)到過(guò)。 集所有編輯器于一身。 雖然神咒的編輯器不能自由擴(kuò)展,但由于是公司內(nèi)部的引擎,所以,它的使用,也很方便。 比如,在場(chǎng)景中突然想要對(duì)一個(gè)模型的材質(zhì)進(jìn)行編輯,則選中此模型,右鍵,彈出材質(zhì)編輯器即可。 U3D的組件式思路,將這種關(guān)系變得更加緊密。 你都感覺(jué)不到自己在使用一個(gè)材質(zhì)編輯器。 你會(huì)覺(jué)得,你是在操作這個(gè)模型本身。 它的材質(zhì),它的碰撞器,它的對(duì)象結(jié)構(gòu)等等。

  回想一開(kāi)始進(jìn)入游戲行業(yè)的時(shí)候,天天啃著代碼。 當(dāng)時(shí)覺(jué)得代碼就是一切,各種認(rèn)為很牛X的代碼,都忍不住讀上一番。 而隨著時(shí)間的推移,特別是經(jīng)過(guò)項(xiàng)目的洗禮后。 突然發(fā)現(xiàn)編輯器是多么的重要。 就我做的第一個(gè)頁(yè)游來(lái)說(shuō),起手前兩個(gè)星期,我們就做了動(dòng)畫(huà)編輯器,場(chǎng)景編輯器。而最終證明,因?yàn)檫@兩個(gè)簡(jiǎn)陋的編輯器,使我們后面的工作變得更加容易。

  因此,一個(gè)好的引擎,必定得先有一個(gè)功能完備的編輯器。

  二、基于Mono的開(kāi)發(fā)腳本

  C/C++無(wú)疑是圖形界的寵兒,也沒(méi)有人想過(guò)用另一種語(yǔ)言來(lái)替代它。即使是U3D,亦是如此。 但是,早期使用C/C++編寫(xiě)的引擎,都理所當(dāng)然地使用C/C++來(lái)作為上層邏輯的開(kāi)發(fā)。 又有一些,采用了純腳本的模式。比如Python,LUA。 腳本的好處在于更低的編碼成本(經(jīng)過(guò)仔細(xì)研究,我發(fā)現(xiàn),這是由于寫(xiě)腳本語(yǔ)言的心態(tài)和寫(xiě)C++的心態(tài)導(dǎo)致的。 寫(xiě)C++的時(shí)候,總是想著代碼的復(fù)用度,而在腳本的時(shí)候,很多時(shí)間會(huì)認(rèn)為,這個(gè)腳本,就是為這個(gè)對(duì)象服務(wù)的,那我就按照策劃需求來(lái)寫(xiě)就可以了。 我想,這也是許多時(shí)候,腳本語(yǔ)言存在的意義。特別是早期引擎中,使用腳本來(lái)處理一些關(guān)鍵的事件響應(yīng))。 而大家熟知的虛幻引擎以及有一個(gè)名不見(jiàn)經(jīng)轉(zhuǎn)的Torque,則自己整了一套開(kāi)發(fā)語(yǔ)言。 我想,它們的目的,就是為了使大家能夠以一種更安全的方式來(lái)編程, C++一不小心,則會(huì)帶來(lái)內(nèi)存和效率問(wèn)題。 它的使用成本,人員成本其實(shí)是高于其它語(yǔ)言的。 Mono C# JS,BOO的出現(xiàn),再一次讓大家的眼睛一亮,原來(lái),引擎可以這樣整。

  Mono的橋接,使得高效的C++圖形引擎與帶GC的內(nèi)存安全語(yǔ)言進(jìn)行結(jié)合。不僅減少了安全隱患,也使得大家編寫(xiě)跨平臺(tái)代碼時(shí)更佳容易。 同時(shí),這類(lèi)語(yǔ)言的反射機(jī)制,更適合做編輯器。而比起先前的一些DIY語(yǔ)言和像LUA這樣的小巧型語(yǔ)言,Mono使腳本編程可以進(jìn)行DEBUG,而不單純的靠PRINT輸出。

  這里就順帶說(shuō)一下三個(gè)語(yǔ)言的區(qū)別

  C# 這是我見(jiàn)過(guò)的大型項(xiàng)目中使用得最多的語(yǔ)言,也是我比較喜歡的語(yǔ)言。 因?yàn)樗虲++很像,同時(shí)嚴(yán)格的類(lèi)型和語(yǔ)法檢查。

  JS 在幫一些朋友做小東西的時(shí)候,使用過(guò)這個(gè)語(yǔ)言,由于mono自帶的提示功能,寫(xiě)起來(lái)還是挺順手。 但總給我一種摸不著頭腦的感覺(jué)。 并且U3D給的JS,不是嚴(yán)格的JS,有些語(yǔ)法不支持,而有些語(yǔ)法又很特別。

  BOO 完全沒(méi)有使用過(guò),貌似也很少有人使用。

  三、基于組件的對(duì)象系統(tǒng)

  這是一個(gè)我最喜歡的系統(tǒng),我也使用irrlicht引擎山寨過(guò),山寨的過(guò)程中,幾乎看完了它的組件參考手冊(cè),使我對(duì)U3D引擎的組件系統(tǒng)又有了新的認(rèn)識(shí)。 同時(shí),目前公司自主研發(fā)的引擎,也是這樣的思想。 不管我是在工作中,還是業(yè)余搗鼓都受組件系統(tǒng)的影響。 慢慢的,喜歡上了這種對(duì)象模式。