麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

游戲世界之Unity3D的基礎(chǔ)認(rèn)識

2019-11-14 15:49:45
字體:
供稿:網(wǎng)友

1.寫在前面

Unity3D是由Unity Technologies開發(fā)的一個讓你輕松創(chuàng)建諸如三維視頻游戲、建筑可視化、實(shí)時三維動畫等類型互動內(nèi)容的多平臺的綜合型游戲開發(fā)工具,是一個全面整合的專業(yè)游戲引擎。Unity類似于Director,Blender game engine, Virtools 或 Torque Game Builder等利用交互的圖型化開發(fā)環(huán)境為首要方式的軟件其編輯器運(yùn)行在Windows 和Mac OS X下,可發(fā)布游戲至Windows、Mac、Wii、iphone、Windows phone 8和Android平臺。也可以利用Unity web player插件發(fā)布網(wǎng)頁游戲,支持Mac 和Windows的網(wǎng)頁瀏覽。它的網(wǎng)頁播放器也被Mac widgets所支持。

Unity3D,簡稱U3D,是德國UnityTechnologies公司所開發(fā)的中端游戲引擎。
U3D相對于虛幻3引擎,只能算是小弟級的游戲引擎,但是它在游戲制作上的高效率,以及對應(yīng)多平臺的游戲開發(fā),使得它在國外的獨(dú)立游戲制作小組中具有很高的人氣。

U3D的免費(fèi)版和專業(yè)版的區(qū)別主要在于畫面濾鏡和底層類庫的使用權(quán)限,U3D免費(fèi)版也是能制作完整游戲的,并且可以發(fā)布PC,MAC和Web平臺的游戲,移動平臺(IOS,Android)和次世代游戲機(jī)平臺(PS3,XBOX360,Wii)則需要另外的授權(quán)。
*Unity3D的開發(fā)公司和Adobe公司合作之后,從3.5版本起,U3D增加了Flash的發(fā)布功能(需另外授權(quán))。

U3D借鑒了虛幻引擎和一些大型三維動畫軟件的操作理念,因此很容易入門,并且它和其他軟件的協(xié)作會很便捷。U3D的軟件界面布局很完善,用戶可以快速的選擇一個適合自己開發(fā)習(xí)慣的窗口排序。

*如果要和三維動畫軟件做對比的話,我覺得U3D就像是Maya的軟件操作,3dsMax的功能執(zhí)行,C4D的菜單管理。
新建一個工程目錄時,為了提高場景載入速度,U3D默認(rèn)是不加載資源包的。因此用戶可根據(jù)自己的工程所需,選擇相應(yīng)的功能包。例如內(nèi)置的角色控制系統(tǒng),地形組件,天空盒,畫面濾鏡,腳本集等。
U3D的工程目錄作為資源存放的系統(tǒng)文件夾,可隨時更新和調(diào)用,相對于UDK必須提前導(dǎo)入引擎包的形式,U3D更為人性化。我們可以在U3D的工程目錄管理窗口中直接建立文件夾,用來對資源進(jìn)行存放和分類,例如:scripts(腳本),materials(材質(zhì)),meshes(網(wǎng)格),scenes(場景),textures(貼圖)等。U3D的文件會自動排列,為了保持我們建立的目錄次序,我們可以在文件名前加入下劃線,如:_ script,_material。
U3D可以建立一些基本的幾何體,但是你不能執(zhí)行建模操作,只能對他們進(jìn)行一些簡單的整體變形,所以多數(shù)的圖形元素,我們需要從外部導(dǎo)入。雖然U3D中可以創(chuàng)建并繪制地形,不過若非很平坦的地形,對于起伏強(qiáng)烈的山地,使用maya創(chuàng)建會更理想一些,因?yàn)樯婕暗劫N圖拉伸的問題。
* U3D目前還無法改變模型的軸心點(diǎn),因此需要在三維軟件中事先完成設(shè)置。
U3D的場景單位是米,而maya是厘米,因此軟件的數(shù)值上maya需要設(shè)定為100倍,才能和引擎中的場景比例匹配。例如,一個引擎中1.7M高的角色,在maya中的高度應(yīng)該是170單位(厘米)--也可以在導(dǎo)出FBX文件的時候再設(shè)置單位,或者在U3D中調(diào)整FBX文件的ScaleFactor屬性。當(dāng)然,用戶也可以自行更改maya的默認(rèn)單位,不過個人不推薦那么做,因?yàn)槌藙恿W(xué)方面的影響,建模時的一些默認(rèn)數(shù)值將會變得巨大(例如Bevel倒角功能)。
*U3D雖然單位是米,但是它默認(rèn)的ScaleFactor參數(shù)是0.01,也就是對應(yīng)的是maya中厘米;如果在Maya中使用了米為單位,導(dǎo)入U3D中時,還需要手動將ScaleFactor設(shè)置為1。
雖然U3D支持導(dǎo)入Maya特有的ma,mb或者3dsMax的Max格式文件,但是讀取會很慢,因此最適合U3D的外部導(dǎo)入3D文件格式是FBX。當(dāng)將FBX文件放于U3D工程目錄時,U3D會自動讀取FBX中包含的模型材質(zhì),并歸于一個獨(dú)立的文件夾Materials中。要注意,在U3D中拖拽貼圖到材質(zhì)球和點(diǎn)擊材質(zhì)球貼圖方框內(nèi)的select按鈕是不一樣的,前者會不斷的生成獨(dú)立的紋理增加文件量,而后者則是共用一個紋理。
*U3D3.X還無法對多個物體同時賦予相同的材質(zhì),因此在導(dǎo)入U3D前,我們應(yīng)該在Maya中將材質(zhì)分類好;還要注意模型面的法線朝向,盡量不要出現(xiàn)反面。
提示:Unity4.X版本之后可對多個物體同時賦予材質(zhì)。
當(dāng)把PRefabs預(yù)置物放入場景中,會自動形成一個類似maya渲染代理一樣的幾何體,修改這個幾何體的屬性后,點(diǎn)擊Revert可以返回初始狀態(tài);如果點(diǎn)擊Apply,會直接應(yīng)用到工程目錄的prefabs中,所有場景中的prefabs都會同時改變,因此要慎用。

Skybox天空盒的創(chuàng)建。游戲中的天空,就是一個包裹場景的幾何體貼圖。對于游戲引擎,是六張覆蓋立方體六個面的無縫天空紋理。U3D的天空盒需要和攝像機(jī)或者在渲染設(shè)置中進(jìn)行關(guān)聯(lián)。
*渲染設(shè)置中加入天空材質(zhì),可以直接在場景中看到效果;攝像機(jī)中連接天空盒,只有執(zhí)行游戲渲染時,才會在特定攝像機(jī)中看到。

U3D中有四種類型的燈光:PointLight,Spotlight,DirectionalLight,AreaLight,AmbientLight。其中,AmbientLight不是獨(dú)立的燈光元素,而是位于渲染設(shè)置中,可對場景中的背光進(jìn)行色彩調(diào)節(jié)(通常是冷色系),用于模擬環(huán)境反射光(多為天光)。方向光常用于模擬陽光,燈光的所在位置不影響照明效果,因?yàn)樗腔诔虻摹?/span>

目前U3D的光照系統(tǒng)和場景構(gòu)建元素還沒有UDK(虛幻引擎開發(fā)套件)那么豐富,因此圖形的渲染效果上自然沒有UDK出眾,不過它已經(jīng)足夠用來開發(fā)畫面強(qiáng)勁的次世代游戲,移動平臺和網(wǎng)絡(luò)游戲更不在話下。

renderPass渲染通道。在U3D中有三種重要的渲染通道,都是基于燈光材質(zhì)產(chǎn)生的。目前U3D還沒有實(shí)現(xiàn)類似maya或者UDK那樣可對材質(zhì)著色通道進(jìn)行紋理動畫連接的功能,因此用戶需要自行編寫材質(zhì),這在一定程度上限制了創(chuàng)意的發(fā)揮。

lightmass質(zhì)量的設(shè)置直接決定著游戲品質(zhì)。場景中的燈光和陰影是實(shí)時計(jì)算的,這不會應(yīng)用于游戲中,游戲會通過燈光貼圖和陰影貼圖來提高畫面的運(yùn)行效率。對于場景中靜止的物體,我們可以采用各種全局光照明來將燈光效果烘焙到模型對應(yīng)的貼圖中,這有兩種方法:一種是在繪制模型貼圖時,通過三維軟件的全局光系統(tǒng)(如FG最終聚集,GI全局照明),將燈光效果烘焙;另外就是直接在游戲引擎中烘焙(依賴于引擎的功能)。U3D的燈光系統(tǒng)并沒有UDK那么強(qiáng)悍,尤其在全局照明效果上。

OcclusionCulling是U3D中用于優(yōu)化場景顯示效率的一個功能,可以很大的降低游戲?qū)ο到y(tǒng)資源的消耗。它的原理是不繪制在攝像機(jī)范圍內(nèi)看不到的被遮擋物體。
*U3D可以針對web和移動平臺做到很大的資源優(yōu)化,這點(diǎn)是UDK不能比的。

 U3D支持多種語言編寫腳本:C#,javaScript,Boo。Javascript腳本較容易上手,常作為初學(xué)者或JavaScript編程人員的首選,不過從長遠(yuǎn)的擴(kuò)展來看,C#則是用戶最佳的選擇方案。當(dāng)然,你也可以在一個游戲設(shè)計(jì)過程中,同時使用幾種語言的腳本進(jìn)行組合,因?yàn)閁3D最終都會將這些語言轉(zhuǎn)為它內(nèi)置的編譯語言。

*JavaScript不是Java。

 【總結(jié)】

Unity3D具有廣闊的發(fā)展前景:通用的軟件操作規(guī)范,高效的開發(fā)速度,多平臺的支持,以及廣泛的編程語言的兼容。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 久久久久久久久成人 | av在线免费观看网 | 国产免费久久久久 | 国产88久久久国产精品免费二区 | 欧美精品18videos性欧美 | 国产视频在线播放 | 国产精品久久久久久久久久三级 | 国产噜噜噜噜久久久久久久久 | 久久精品视频1 | 亚洲国产午夜精品 | 久久中文免费 | 一级在线 | www.91视频com | 杏美月av| 久久美女色视频 | 精品久久久一 | 免费观看视频网站 | 国内自拍网址 | www深夜成人 | 久国久产久精永久网页 | 男人久久天堂 | 国产精品视频免费在线观看 | 日韩精品中文字幕一区 | 久草最新在线 | 久久毛片 | 超级av在线 | 91国内精品久久久久免费影院 | 97超碰资源站 | 手机国产乱子伦精品视频 | 欧美精品一区二区性色 | 日韩在线毛片 | 精品在线免费播放 | 欧美特级一级毛片 | 在线观看免费视频麻豆 | 青青草免费观看 | 一级在线观看 | 黄色羞羞| 久久国产亚洲精品 | 国产1区2区在线观看 | xvideos korean| 一区二区三区视频播放 |