寫代碼也要讀書,愛全棧,更愛生活。每日更新原創(chuàng)IT編程技術(shù)及日常實(shí)用技術(shù)文章。
我們的目標(biāo)是:玩得轉(zhuǎn)服務(wù)器Web開發(fā),搞得懂移動(dòng)端,電腦客戶端更是不在話下。
更多原創(chuàng)教程,請(qǐng)點(diǎn)擊上方關(guān)注或微信公眾平臺(tái):做全棧攻城獅。
技術(shù)交流群:高手群:538742639新手群: 572577013
本文章由做全棧攻城獅,原創(chuàng)首發(fā),如有轉(zhuǎn)載,請(qǐng)聲明出處。
WX:aiquanzhan
本教程致力于程序員可以利用unity技術(shù)快速學(xué)習(xí)和入門游戲開發(fā)。一方面通過自己的總結(jié)希望可以幫助更多熱衷與游戲開發(fā)或者編程技術(shù)開發(fā)的同仁。另一方面可以總結(jié)自己所得,提升自己。
這是游戲開發(fā)的第二篇教程文章。上一篇請(qǐng)看:Unity 3D初學(xué)入門教程,7天玩轉(zhuǎn)游戲開發(fā)VR虛擬現(xiàn)實(shí)1
上篇主要介紹了游戲開發(fā)引擎的一點(diǎn)小知識(shí)。因?yàn)槠脚_(tái)限制,總目錄請(qǐng)到公眾號(hào)回復(fù)“游戲開發(fā)目錄”獲取。
目錄
游戲?qū)ο?/p>
GUI-圖形用戶界面
游戲?qū)ο?/b>
什么是游戲?qū)ο螅亢?jiǎn)單來說,所有游戲中包含的物品都可以看成是游戲?qū)ο?。如,人,墻,怪獸等。
層次面板中中創(chuàng)建的都算是游戲?qū)ο蟮呐丁?/p>
代碼中,gameObject就是游戲?qū)ο蟆?/p>
有時(shí)需要對(duì)游戲?qū)ο筮M(jìn)行相關(guān)的設(shè)置,比如長(zhǎng)高寬等,就需要在屬性面板中設(shè)置:
但仔細(xì)看Cube對(duì)象,也就是一個(gè)正方體,發(fā)現(xiàn)是這個(gè)樣子的:
通體是白色的。但實(shí)際上游戲中的箱子是有其他的一些材質(zhì)的,比如鐵的,木頭的等等。所以怎么給箱子穿衣服:
在項(xiàng)目中,添加Textures文件夾用來存放圖片資源。導(dǎo)入圖片的話需要拖拽文件拖入:
素材準(zhǔn)備好了,直接拖放到正方形的游戲?qū)ο笊希?/p>
此時(shí) 你會(huì)發(fā)現(xiàn)Cube對(duì)象四周放上了那個(gè)圖片。
其中右側(cè)屬性面板也出現(xiàn)了:
同時(shí)項(xiàng)目中出現(xiàn)了Materials文件夾。并出現(xiàn)了一個(gè)和圖片名字一樣的文件:這就是unity根據(jù)圖片自動(dòng)生成的材質(zhì)文件。實(shí)際上cube對(duì)象應(yīng)用的是這個(gè)材質(zhì)。
同時(shí)也可以在游戲?qū)ο蟮膶傩粤斜碇锌吹骄唧w的屬性:
再次回到上次的移動(dòng)的例子,進(jìn)行移動(dòng)時(shí),對(duì)于幀率不同時(shí),其移動(dòng)的距離是不一樣的。需要解決這個(gè)問題,從而保證移動(dòng)距離一致:
Time.deltaTime表示每一幀運(yùn)行的時(shí)間。這樣一來,就保持哪怕運(yùn)行設(shè)備不一致,也可以保證移動(dòng)距離一致了。同時(shí)也可以乘以一個(gè)倍數(shù),從而增加移動(dòng)速度:
另有:
Time.time 表示游戲運(yùn)行的總時(shí)間。
可以使用print輸出時(shí)間,并在輸出窗口查看。
輸出窗口查看:
GUI-圖形用戶界面
GUI是什么?圖形用戶界面,永遠(yuǎn)停留顯示在屏幕上。主要是為了和用戶進(jìn)行交互使用的,比如:
這些角色屬性配置以及聊天界面都是GUI的范疇。其實(shí)就是我們常用的軟件的界面,包含各種控件供以使用。
因?yàn)镚UI要求一直顯示在屏幕上,所以要實(shí)現(xiàn)GUI一直顯示,一般把GUI腳本放到攝像頭或者空的對(duì)象上:
繪制一個(gè)按鈕:
把腳本拖放到攝像機(jī),并運(yùn)行,效果:
流式布局
對(duì)于按鈕,一定得有點(diǎn)擊事件?。?/p>
其他常用很多控件:
RepeatButton和Button的區(qū)別
Button只有當(dāng)鼠標(biāo)點(diǎn)擊抬起的時(shí)候,返回為true。
而RepeatButton是當(dāng)鼠標(biāo)按下的時(shí)候會(huì)不斷的返回為true。
總體而言,RepeatButton非常適合按下鼠標(biāo)時(shí),不斷進(jìn)行的操作,比如打槍發(fā)子彈。Button適合進(jìn)行點(diǎn)擊一次的時(shí)候使用。
寫代碼也要讀書,愛全棧,更愛生活。每日更新原創(chuàng)IT編程技術(shù)及日常實(shí)用技術(shù)文章。
我們的目標(biāo)是:玩得轉(zhuǎn)服務(wù)器Web開發(fā),搞得懂移動(dòng)端,電腦客戶端更是不在話下。