【Unity 3D 遊戲開發】Unity3D 入門
一. 工作區域詳解
1. Scence檢視 (場景設計面板)
scence檢視簡介 : 展示建立的遊戲物件, 可以對所有的遊戲物件進行 移動, 操作 和 放置;
-- 示例 : 建立一個球體, 控制攝像機, 讓球體在攝像機拍攝的檢視中顯示出來;
(1) 攝像機導航
攝像機旋轉(Tumble) : alt + 滑鼠左鍵, 攝像機會按照滑鼠滾動的垂直中線進行旋轉, 可以檢視攝像機當前的狀態, 注意只是改變檢視中的狀態, 攝像機還是在檢視正中央位置, 攝像機的位置屬性是不變的;
攝像機移動(Track) : alt + 滑鼠中鍵, 移動攝像機到檢視中的其它位置, 注意只是改變檢視中的位置, 攝像機的實際座標是不會改變的;
縮放視野(Zoom) : alt + 滑鼠右鍵/滾輪, 縮小放大攝像機視野;
穿越模式(Flythrough) : 滑鼠右鍵 + A/S/D/W, 第一人稱模式在場景中移動, 滑鼠控制前進方向, WASD控制 左 前 後 右 方向;
居中(Center) : F 鍵, 在 Hierarchy 面板中選中物件, 按 F 鍵, 即可將選中的物件居中;
(2) 攝像機視角
Persp工具 : 在場景檢視的右上角有一個 Persp 工具, 可以對該工具操作 切換攝像機視角;
頂檢視 : 單擊 y , 就會進入頂檢視模式;
側檢視 : 單擊 z 進入側檢視;
正檢視 : 單擊 x 進入正檢視;
透視檢視 : y 軸在上, 使用 alt + 滑鼠左鍵, 調整到透視檢視;
(3) 高階檢視操作
在設計面板中有一個工具欄 :
繪製模式 : 控制物件的繪製, 預設 Textured 模式, 使用指定的顏色 或 貼圖繪製物件;
-- Wireframe 模式 : 顯示物件的物理網格;
--Tex Wire 模式: 把物件的貼圖 和 它們的線框疊加在一起;
渲染模式 : 對物件進行微調, 優化;
-- 預設 RGB 模式 : 帶顏色的方式顯示所有物件;
-- Alpha 模式 : 使用物件的 Alpha 值(灰度顯示) 顯示物件;
-- OverDraw 模式 : 顯示場景中有多少時間消耗在重複繪製上;
-- Mipmaps 模式 : 顯示物件使用的最理想的貼圖大小;
場景光照 : 切換光照方式, 方式一 使用預設的內建光照, 方式二 使用開發者設定的光照;
(4) 物件變換 (Object Transform)
物件變換 : 處理選中物件的位置, 旋轉 和 大小, 主要有以下兩種修改方式;
-- 屬性檢視器修改 : 在 Inspector 檢視中輸入新的屬性值, 可以進行變換;
-- 變換工具修改 : 通過變換工具;
通過屬性檢視器修改 : 選中 Camera, 可以在 Inspector 檢視中檢視 Camera 屬性, 其中的 Transform 屬性就是攝像機的 位置, 旋轉 和 縮放屬性;
改變位置 :
-- 通過拖動屬性座標軸修改(位置改變) : 選中 Camera 物件之後, 在Scence 檢視中Camera 會出現三個座標軸, 可以使用滑鼠拖動 Camera 沿著某一條座標軸移動;
-- 自由拖動物件(位置改變) : 點選 物件 的 中心位置, 可以自由拖動, 但是不精確;
旋轉 : 選中 物件, 按 E 鍵, 或者點選工具欄的旋轉圖示, 使用滑鼠拖動即可進行旋轉操作;
縮放 : 選中物體, 按 R 鍵, 或者 點選工具欄的 縮放工具, 使用滑鼠拖動座標軸 即可 在這個座標軸方向進行縮放;
2. Game檢視 (遊戲預覽面板)
Game檢視 : 顯示攝像機拍攝的內容, 是攝像機朝向的內容;
播放控制元件 :
-- 運行遊戲 : 啟用預覽面板, 開始遊戲;
-- 暫停遊戲 : 使執行中的遊戲暫停, 再次點選該按鈕 從 暫停處繼續執行;
-- 單幀執行 : 遊戲 一幀 一幀 的移動, 主要用於除錯bug, 錯誤等;
遊戲預覽面板控制欄 :
-- Aspect (任意顯示比例下拉列表) : 改變 Scence 檢視的顯示比例, 預設為任意比例顯示, 在為不通大小的介面製作遊戲時使用;
-- Maximize on Play(最大化) : 將Scence 檢視擴大到整個檢視中;
-- Gizmos 工具 : 切換遊戲中 繪製 和 渲染 的所有工具;
3. Hierarchy 檢視 (遊戲組成物件列表)
Hierarchy檢視 : 存放遊戲物件 和 檔案;
建立物件 : 點選 create 按鈕可以建立 遊戲場景內的 物體物件;
刪除物件 : 選中物件之後 按 Delete 鍵, 即可刪除物件;
物件的父子關係 : 父子關係就是將無關物件建立分組, 位於一個單一的物件之下, 父物件包括的物件叫做 孩子物件;
-- 作用 : 對父物件進行移動 縮放 旋轉操作, 其下的孩子物件也進行同樣的操作;
新增光照 : 球體建立好後, 在Game檢視中卻只能看到 一個圓, 這是因為我們沒有建立 光照;
-- 建立定向光 : 選擇 create 建立物件, 建立 Directional Light 之後, 之後可以看到 Game 中的 3D 效果;
-- Game效果 :
4. Project檢視 (專案資源列表)
Project檢視 : 存放一些遊戲資源 (指令碼, 物件, 場景, 檔案等),;
-- Assets目錄 : 開發者建立 和 匯入的資源 都放在該目錄下, 包括 貼圖, 指令碼 Camera 等;
給遊戲中的物件塗裝 : 給遊戲物件改變顏色, 可以在Project檢視中建立一個材質, 然後將材質賦給物件;
-- 建立材質 : 點選 Project 檢視的 create 按鈕, 選擇材質;
-- 給材質選擇顏色 : 在 Assets 中選中剛建立的材質;
-- 選擇顏色 : 這時 Inspector 檢視中會出現材質的屬性, 點選 Main Color 按鈕, 可以選擇材質的顏色;
-- 為將材質賦給物件 : 直接將 Assets 中的材質 拖拽到 Hierarchy 檢視中的物件上即可, 效果如下 :
5. Inspector 檢視 (屬性檢視器)
在這個檢視中可以修改Game檢視的顏色, 以及Scence 檢視的屬性;
設定Game檢視的顏色 : 選中攝像機, 然後在 Inspector 檢視中會出現下面的內容, 點選Background 會出現 右圖;
改變後的效果 :
Transform屬性 : 選中球體, 在 Inspector 檢視中會看到以下資訊;
-- Position : 選中物體的位置座標;
-- Rotation : 選中物體的角度;
-- Scale : 選中物體的縮放大小;
二. 入門示例一 - 第 一/三 人稱控制遊戲
1. 製作地形
(1) 引入地形
Project 檢視中, 右鍵點選 Assets, 選擇 Import Package --> Terrain Assets (地形), 下面是 引入的地形資源;
(2) 移動攝像機到正常位置
(3) 編輯地形
在 Hierarchy 檢視中選中 Terrain 地形, 在 Inspector 中可以對地形進行操作;
地形隆起操作 : 點選刷子, 在地形上進行操作;
讓地形變得圓滑 : 上圖中 紅框中的 山地比較尖銳, 使用 第三個工具可以使地形變得圓滑;
-- 圓滑效果 :
(4) 移動攝像機到合適的位置
移動攝像機 : 點選 Hierarchy 檢視中的 Main Camera 物件, 調整攝像機的位置, 使攝像機能夠完整的拍攝地形;
攝像機拍攝的地形效果 :
(5) 為場景貼圖
匯入場景貼圖 : 在 Project 檢視中, 右鍵點選 Assets, 選擇 Import Package --> Terrain Assets, 下面是匯入的地形紋理;
為地形新增紋理 : 在Hierarchy 檢視中選中 Terrain(地形) 物件, 在 Inspector 檢視中會顯示 地形的屬性;
-- 點選 Inspector 檢視中的 Edit Textures, 選擇 Add Texture, 在彈出的 Add Terrain Texture 對話方塊中選擇對應的貼圖;
紋理貼圖效果 :
(6) 新增天空盒
在上圖中沒有天空, 不是很美觀;
配置天空盒 : 選擇選單欄 Edit --> Render Settings --> Inspector檢視 --> skybox material;
選擇天空盒 : 在彈出的 Select Material 對話方塊中選擇天空盒;
最終效果 :
2. 第一人稱控制
(1) 匯入角色控制包
右鍵點選 Project 檢視中的 Assets, 選擇 Import Package --> Character Controller, 全部匯入;
(2) 在 Scence 檢視新增第一人稱控制
刪除攝像機 : 攝像機需要刪除, 因為第一人稱視角就是攝像機, 如果有攝像機的話就不會出現第一人稱視角了, 這裡將攝像機在 Scence 檢視中刪除;
設定第一人稱控制 : 將第一人稱控制拖拽到 Scence 檢視中, 調整座標, 注意 y 軸座標必須大於0, 也就是必須在地平面以上, 否則會掉下去;
遊戲效果 : 進入 Game 檢視, 可以進行遊戲體驗, 與 CS 差不多, 可以跳躍, 行走, 滑鼠控制方向;
3. 第三人稱控制
將第三人稱角色拖拽到 Hierarchy 檢視中 : 在 Scence 檢視中調整 角色位置;
選擇攝像機 :
效果 :
三. 入門示例二 - 籃球場景
1. 建立籃球場
(1) 建立長方體
建立過程 : GameObject --> Create Other --> Cube, 建立長方體;
檢視自己建立的長方體 : 在 Hierarchy 檢視中, 雙擊剛才建立的 Cube 長方體, 就可以在 Scence檢視中定位到這個 Cube上;
(2) 調整 Cube 大小
將Cube調整成籃球場比例的大小 : 根據下面截圖進行調整;
(3) 為籃球場新增紋理
匯入紋理圖片 : 選擇選單欄 Assets --> Import New Assets, 在彈出的對話方塊中選擇要匯入的紋理資源圖片;
建立新的紋理 : 在 Project 檢視中, 選擇 create 建立一個新的紋理;
為籃球場新增紋理 :
-- 顯示屬性 : 在 Hierarchy 檢視中選擇 Cube;
-- 選擇材料 : 在 Inspector 檢視中的 Materials 中選擇之前建立的紋理;
-- 選擇紋理 : 然後在 下面的 紋理屬性中選擇 剛才的籃球場 紋理貼圖圖片;
2. 建立籃球
(1) 建立球體
建立過程 : 選單欄 GameObject --> Create Other --> Sphere (球體);
調整大小位置姿態 : 按照下圖中的資料進行調整;
(2) 為籃球新增紋理
新增紋理過程 :
-- 建立一個新的材料 : 在 Project 檢視中, 選擇 create --> Materal;
-- 顯示屬性 : 在 Hierarchy 檢視中, 點選 Sphere 物件, 在 Inspector 檢視中顯示出 球體的屬性;
-- 選擇材料 : 點選 Inspector 檢視中的 Material 中的圓點, 選擇剛建立的材料;
-- 選擇紋理 : 點選 材料中的 紋理圖片上的 Select 按鈕, 彈出對話方塊選擇紋理;
籃球物件已新增完畢 :
3. 新增光源和攝像機
(1) 建立光源
建立過程 : 選擇 選單欄 GameObject --> Create Other --> Directional light (平行光);
(2) 調整光源姿態和強度
根據下圖中的引數調整 :
(3) 調整攝像機引數
調整攝像機引數, 背景顏色, 視角大小 :
4. 為籃球新增動作
(1) 匯入材料包
匯入材料包 : 選單欄 Assets --> Import Package --> Physic Materials;
(2) 為籃球新增剛體屬性
新增過程 : 在 Hierarchy 檢視中選中籃球, 然後選擇 選單欄 Component --> Physic --> Rigidbody;
(3) 為籃球新增球體碰撞者
新增過程 : 在 Hierarchy 檢視中選中球體, 選擇選單欄 Component --> Physic --> Sphere Collider;
(4) 為籃球新增彈性屬性
新增過程 : 選擇 球體屬性的 Sphere Collider屬性, 選擇材料 Material --> Bouncy (彈性);
5. 執行示例
點選Game檢視中的執行按鈕 :
.