[Unity]Unity常見API


本文主要為了方便查閱

1. MonoBehaviour 生命周期

  • Awake 對象創建的時候調用,類似構造函數
  • Start 在Awake之后執行,區別在於,如果組件不可用(在Inspector沒有勾選該組件),是不會執行Start
  • Update 主函數循環每幀調用
  • FixedUpdate 每次固定幀調用,在物理計算的時候,應該使用該方法,而不是Update
  • OnDestroy 對象銷毀時調用

2. MonoBehaviour 常見回調函數

  • OnMouseEnter 鼠標移入GUI控件或者碰撞體時調用
  • OnMouseOver 鼠標停留在GUI控件或者碰撞體時調用
  • OnMouseExit 鼠標移出GUI控件或者碰撞體時調用
  • OnMouseDown 鼠標在GUI控件或者碰撞體上按下時調用
  • OnMouseUp 鼠標在GUI控件或者碰撞體上釋放時調用
  • OnTriggerEnter 當其他碰撞體進入觸發器時調用
  • OnTriggerExit 當其他碰撞體離開觸發器時調用
  • OnCollisionEnter 當碰撞體或者剛體與其他碰撞體或剛體接觸時調用
    • OnCollisionEnter2D 其它2D函數類似
  • OnCollisionExit 當碰撞體或者剛體與其他碰撞體或剛體停止接觸時調用
  • OnCollisionStay 當碰撞體或者剛體與其他碰撞體或剛體保持接觸時調用
  • OnContollerColliderHit 當控制器移動時與碰撞體發生碰撞時調用
  • OnBecameVisible 對於任意一個相機可見時調用
  • OnBecameInVisible 對於任意一個相機不可見時調用
  • OnEnable 對象啟用或者激活時調用
  • OnDisable 對象禁用或者取消激活時調用
  • OnDestroy 腳本銷毀時調用
  • OnGUI 渲染GUI和處理GUI消息時調用

3. 訪問游戲對象

  • GameObject.Find 多個時返回第一個
  • GameObject.FindWithTag 多個時返回第一個
  • GameObject.FindGameObjectsWithTag 返回數組

以上函數比較耗時,盡量避免在update函數中使用。

4. 訪問組件

4.1. 常見組件

  • Transform 位置、旋轉、縮放
  • Rigidbody 剛體
  • Renderer 渲染物體模型
  • Light 燈光屬性
  • Camera 相機屬性
  • Collider 碰撞體
  • Animation 動畫
  • Audio 聲音
  • Mesh
    • Mesh Filter 網格過濾器
    • Text Mesh 文本
    • Mesh Renderer 網格渲染器
    • Skinned Mesh Renderer 蒙皮渲染器,用於骨骼動畫
  • Particle Sysyem 粒子系統
  • Physics 物理
  • Image Effects
  • Scripts 自定義組件

4.2. 獲取組件

  • GetComponent<>() 獲取組件
  • GetComponents<>()
  • GetComponentInChildren<>() 得到對象或者對象子物體上的組件
  • GetComponentsInChildren<>()

以上函數比較耗時,盡量避免在update函數中使用。

4.3. Transform 組件

4.3.1. 成員變量
  • position 世界坐標系
  • localPosition 相對坐標系(父對象)
  • eulerAngles 世界坐標系中以歐拉角表示的旋轉
  • localEulerAngles 相對旋轉
  • right 右方向
  • up 上方向
  • forward 前方向
  • rotation 旋轉四元數
  • localRotation 相對旋轉四元數
  • localScale 相對縮放比例
  • parent 父對象的Transform組件
  • worldToLocalMatrix 世界坐標系到局部坐標系的變換矩陣(只讀)
  • localToWorldMatrix 局部坐標系到世界坐標系的變換矩陣(只讀)
  • root 根對象的Transform組件
  • childCount 子孫對象的數量
  • lossyScale 全局縮放比例(只讀)
4.3.2. 成員函數
  • Translate 按指定方向和距離平移
  • Rotate 按指定的歐拉角旋轉
  • RotateAround 按給定旋轉軸和旋轉角度進行旋轉
  • LookAt 旋轉使得自身的前方向指向目標的位置
  • TransformDirection 將一個方向從局部坐標系變換到世界坐標系
  • InverseTansformDirection 將一個方向從世界坐標系變化到局部坐標系
  • DetachChildren 與所有子物體接觸父子關系
  • Find 按名稱查找子對象
  • IsChildOf 判斷是否是指定對象的子對象

5. Time 時間類

5.1. 成員變量

  • time 游戲從開始到現在經歷的時間(秒)(只讀)
  • timeSinceLevelLoad 此幀開始時間(秒)(只讀),從關卡加載完成開始計算
  • dateTime 上一幀耗費的時間(秒)(只讀)
  • fixedTime 最近FixedUpdate的時間。該時間從游戲開始計算
  • fixedDateTime 物理引擎和FixedUpdate的更新時間間隔
  • maximunDateTime 一幀的最大耗時時間
  • smoothDeltaTime Time.deltaTime的平滑淡出
  • timeScale 時間流逝速度的比例。可以制作慢動作特效
  • frameCount 已渲染的幀的總數(只讀)
  • realtimeSinceStartup 游戲從開始到現在的真實時間(秒),該事件不受timeScale影響
  • captureFramerate 固定幀率設置

6. Random 隨機數類

6.1. 成員變量

  • seed 隨機數生成器種子
  • value 0~1隨機數,包含0和1
  • insideUnitSphere 半徑為1的球體內的一個隨機點
  • insideUnitCircle 半徑為1的圓內的一個隨機點
  • onUnitSphere 半徑為1的球面上的一個隨機點
  • rotation 隨機旋轉
  • rotationUnitform 均勻分布的隨機旋轉

6.2. 成員函數

  • Range 返回(min,max)直接的隨機浮點數,包含min和max

7. Mathf 數學類

7.1. 成員變量

  • PI
  • Infinity 正無窮大
  • NegativeInfinity 負無窮大
  • Deg2Rad 度到弧度的轉換系數
  • Rad2Deg 弧度到度的轉換系數
  • Epsilon 一個很小的浮點數

7.2. 成員函數

  • Sin 弧度
  • Cos 弧度
  • Tan 弧度
  • Asin 角度
  • ACos 角度
  • Atan 角度
  • Sqrt 計算平方根
  • Abs 絕對值
  • Min
  • Max
  • Pow Pow(f,p) f的p次方
  • Exp Exp(p) e的p次方
  • Log 計算對數
  • Log10 計算基為10的對數
  • Ceil 向上取整
  • Floor 向下取整
  • Round 四舍五入
  • Clamp 將數值限制在min和max之間
  • Clamp01 將數值限制在0和1之間

8. Coroutine 協同程序函數

  • StartCoroutine 啟動一個協同程序
  • StopCoroutine 終止一個協同程序
  • StopAllCoroutines 終止所有協同程序
  • WaitForSeconds 等到若干秒
  • WaitForFixedUpdates 等待直到下一次FiexedUpdate調用


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM