首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 更多程式設計知識

Unity3D 入門教程:界面、坐標、腳本語言、組件模式、發布全流程

     編輯:更多程式設計知識

Unity3D 入門核心知識體系:編輯器界面、坐標系、腳本語言選擇、組件掛載模式、常用生命周期、簡單實戰、多平台發布。

1. 編輯器五大核心窗口

窗口功能
Scene (場景)構建遊戲世界:放置模型、燈光、攝像機、地形
Hierarchy (層級)場景中所有 GameObject 樹狀列表,管理父子關係
Inspector (檢視器)選中對象的屬性、組件參數編輯,公開變量在此顯示
Game (遊戲)運行時畫面預覽,僅 Play 模式下顯示
Project (項目)資源庫:腳本、模型、材質、預製體、音頻等

2. 主菜單八大欄目

File, Edit, Assets, GameObject, Component, Terrain, Window, Help。熟悉各命令位置,如 Assets > Create > C# Script、GameObject > 3D Object > Cube。

3. 坐標系

左手坐標系:X 右、Y 上、Z 前 (面向攝像機為負)。順序 (x, y, z)。Transform 組件包含 Position, Rotation, Scale。

4. 腳本語言選擇 (C# / JavaScript / Boo)

現代 Unity (2017+) 僅支持 C#。歷史:

  • C#:強類型、豐富 .NET 庫、VS 支持、性能最優、社區主流,**唯一推薦**。
  • UnityScript (JS):動態類型、無需 new、隱式繼承 MonoBehaviour、已棄用移除。
  • Boo:Python 風格、已移除。

5. 腳本核心機制:組件掛載

  • 腳本是 MonoBehaviour 子類,**必須掛載在 GameObject 上才能執行** (拖拽到 Inspector 或 AddComponent)。
  • 組件模式:GameObject = 容器,功能由組件構成 (Transform, Renderer, Collider, Script...)。
  • 腳本間通信:GetComponent<T>() 獲取同物體組件,GameObject.Find 查找其他物體,靜態成員直接訪問。

6. 核心生命周期函數 (執行順序)

  1. Awake():腳本實例化時調用,初始化引用,跨腳本最早。
  2. OnEnable():啟用時調用。
  3. Start():首幀 Update 前調用,依賴其他 Awake 完成的初始化。
  4. Update():每幀調用,邏輯、輸入檢測。
  5. LateUpdate():Update 後調用,攝像機跟隨、動畫後處理。
  6. FixedUpdate():固定時間步長 (默認 0.02s),物理計算、剛體操作。
  7. OnGUI():IMGUI 繪製 UI,每幀多次調用。
  8. OnDisable() / OnDestroy():清理。

7. 重要命名規範

  • 類/方法/公共屬性:**PascalCase** (MoveSpeed, Start())。
  • 私有字段/參數:**camelCase** (_moveSpeed, deltaTime)。
  • Unity 內置 API:類名首字母大寫 (GameObject, Transform),實例/屬性首字母小寫 (gameObject, transform)。Camera.main 靜態屬性獲取主攝像機。

8. 實戰:點擊方塊旋轉、燈光亮起、顯示文字

  1. 創建 Cube、Plane、Spotlight。
  2. 創建 C# 腳本 RotateOnClick 掛載 Cube。
  3. 代碼:
    
    using UnityEngine;
    public class RotateOnClick : MonoBehaviour {
        public Light targetLight;
        private bool rotating = false;
        void OnMouseDown() { rotating = true; targetLight.enabled = true; }
        void OnMouseUp() { rotating = false; targetLight.enabled = false; }
        void Update() { if (rotating) transform.Rotate(0, 90 * Time.deltaTime, 0); }
        void OnGUI() { if (rotating) GUI.Label(new Rect(10,10,100,20), "Rotating!"); }
    }
        
  4. Inspector 中將 Spotlight 拖入 targetLight 欄位。
  5. 運行測試。

9. 發布設置


File > Build Settings
- Target Platform: Windows / Mac / Android / iOS / WebGL ...
- Scenes In Build: 拖入構建場景
- Player Settings: 圖標、包名、最低版本、圖形 API...
- Build / Build And Run
  • Android 需 JDK + SDK + NDK 配置。
  • iOS 需 macOS + Xcode 構建。
  • WebGL 直接瀏覽器運行,無需插件 (Unity 5.6+ 棄用 Web Player)。

總結

Unity 入門核心:**界面認知 → 坐標系 → C# 腳本 → 組件掛載模式 → 生命周期 → 實戰 → 發布**。掌握 MonoBehaviour、GetComponent、Transform、Time.deltaTime、Instantiate/Destroy 基礎 API,即可開始構建遊戲原型。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved