Unity3D数字孪生笔记——Unity脚本篇
生活随笔
收集整理的這篇文章主要介紹了
Unity3D数字孪生笔记——Unity脚本篇
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
Unity3D數(shù)字孿生筆記(一)——Unity篇
- 一、腳本介紹
- 1、腳本
- 1>介紹
- 2>語法結(jié)構(gòu)
- 3>編譯過程
- 4>修改腳本模板
- 2、開發(fā)工具
- 1>MonoDevelop
- 2>Visual Studio
- 3>Console
- 3、腳本生命周期
- 1>簡介
- 2>初始階段
- 3>物理階段
- 4>輸入事件
- 5>游戲邏輯
- 6>場景渲染
- 7>結(jié)束階段
- 4、調(diào)試
- 1>使用Unity編輯器
- 2>使用VS
- 3>使用MonoDevelop
一、腳本介紹
1、腳本
1>介紹
- 腳本是附加在游戲物體上用于定義游戲?qū)ο笮袨榈闹噶畲a
- Unity支持三種高級編輯語言:
C#、JavaScript、BooScript(現(xiàn)在不支持)
2>語法結(jié)構(gòu)
- 文件名與類名必須一致
- 寫好的腳本必須附加到物體上才能執(zhí)行
- 附加到游戲物體的腳本類必須從MonoBehaviour類繼承
3>編譯過程
- 編譯運行過程:
源代碼 -->(CLS) -->中間語言 -->(Mono Runtime) -->機(jī)器碼
4>修改腳本模板
1、圖標(biāo)單擊鼠標(biāo)右鍵 -->屬性
2、打開文件位置
3、依次選擇Data --> Resources --> ScriptTemplates
4、選擇81開頭的txt,并以VS打開或記事本打開,改寫成如下格式,保存即可
2、開發(fā)工具
1>MonoDevelop
- Unity 自帶腳本編譯器,創(chuàng)建Mono應(yīng)用程序,適用于Linux、Mac OS X和Windows的集成開發(fā)環(huán)境,支持C#、BOO和JavaScript等高級編程語言
2>Visual Studio
- 微軟公司的開發(fā)工具包,包括了整個軟件生命周期中需要的大部分工具,如團(tuán)隊開發(fā)工具、繼承開發(fā)環(huán)境等
- 在Unity中通過菜單設(shè)置修改默認(rèn)的腳本編輯器:
Edit ——Preferences——External Tools——External Script Editor
3>Console
3、腳本生命周期
1>簡介
- Unity腳本從喚醒到銷毀的過程
- 消息:當(dāng)滿足某種條件Unity引擎自動調(diào)用的函數(shù)
- 也稱為必然事件
2>初始階段
- Awake 喚醒:
當(dāng)物體載入時立即調(diào)用1次;常用于在游戲開始前進(jìn)行初始化,可以判斷當(dāng)滿足某種條件執(zhí)行此腳本 this.enable = true - OnEnable 當(dāng)可用:
每當(dāng)腳本對象啟用時調(diào)用 - Start 開始:
物體載入且腳本對象啟用時被調(diào)用1次,常用于數(shù)據(jù)或游戲邏輯初始化,執(zhí)行時機(jī)晚于Awake。
3>物理階段
-
FixedUpdate 固定更新:
1、腳本啟用后,固定時間被調(diào)用,適用于對游戲?qū)ο笞鑫锢聿僮?#xff0c;例如移動等
2、設(shè)置更新頻率:“Edit” -->“Project Setting” --> “Time” -->"Fixed Timestep"值,默認(rèn)0.02s -
OnCollisionXXX 碰撞:
當(dāng)滿足碰撞條件時調(diào)用 -
OnTriggerXXX 觸發(fā):
當(dāng)滿足觸發(fā)條件時調(diào)用
4>輸入事件
- OnMouseEnter 鼠標(biāo)移入:
鼠標(biāo)移入到當(dāng)前Collider 時調(diào)用 - OnMouseOver 鼠標(biāo)經(jīng)過:
鼠標(biāo)經(jīng)過當(dāng)前Collider 時調(diào)用 - OnMouseExit 鼠標(biāo)離開:
鼠標(biāo)離開當(dāng)前Collider 時調(diào)用 - OnMouseDown 鼠標(biāo)按下:
鼠標(biāo)按下當(dāng)前Collider 時調(diào)用 - OnMouseUp 鼠標(biāo)抬起:
鼠標(biāo)在當(dāng)前Collider 上抬起時調(diào)用
5>游戲邏輯
- Update 更新:
腳本啟用后,每次渲染場景時調(diào)用,頻率與設(shè)備性能及渲染量有關(guān) - LateUpdate 延遲更新:
在Update函數(shù)被調(diào)用后執(zhí)行,適用于跟隨邏輯
6>場景渲染
- OnBecameVisible 當(dāng)可見:
當(dāng)Mesh Renderer 在任何相機(jī)上可見時調(diào)用 - OnBecameInvisible 當(dāng)不可見:
當(dāng)Mesh Renderer 在任何相機(jī)上都不可見時被調(diào)用
7>結(jié)束階段
- OnDisable 當(dāng)不可用:
對象變?yōu)椴豢捎没蚋綄儆螒驅(qū)ο蠓羌せ顮顟B(tài)時此函數(shù)被調(diào)用 - OnDestory 當(dāng)銷毀:
當(dāng)腳本銷毀或附屬的游戲?qū)ο蟊讳N毀時被調(diào)用 - OnApplicationQuit 當(dāng)程序結(jié)束:
應(yīng)用程序退出時被調(diào)用
4、調(diào)試
1>使用Unity編輯器
- 將程序投入到實際運行中,通過開發(fā)工具進(jìn)行測試,修正邏輯錯誤的過程。
- 1.控制臺調(diào)試
Debug.Log(變量);
print(變量); - 2.定義共有變量,程序運行后在檢測面板查看數(shù)據(jù)
適用性: 簡單邏輯的調(diào)試
2>使用VS
- 準(zhǔn)備工作:
(1)安裝 vstu20xx 工具
(2)在Unity項目面板中導(dǎo)入:Visual Studio 20xx Tools - 調(diào)試步驟:
(1)在可能出錯的行添加斷點
(2)菜單欄——調(diào)試——附加Unity調(diào)試程序
(3)在Unity中Play場景 - Update中進(jìn)行單幀調(diào)試:
(1)菜單欄——調(diào)試——附加Unity調(diào)試程序
(2)Unity中運行游戲場景
(3)暫停場景
(4)加斷點
(5)單幀運行
(6)結(jié)束調(diào)試 - 調(diào)試過程中,輸入代碼的方式:
(1)右鍵—>快速監(jiān)視
(2)查看"即時窗口"
適用性: 復(fù)雜邏輯的調(diào)試
3>使用MonoDevelop
- 在可能出錯的行添加斷點
- 啟動調(diào)試:點擊MD菜單欄"Run"—>Attach to Processs按鈕
- 在Unity中Play場景
總結(jié)
以上是生活随笔為你收集整理的Unity3D数字孪生笔记——Unity脚本篇的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端学习(1737):前端调试值测试窗口
- 下一篇: oracle之数据处理之约束1