1.unity項(xiàng)目的各個(gè)文件夾
文件夾名稱 | Name | 作用 |
---|---|---|
Assets | 資源文件夾 | 保存游戲中所有的資源进苍。 |
Library | 庫文件夾 | 保存當(dāng)前項(xiàng)目需要的庫文件玩敏。 |
Logs | 日志文件夾 | Unity工作過程中的日志文件 |
Packages | 包管理文件夾 | 存放工程的包配置文件和development狀態(tài)具體包 |
ProjectSettings | 項(xiàng)目設(shè)置文件夾 | 保存項(xiàng)目的設(shè)置信息。 |
Temp | 臨時(shí)文件夾 | 保存項(xiàng)目的臨時(shí)數(shù)據(jù)闯第。 |
UPM用的逢渔,類似于隔壁nuget、npm乡括、pip一樣類型的東西肃廓,包管理工具。這個(gè)目錄用來存放工程的包配置文件诲泌。和development狀態(tài)具體包盲赊。(對于不知道這玩意干嘛的情況來說,只要知道它會(huì)存放當(dāng)前工程的包配置信息就行了敷扫,可以粗略的理解為這是另一種projectsetting目錄)
關(guān)于日志文件:https://baike.baidu.com/item/日志文件/1505348?fr=aladdin
2.Unity的六個(gè)面板
面板 | Name | 作用 |
---|---|---|
Scence | 場景面板 | 用于預(yù)覽當(dāng)前的場景 |
Game | 游戲面板 | 游戲的預(yù)覽(運(yùn)行)窗口 |
Project | 項(xiàng)目面板 | 用于管理當(dāng)前項(xiàng)目中所有的資源 |
Console | 控制臺(tái)面板 | 用于輸出顯示游戲運(yùn)行過程中的調(diào)試信息 |
Inspector | 檢視(屬性)面板 | 用于查看和編輯游戲物體和項(xiàng)目資源的具體信息 |
Hierarchy | 層級面板 | 用于顯示當(dāng)前場景中的所有資源哀蘑,在這個(gè)面板中可以往場景中添加資源 |
注:
??1.可以通過 Project 面板的右上角的三條杠,選中 owe column layout / two column layout 來相應(yīng)的改變 單 / 雙 列的顯示
??2.可以通過 Unity 軟件最右上角的選項(xiàng) layout 來改變當(dāng)前的各個(gè)面板的布局葵第,里面有系統(tǒng)定義的幾個(gè)布局绘迁,或者可以自己直接拖動(dòng)面板來進(jìn)行修改。
??3.其中 Project 面板內(nèi)的 Assets:對應(yīng)該項(xiàng)目文件夾中的 Assets 文件夾卒密。所以 Project 面板相當(dāng)于在 unity 中打開的項(xiàng)目文件夾缀台。
??4.Assets 中創(chuàng)建文件夾步驟:光標(biāo)移至 Assets 上單擊右鍵,會(huì)彈出菜單-->Create-->Folder哮奇,然后改名膛腐。
??4.游戲在運(yùn)行狀態(tài)時(shí),做過的任何操作都不會(huì)被保留鼎俘。
3.Scene面板與場景
3.1.場景
3.1.1簡介
場景:是有多個(gè)游戲物體組合后的一個(gè)整體哲身。
3.1.2創(chuàng)建與保存場景
①File菜單-->New Scene或(Ctrl + N):新建場景
②File菜單-->Save Scene或(Ctrl + S):保存場景
場景的后綴為 “.unity”
3.1.3管理場景
在 Assets 文件夾中創(chuàng)建 Scene 文件夾用于管理場景文件。
3.2.Scene面板的基礎(chǔ)操作
3.2.1工具欄
界面左上角的工具欄贸伐,分別對應(yīng)鍵盤上的 Q勘天、W、E捉邢、R脯丝、T、Y歌逢。
工具欄功能如下:
手型:平移場景的觀察角度巾钉,左右上下
十字箭頭:可以按某一軸或某一平面,移動(dòng)物體的位置(箭頭:固定方向移動(dòng); 面:于該面移動(dòng))
旋轉(zhuǎn):可以旋轉(zhuǎn)物體
縮放:可以縮放物體(箭頭:按某一軸縮放秘案; 面:等比例縮放)
3.2.2 Alt 操作
Alt + 鼠標(biāo)左鍵:按照某一中心點(diǎn)砰苍,旋轉(zhuǎn)觀察角度
Alt + 鼠標(biāo)右鍵:拉遠(yuǎn)拉近
3.2.3 鼠標(biāo)功能
鼠標(biāo)左鍵:選中場景中的物體
鼠標(biāo)中鍵:按下-->平移場景的觀察角度潦匈;滾動(dòng)-->拉遠(yuǎn)拉近
鼠標(biāo)右鍵:旋轉(zhuǎn)場景的觀察角度
3.2.4 飛行模式
按下鼠標(biāo)右鍵不松開后,可以使用 w赚导、s茬缩、a、d 進(jìn)行移動(dòng)
3.2.5 Scene的觀察模式
在 Scene 面板的右上角的世界坐標(biāo)軸的下面:
??Persp:透視模式吼旧,近大遠(yuǎn)小凰锡。
??ISO:正交模式,遠(yuǎn)近一樣大圈暗,2.5D的感覺掂为。
4.Scene中物體的基礎(chǔ)操作
4.1.創(chuàng)建
在 Hierarchy 面板中右鍵 -->3D Object -->選中物體
4.2.聚焦
①在 Hierarchy 面板中左鍵單擊物體 + F
②在 Hierarchy 面板中雙擊物體
4.3.自身坐標(biāo)系與世界坐標(biāo)系
對于任意坐標(biāo)系,顏色與軸向的對應(yīng)關(guān)系一致:X(紅色)员串、Y(綠色)勇哗、Z(藍(lán)色),有顏色的均為正方向
①自身坐標(biāo)系:是以物體自身為參照的坐標(biāo)系寸齐。
②世界坐標(biāo)系:是游戲場景中的方向欲诺。在游戲場景中世界坐標(biāo)系是不會(huì)隨物體的改變而改變的。
注意:可以通過工具欄旁的“Local”渺鹦、“Global”來切換物體身上的坐標(biāo)系顯示效果扰法。其中 Local 是切換成自身坐標(biāo)系,Global 則是切換成世界坐標(biāo)系毅厚。
4.4.Pivot與Center 中心點(diǎn)工具
Center: Unity自己根據(jù)模型的mesh來計(jì)算的中心位置塞颁,與模型真實(shí)中心點(diǎn)沒關(guān)系。
Pivot: 該物體的真正中心點(diǎn)卧斟。
注意:
??①當(dāng)要改變的是模型的坐標(biāo)殴边、角度、大小珍语,指的是相對于 Pivot 進(jìn)行的操作,(選擇 Pivot 工具)
??②若操作的是多個(gè)物體竖幔。選擇 Center 工具后旋轉(zhuǎn)板乙,全部所選物體hi圍繞著 Center 中心點(diǎn)旋轉(zhuǎn)。而旋轉(zhuǎn) Pivot 工具后旋轉(zhuǎn)拳氢,每一個(gè)所選物體會(huì)圍繞著自己的真正中心點(diǎn)旋轉(zhuǎn)募逞。
??③Transform 組件的 position 屬性指的就是 Pivot 中心點(diǎn)。
4.5.等距移動(dòng)馋评、縮放放接、旋轉(zhuǎn)
按下 CTRL 不放,使用移動(dòng)工具留特,不論是上下還是左右纠脾,都是以默認(rèn)一米為單位移動(dòng)的玛瘸。
按下 CTRL 不放,使用縮放工具苟蹈,都是以默認(rèn)0.1倍為單位移動(dòng)的糊渊。
按下 CTRL 不放,使用旋轉(zhuǎn)工具慧脱,不論是上下還是左右渺绒,都是以默認(rèn)15°為單位旋轉(zhuǎn)的。
如果要修改默認(rèn)值也可以菱鸥,在 Edit 菜單--> Snap setting
注意:unity中的 Cube 物體的邊長為1米宗兼。
4.6.頂點(diǎn)吸附功能
①選中物體后,在工具欄選擇移動(dòng)工具
②按下鍵盤 V 鍵不放
③鼠標(biāo)移到該物體所要吸附的頂點(diǎn)后氮采,按下左鍵不放
④移動(dòng)鼠標(biāo)针炉,將物體移動(dòng)到所要吸附物體的頂點(diǎn)
5.3D物體
5.1.材質(zhì)球與貼圖
5.1.1.介紹
材質(zhì)球:Material ,物體的質(zhì)地扳抽,物體看起來是什么做的篡帕。
貼圖:Texture,用于材質(zhì)球的顯示贸呢,相當(dāng)于給物體套層皮镰烧。
5.1.2. 管理材質(zhì)球與貼圖
在Assets 中創(chuàng)建 “Materials” 文件夾,用于管理材質(zhì)球楞陷。
在Assets 中創(chuàng)建 “Textures” 文件夾怔鳖,用于管理貼圖。
材質(zhì)球文件的后綴是“.mat”固蛾。
5.1.3.創(chuàng)建與使用
①創(chuàng)建
在 Hierarchy面板里的 Assets 文件夾中的 Materials 文件夾上结执,右鍵彈出菜單->Create->Material 。
②編輯
①在 Hierarchy 面板中鼠標(biāo)選中需要編輯的材質(zhì)球艾凯;
②點(diǎn)擊“Albedo”前的圓點(diǎn)献幔,在彈出的“貼圖選擇界面”選擇需要的材質(zhì);
Albedo: 紋理貼圖(漫反射貼圖)
③使用
①將材質(zhì)球拖拽到 Hierarchy 面板上相應(yīng)的物體上趾诗;
②將材質(zhì)球拖拽到 Scene 面板上相應(yīng)的物體上蜡感。
④Shader
Shader:著色器。
通過著色器來編輯材質(zhì)球的效果恃泪。
5.2.父子關(guān)系
5.2.1.原則
- 移動(dòng)父親郑兴,兒子會(huì)跟著移動(dòng),就像移動(dòng)電腦上的一個(gè)文件夾贝乎,文件夾中的資源會(huì)跟著一塊移動(dòng)一樣情连。
- 在 Hierarchy 面板中,任意兩個(gè)物體都可以建立父子關(guān)系览效。
5.2.2.如何建立父子關(guān)系却舀?
①在 Hierarchy 面板中虫几,將選中的(子)物體拖到(父)物體中。
②在 Hierarchy 面板中禁筏,選中(父)物體后持钉,右鍵create一個(gè)新(子)物體,將自動(dòng)建立父子關(guān)系
5.3.預(yù)制體
5.3.1簡介
預(yù)制體(Perfabs):預(yù)先準(zhǔn)備好的物體篱昔,可以拿來重復(fù)利用每强。
5.3.2.管理
在 Assets 文件夾中建立 "Perfabs"文件夾用于管理。
5.3.3.創(chuàng)建
直接從 Hierarchy 面板里將要?jiǎng)?chuàng)建成預(yù)制體的物體拖拽到 Project 面板的 Perfabs 文件夾里州刽。
預(yù)制體的后綴為 “.prefab”空执。
5.3.4.使用
①將預(yù)制體直接拖拽到 Hierarchy 面板;
②將預(yù)制體直接拖拽到 Scene 面板;
都可以在場景中創(chuàng)建一個(gè)相應(yīng)的物體。
5.3.5.預(yù)制體與非預(yù)制體的區(qū)別
①非預(yù)制體的名字是黑色蔚袍,預(yù)制體名字是藍(lán)色捕儒;
②在 Inspector 面板并徘,非預(yù)制體是圖標(biāo)顏色是白色的,預(yù)制體的圖標(biāo)是藍(lán)色的。
③在 Inspector 面板,預(yù)制體比非預(yù)制體多了一個(gè) “Prefab 選項(xiàng)”默蚌。
5.3.5.預(yù)制體的好處
只要編輯其中的一個(gè),然后在 Inspector 面板中的 Prefab 選項(xiàng)里點(diǎn)擊 Overrides-->“Apply All”苇羡,所有的同類預(yù)制體都會(huì)改變绸吸。包括場景中的所有同類預(yù)制體和 Perfabs 文件夾內(nèi)的同類預(yù)制體。
6.物體與Transform組件
6.1.物體與組件的關(guān)系
組件:Component设江,游戲物體的組成零件锦茁。
在 Inspector 面板中就有一部分組件。而每一個(gè)物體包括 Light 和 Camera 都是由一個(gè)個(gè)組件構(gòu)成的叉存。而這些組件就在 Compone 菜單內(nèi)码俩。
6.1.1.添加
1.在 Hierarchy 面板中選中物體后,點(diǎn)擊 Component 菜單->選擇組件
2.在 Hierarchy 面板中選中物體后鹉胖,在 Inspector 面板中找到最下方的 Add Component 點(diǎn)擊后搜索并添加握玛。
6.1.2.移除
在 Hierarchy 面板中選中物體后,在 Inspector 面板中找到組件后甫菠,左鍵單擊右側(cè)的齒輪 或 右鍵彈出菜單 --> Remove Component
6.1.3.禁止與選用
點(diǎn)擊在組件名字前的方框(復(fù)選項(xiàng)), 進(jìn)行切換冕屯。
6.1.4重置
在 Hierarchy 面板中選中物體后寂诱,在 Inspector 面板中找到組件后,左鍵單擊右側(cè)的齒輪 或 右鍵彈出菜單 --> Reset
6.1.5使用組件方法
方法 | 作用 |
---|---|
gameObject.GetComponent < 組件 >(); | 獲取相應(yīng)組件的引用安聘。并返回該組件類型的值 |
使用腳本所在物體身上的某一個(gè)組件方法的時(shí)候痰洒,要先查找該游戲物體身上該組件瓢棒,然后返回該組件類型的字段,要用同類型的字段保存丘喻。
注意: 該字段要先被賦值脯宿,比如:
Transform字段 = gameObject.GetComponent<Transform>();
6.2.Transform組件
6.2.1.簡介
6.2.2.屬性
屬性 | 作用 |
---|---|
Position | 位置 |
Rotation | 旋轉(zhuǎn) |
Scale | 縮放 |
6.2.3.基礎(chǔ)的方法
1.方法
方法 | 作用 |
---|---|
Transform字段.Translate(Vector3, Space); | 按照某一坐標(biāo)系沿著某一方向移動(dòng)物體的位置。通過直接修改坐標(biāo)泉粉,所以會(huì)發(fā)生穿模连霉。 |
- 相關(guān)參數(shù)
Vector3(構(gòu)造體):三維向量。
向量嗡靡,可以表示一個(gè)方向跺撼,也可以表示一個(gè)位置。
比如 Vector3.forward
向前走讨彼,速度為每秒一米
如何調(diào)整速度:在方向后加上* 幾倍
歉井,不允許使用 double類型,因?yàn)閐ouble無法隱式轉(zhuǎn)換成 float 哈误,但是 int 可以哩至,所以如果是0.5倍,就要寫成 * 0.5f
蜜自,每秒半米菩貌。
Space[enum]:空間。是一個(gè)枚舉類型袁辈。有以下兩個(gè)枚舉值菜谣。
Space.Self:表示物體自身的坐標(biāo)系。
Space.World:表示物體所在的世界坐標(biāo)系晚缩。
7.腳本
7.1. 是什么?
腳本:Scrpit尾膊,用于控制游戲的邏輯。
7.2. 管理
在Assets 文件夾中創(chuàng)建 “Scripts” 文件夾荞彼,管理腳本資源冈敛。
7.3. 創(chuàng)建
在Assets 文件夾上右鍵-->Create-->C# Script,馬上改名鸣皂。
C# 腳本文件的后綴是“.cs”抓谴。
7.4. 簡介
Start()方法: 當(dāng)游戲運(yùn)行起來,就會(huì)馬上執(zhí)行寞缝,且只執(zhí)行一次癌压。
Update()方法: 循環(huán)調(diào)用,每幀調(diào)用一次荆陆。一秒鐘大概執(zhí)行60 次滩届。
幀:我們的游戲畫面是在不停的刷新的,每刷新一次被啼,就是一幀帜消。
輸出調(diào)試的方法:Debug.Log ();
Start()和Update()方法都是Unity3D 內(nèi)部的“事件方法”棠枉,不需要我們?nèi)斯ふ{(diào)用,系統(tǒng)會(huì)自動(dòng)調(diào)用和管理這些“事件方法”泡挺。且這兩個(gè)方法的返回值均為空(void)
7.5. 使用腳本
①直接將腳本拖拽到 Hierarchy 面板上物體身上辈讶;
②直接將腳本游戲物體的 Inspector 面板上;
只要運(yùn)行游戲娄猫,腳本就會(huì)執(zhí)行贱除。
8.Console 面板
Console:控制臺(tái)。用于輸出顯示游戲運(yùn)行過程中的調(diào)試信息稚新。
功能按鈕:
Clear:清除功能勘伺,清除控制臺(tái)中的全部信息;
Collapase:折疊功能褂删,將相同的內(nèi)容合并成一條顯示飞醉,更新后面的數(shù)字;
Clear on Play:游戲每次運(yùn)行時(shí)自動(dòng)清除上一次運(yùn)行的內(nèi)容屯阀;
9. 鼠標(biāo)鍵盤輸入
9.1.獲取鍵盤輸入
- 相關(guān)方法
方法 | 作用 |
---|---|
Input.GetKey(KeyCode.索引碼); | 按下某鍵后缅帘,持續(xù)返回true |
Input.GetKeyDown(KeyCode.索引碼); | 按下某鍵的一瞬間,返回true |
Input.GetKeyUp(KeyCode.索引碼); | 抬起某鍵的一瞬間难衰,返回true |
返回值:bool 類型
參數(shù):KeyCode.索引碼 比如KeyCode.A
鍵盤上的A
KeyCode是一個(gè)枚舉類型(Enum)
KeyCode:鍵碼钦无,保存了鍵盤按鍵“索引碼”。
9.2.獲取鼠標(biāo)輸入
- 相關(guān)方法
方法 | 作用 |
---|---|
Input.GetMouseButton(值); | 按下某鍵后盖袭,持續(xù)返回true |
Input.GetMouseButtonDown(值); | 按下某鍵的一瞬間失暂,返回true |
Input.GetMouseButtonUp(值); | 抬起某鍵的一瞬間,返回true |
返回值:bool 類型
參數(shù):鼠標(biāo)按鍵索引值鳄虱,0->左鍵弟塞, 1->右鍵, 2->中鍵拙已。
比如Input.GetMouseButtonDown(0);
表示左鍵按下時(shí)一瞬間返回true