游戲開發(fā)7天快速入門-第2天GUI圖形用戶界面和游戲?qū)ο笤斀?/h2>

寫代碼也要讀書,愛全棧,更愛生活。每日更新原創(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)端,電腦客戶端更是不在話下。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容