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

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

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

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

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

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

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

  首先,我們來說說U3D的好處。可能總結(jié)得不夠完善,如果有不足的地方,就表示我自己沒有體驗到。

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

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

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

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

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

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

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

  這里就順帶說一下三個語言的區(qū)別

  C# 這是我見過的大型項目中使用得最多的語言,也是我比較喜歡的語言。 因為它和C++很像,同時嚴(yán)格的類型和語法檢查。

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

  BOO 完全沒有使用過,貌似也很少有人使用。

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

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