C#代碼跟unity關聯教程
05-12
1、C#腳本的規則
(1)凡事需要添加到遊戲對象的C#腳本類都是需要直接或者間接的繼承 MonoBehaviour 如果在unity添加腳本 unity會自動填充繼承MonoBehaviour的代碼 如果是自己新建一個文件 然後在unity從拖拽添加component 這樣是不會成功的(後面會說unity怎麼添加C#文件)
(2)繼承了MonoBehaviour的類 都會有Start 和 Awake函數的繼承 一般使用Start和Awake來初始化 不使用構造函數的原因是unity中無法確定構造函數的順序。這裡我覺得有個原因是:unity會把所有綁定在對象身上的類實例化 然後才可以GetComponent() 例如:下面的操作如果在構造函數中做 可能PlayerAttack這個沒有實例化 那麼獲取不到 所以把初始化工作放在Start中
Alt text
(3)類名和腳本文件名相同
(4)協同函數Coroutines 返回類型必須是Ienumerator
(5)C#不支持自定義命名空間
2、C#腳本在unity編輯器中關聯對象(十三章有詳細介紹)
1、創建腳本的方法:
Alt text
2、創建完之後的編輯:
這裡可以修改用MonoDevelop的編輯器 或者用Vs2012作為代碼編輯Alt text
3、關聯到對象去
(3.1)添加一個gameobjectAlt text
(3.2) 然後給gameObject添加腳本
Alt text
Alt text
在Unity中,繼承MonoBehaviour的C#腳本都被看作一個Component 遊戲對象可以理解為一個容納各種類型component的容器 遊戲對象的所有component一起決定了這個對象的行為表現 這個對象被添加到scene中之後 然後點擊build and run 之後這個腳本的Start函數就會被調用一起 可以在這裡輸出 hello world 這就算是unity的hello world
3、怎麼獲取別的對象以及他的component
使用函數 GameObject.Find null則是找不到 根據類名使用函數GameObject.FindWithTag還有在unity編輯器中拖拽
查看數組的表13-6 表13-7 表13-8 表13-9
Alt text
Alt text
Alt text
Alt text
推薦閱讀: