# Unity環境安裝
###### tags: `11001社課`
---
# 環境安裝
----
# Unity下載
[Unity Hub下載 ](https://unity3d.com/cn/get-unity/download)
![](https://i.imgur.com/tcc2lui.png)
----
![](https://i.imgur.com/8HsIa1T.png)
----
![](https://i.imgur.com/TbhcTxG.png)
----
![](https://i.imgur.com/YKHKazA.png)
----
# 如果建議版本不見了
----
直接載官方歷史版本2020.3.19版本
https://unity3d.com/unity/whats-new/2020.3.19
----
# C#簡介
C#是微軟推出的一種基於.NET框架的、物件導向的進階程式語言。
自2017年Unity廢除掉JavaScript後,為用來編寫Unity的主要語言。
----
# IDE(集成開發環境)
----
## Visual Studio
Microsoft Visual Studio(視覺工作室,簡稱VS或MSVS)是微軟公司的開發工具套件系列產品。VS是一個基本完整的開發工具集,它包括了整個軟體生命週期中所需要的大部分工具,如UML工具、程式碼管控工具、整合開發環境(IDE)等等。
----
如果嫌預設會安裝的Visual Studio 2019太胖了的話,可以考慮使用VSCode,可參考[此篇文章](https://tedliou.com/archives/vs-code-for-unity-setup/)進行安裝使用。
----
# 變更IDE
----
![](https://i.imgur.com/LsiRtFi.png =50%x)
----
![](https://i.imgur.com/7aP1vaW.png )
可選自己習慣的IDE使用
----
# 授權申請
----
![](https://i.imgur.com/9zAafm6.png)
----
![](https://i.imgur.com/Cfdp6L9.png)
----
![](https://i.imgur.com/5YBYQTR.png)
----
# 學生專案申請
厭倦Unity免費版,每7天一次的授權更新了嗎,可參考[此篇文章](https://ishengplab.dev/unity-student/)並去官網用學生信箱申請1年份的Unity Pro。
---
# 建立新專案
----
![](https://i.imgur.com/NMcTDg6.png)
----
![](https://i.imgur.com/kJBPbCS.png)
位置名稱隨意
---
# 介面介紹
----
### Unity 操作介面
Unity 編輯器的操作介面是由多個不同功能的視窗組成,使用者可以調整視窗的大小與位置。
![](https://i.imgur.com/IdtoBte.png)
----
### Toolbar 工具列
Unity 編輯器的最上方是工具列,提供移動、旋轉、縮放物件的編輯工具。
Transform Tools 變形工具 移動 ( W )、旋轉 ( E )、縮放 ( R )
Transform Gizmo Toggles 切換物件使用自身座標或世界座標
Play / Pause / Step Buttons 遊戲檢視的執行、暫停、單格前進按鈕
![](https://i.imgur.com/asl5zvZ.png)
----
### Project視窗(專案)
每個 Unity 遊戲專案的檔案都是儲存在一個專案資料夾,您可以從 Project View 專案視窗瀏覽專案資料夾的內容。
----
您可以為遊戲專案建立場景 ( Scenes )、預製物件 ( Prefabs )、行為腳本 ( Scripts ) ,或是匯入模型 ( 3D Models )、紋理 ( Textures )、音效 ( Audio ),並使用 Unity 的專案視窗來進行管理。若需要將資源加入目前的遊戲專案,可點選功能表 [ Assets > Import New Asset ] 並選擇檔案,或是使用滑鼠將檔案拖曳到 Project View 專案視窗。
![](https://i.imgur.com/vxOoU06.png)
----
### Scene視窗(場景)
主要工作區是的場景視窗,可以編輯地形或是加入各種遊戲物件,例如玩家角色、燈光、攝影機、粒子系統。
![](https://i.imgur.com/4KJp8RM.png)
----
### Hierarchy視窗(階層)
顯示目前場景的物件與其階層關係,需要在物件附加元件或腳本時,可直接拖曳到階層面板的遊戲物件。
階層視窗中以藍色顯示名稱的遊戲物件是「預製物件」,而以灰色標示的遊戲物件則是暫時關閉的物件。
![](https://i.imgur.com/cpZ6jDK.png)
----
### Inspector視窗(檢查器)
Unity 畫面右側的屬性編輯器用於設定遊戲物件的屬性(物件名稱、座標位置、旋轉角度、縮放比例等),是否為靜態物件(用於計算燈光貼圖)。
此外,若是物件已附加燈光、攝影機、碰撞器、程式腳本等元件,也可透過 Inspector 屬性編輯器修改各項參數。
![](https://i.imgur.com/6R27Dl8.png)
----
### Game視窗(遊戲)
遊戲視窗可用於遊戲的執行測試,點選右上方的 Stats 按鈕即可顯示 Statistics 半透明視窗,檢視 Draw Calls 數量、模型面數、材質貼圖的記憶體用量。
![](https://i.imgur.com/ilgLvJC.png)
----
### Console視窗(控制台)
用來除錯以及Debug。
接受Debug.Log以及print兩種輸出方式。
![](https://i.imgur.com/ofCCPPc.png)
![](https://i.imgur.com/59txKbB.png)
---
# 資源商店
----
# Unity範例遊戲 2D Game kit 安裝
----
![](https://i.imgur.com/f37FCUO.png)
----
![](https://i.imgur.com/YUpv1vM.png)
----
![](https://i.imgur.com/pNRe82Y.png)
----
![](https://i.imgur.com/UV2ohgP.png=15%x)
這邊的按鈕因為我已經安裝過了所以是Open in Unity 你們那邊應該會是導入到專案中
----
![](https://i.imgur.com/HaHrNmR.png)
----
![](https://i.imgur.com/pGtPkeW.png)
----
![](https://i.imgur.com/OCJfIAj.png)
----
![](https://i.imgur.com/NbC3i7u.png)
----
![](https://i.imgur.com/B5R9Va9.png)
----
![](https://i.imgur.com/kqJrFYD.png)
----
![](https://i.imgur.com/9xPt2BC.png =30%x)
----
![](https://i.imgur.com/znuTYEg.png)
----
![](https://i.imgur.com/2NhFf3b.png)
----
![](https://i.imgur.com/GhNVAMN.png)
---
# 匯入貼圖素材
----
貼圖素材:
https://drive.google.com/drive/folders/1BIy5LpJVt7sd4Xr9lp71Ofu682mvLJyH?usp=sharing
----
![](https://i.imgur.com/4DaZTxD.png)
右鍵顯示資料夾
----
![](https://i.imgur.com/dqk3AwP.png)
拖入素材
---
# 2D Game Kit說明文檔
----
https://learn.unity.com/tutorial/2d-game-kit-walkthrough?uv=2020.3&projectId=5c51481eedbc2a00206944f0#
---
# 預製物(Prefab)觀念
就是預先製作好的物件
只要把任何拖入場景的物件拖回專案視窗都會變成預製物
好處是可以動態生成這些物件
---
# 修改與新增功能
----
# 勝利介面
----
UI跟一般場景的Sprite的差別?
----
UI是介面
所以根據不同裝置不同解析度
都需要等比例的顯示在固定位置
才能方便使用者操作
----
![](https://i.imgur.com/oBts2ZJ.png =60%x)
使用UI需要在場景右鍵新增一個畫布
----
![](https://i.imgur.com/Ry3oKBl.jpg)
渲染模式改為根據攝影機
----
![](https://i.imgur.com/C1P6kE2.jpg)
將Cameras點開找到Main Camera拖進渲染攝影機這個選項裡面
----
![](https://i.imgur.com/gKbAcPh.png =50%x)
變更圖層
----
![](https://i.imgur.com/URFAK1v.png)
對著畫布右鍵新增一個圖片 圖片裡在右鍵新增文字
----
![](https://i.imgur.com/Tin5n7L.png)
調整圖片顏色
----
![](https://i.imgur.com/BaqdzHw.png)
調整文字顏色、大小
----
# 遊戲勝利
----
![](https://i.imgur.com/yEpElTl.png)
進行之前先把主角的標籤改為Player
----
![](https://i.imgur.com/H8FnOcq.png =70%x)
右鍵新增一個正方形貼圖
----
![](https://i.imgur.com/VOdOTLS.png)
將貼圖放到精靈裡面即可變更貼圖
----
![](https://i.imgur.com/KLO7Xjz.png =40%x)
給這個物件增加2D碰撞器
----
![](https://i.imgur.com/YoRgx2A.png =40%x)
給這個物件增加rigibody2D
這兩個一個是碰撞器 一個是讓碰撞時會擁有物理效果(被撞飛之類的)
----
![](https://i.imgur.com/t2HrC7S.png)
碰撞器元件可以把 是觸發器這個選項打勾
就是沒有實體 不會被玩家撞到的意思
可是還是可以觸發程式的判斷式
----
![](https://i.imgur.com/1iJmKZB.png)
rigibody2d記得把重力關掉
----
![](https://i.imgur.com/jx5vcnE.png =60%x)
建立一個script 檔案名稱要直接輸入 不然用變更的話 檔案內部也要修改
----
![](https://i.imgur.com/QIh6zqw.png)
這兩個名稱要一致 否則會報錯
雙擊兩下進入編譯器
----
![](https://i.imgur.com/xFfkbCx.png)
Start跟Update刪除 之後社課才會用到
----
![](https://i.imgur.com/0kOVeGn.png)
----
![](https://i.imgur.com/3DKWqfx.jpg)
----
![](https://i.imgur.com/AipS4Ek.jpg)
---
# 死亡重置關卡
----
![](https://i.imgur.com/cZMDZOB.png)
可以從這裡看到主角死亡後執行的程式碼來自於PlayerCharacter的OnDie方法
----
![](https://i.imgur.com/QChejys.png)
找到PlayerCharacter並雙點兩下打開角色控制的程式碼
----
![](https://i.imgur.com/hQESPXC.png)
Ctrl+f搜尋程式碼OnDie找到這個方法
並加上第714行的程式碼
----
# 程式碼解釋:
----
```csharp=
SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex);
// SceneManager.LoadScene()是載入場景(裡面放場景編號或名稱)
// SceneManager.GetActiveScene().buildIndex 是當前場景的編號
```
這是載入當前場景(當前場景編號)
----
![](https://i.imgur.com/y4n1EJT.png)
發現錯誤
----
![](https://i.imgur.com/IKkv5pY.png)
回到程式碼的最上方加上
```csharp=
using UnityEngine.SceneManagement;
// using是使用、引用命名空間的意思
// 在這裡是引用場景管理器
// 這樣才能用程式碼來載入場景
```
----
# 場景編號怎麼看或修改?
----
![](https://i.imgur.com/9MWHxwM.png)
----
![](https://i.imgur.com/xog49QA.png)
---
# 懶人包
----
相關的程式碼都放到雲端了
懶得打的人可以直接複製檔案取代
https://drive.google.com/drive/folders/1BIy5LpJVt7sd4Xr9lp71Ofu682mvLJyH?usp=sharing
---
# 輸出成EXE
----
![](https://i.imgur.com/VtZBiSp.png)
----
![](https://i.imgur.com/1Ys2BTX.png =50%x)
擺在第一個場景會最先載入
所以自製的關卡可能要往前擺才行
---
# 自定義一個關卡
----
### 製作你的第一款遊戲
### 並分享於我們遊戲開發社的雲端吧!
https://drive.google.com/drive/folders/1nv4IvgLdBxM4cmHUr9fBenitoKtdF_Q5?usp=sharing
---
# 場景保留
----
![](https://i.imgur.com/VL0S5VI.jpg)
如果要保留Start場景作為開始介面
則點開Start場景找到這個TransitionStart物件
變更檢查器滑到底的SceneName
---
# 官方手冊沒講的各種物件
----
# 專案內預製物介紹
----
![](https://i.imgur.com/pSTCjYn.png)
背景音效
----
![](https://i.imgur.com/K9eVQVJ.png)
敵人 有圖示的兩種是怪物 另一個則是怪物召喚器
----
![](https://i.imgur.com/bhhSlNp.png =50%x)
環境資源有兩種
其中acid除了會造成傷害之外
還會把溺水的玩家傳回最後觸碰過的檢查點
----
![](https://i.imgur.com/W8T1kyE.jpg)
它可以直接用它的腳本來控制大小
----
![](https://i.imgur.com/B1GmVQb.png)
可互動的物件
這個有些已經在手冊中介紹過了
故不再介紹可自己嘗試
----
![](https://i.imgur.com/HRZJSxW.png)
場景控制類
CheckPoint(檢查點)
當你溺水時可將玩家傳送回最後碰過的檢查點
----
![](https://i.imgur.com/6rIZWqf.png)
敵人特效類
除了會持續對玩家造成傷害的能量護盾外
大部分都是一次性的子彈攻擊
{"metaMigratedAt":"2023-06-16T11:40:44.342Z","metaMigratedFrom":"Content","title":"Unity環境安裝","breaks":true,"contributors":"[{\"id\":\"faca3329-cc98-475b-ac42-c0a846116bf8\",\"add\":8946,\"del\":1683}]"}