Unity3D-C#脚本介绍
生活随笔
收集整理的這篇文章主要介紹了
Unity3D-C#脚本介绍
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Unity3D腳本介紹
腳本就是附加在游戲物體上用于定義游戲對象行為的指令代碼。Unity支持C#高級編程語言。
1.語法結構
using 命名空間; public class 類名:Monobehaviour {void 方法名(){Debug.Log("調試信息.");print("調用Debug.Log()方法.");} }- 文件名與類名必須一致。
- 寫好的腳本附加到物體上才能執行。
- 附加到物體的腳本類必須從MonoBehaviour類繼承。
2.創建腳本
1.右鍵–>Create–>C# Script,即可創建腳本,然后使用雙擊文件,使用編程工具打開,即可編寫代碼。生成代碼如下,若start和Update不需要使用,應該刪除然后在編寫代碼。
using System.Collections; using System.Collections.Generic; using UnityEngine;public class g_demo : MonoBehaviour {// Start is called before the first frame updatevoid Start(){}// Update is called once per framevoid Update(){} }3.腳本生命周期
1.編寫代碼如下,將該文件拖拽待攝像機上,效果如下。
using System.Collections; using System.Collections.Generic; using UnityEngine;public class g_demo : MonoBehaviour {public int a = 10;private int b = 20; }
2.通過上述修改a的值為a=100,則a的值為該面板中的值,即上述效果其實是創建了一個對象。若需要在面板中顯示private修飾的b的值,需要添加修飾字段 [SerializeField] ,它允許在編輯器中顯示私有變量。
3.隱藏變量
添加 [HideInspector]字段 修飾。
4.對于寫繼承至MonoBehaviour的腳本文件,只需要寫字段和方法。
using System.Collections; using System.Collections.Generic; using UnityEngine;public class g_demo : MonoBehaviour {public int a = 10;[SerializeField]private int b = 20;[HideInInspector]public int c = 10;[Range(0, 100)]public int r;/** 屬性:在編輯器不能顯示,通常腳本中不需要寫。* 構造函數也不需要寫,在Unity中,創建腳本對象,系統會創建子線程,而在構造函數中初始化,會出現無法訪問主線程的資源(Unity腳本對象)而出錯。* 在Unity中,腳本是以一個對象的形式存在的,與代碼無關了。* 在腳本中,只需要寫字段和方法。*/public int a_Value{get { return this.a; }set { this.a = value; }} }顯示的效果
4.初始化
- Awake喚醒:當物體載入時,立即調用一次,常用于游戲開始前的初始化可以判斷當滿足某種條件執行此腳本this.enable=true。
- OnEnable當可用:每當腳本對象啟動時調用;
- Start開始:物體載入且腳本對象啟用時被調用一次。常用于數據或游戲邏輯初始化,執行時機晚于Awake。
- 如下啟用腳本。
若某對象A需要在對象B后執行初始化,則可以把B對象的寫在Awake里,A寫在Start里面。
總結
以上是生活随笔為你收集整理的Unity3D-C#脚本介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网页开发部署-开发工具MyEclips+
- 下一篇: java处理unicode_C# Jav