Unity實作腳本外掛程式[Script Create Dialog]圖文詳解
自動產生腳本的插件[Script Create Dialog],大概是名字起的和腳本產生器相差太多,現在的開發工具又太強大,所以被埋沒了。支援的Unity版本 3.4.2以上,遠古時期遺留的資源。試用了一下,感覺要是剛學Unity腳本的時候有這個插件,可以省下很多讀API的時間。
最近寫程式又懶了...
感覺每次新建腳本都要寫一堆簡單重複的東西好無聊,所以搜尋了一下有沒有自動生成腳本的插件。
外掛程式效果
使用方式
#1.下載我修改後的外掛程式
連結: https://pan.baidu.com/s/1oa8r...密碼:6zln
#2.下載官方外掛程式並修復腳本錯誤
官方下載地址:https:/ /assetstore.unity.com/...
如果導入插件後出現以下錯誤:Assets/CreateScriptDialog/Editor/NewScriptWindow.cs(454,47): error CS0117:
UnityEditorInternal.InternalEditorUtility' does not contain a definition for
AddScriptComponentUnchecked'
把錯誤部分程式碼改為:
if (CanAddComponent()) { // Need to use reflection to access this now (it is internal) MethodInfo addScriptMethod = typeof(InternalEditorUtility).GetMethod( "AddScriptComponentUncheckedUndoable", BindingFlags.Static | BindingFlags.NonPublic); addScriptMethod.Invoke(null, new Object[] {m_GameObjectToAddTo, AssetDatabase.LoadAssetAtPath(TargetPath(), typeof (MonoScript)) as MonoScript}); }
#3.右鍵使用
#Assets視窗下右鍵>Create>Script...開啟視窗使用。
4.可以自訂新的腳本範本
使用說明在ReadMe.html中可以看到。
方法範本在MonoBehaviour.functions.txt中可以看到。可以根據規則新增自訂範本。
BASECLASS=MonoBehaviour using UnityEngine; using System.Collections; using System.Collections.Generic; public class $ClassName : MonoBehaviour { $Functions }
void Awake() Awake is called when the script instance is being loaded. DEFAULT void Start() Start is called just before any of the Update methods is called the first time. DEFAULT void Update() Update is called every frame, if the MonoBehaviour is enabled. void LateUpdate() LateUpdate is called every frame, if the Behaviour is enabled. void FixedUpdate() This function is called every fixed framerate frame, if the MonoBehaviour is enabled. void OnGUI() OnGUI is called for rendering and handling GUI events. void OnEnable() This function is called when the object becomes enabled and active. void OnDisable() This function is called when the behaviour becomes disabled () or inactive. void OnDestroy() This function is called when the MonoBehaviour will be destroyed. void Reset() Reset to default values. HEADER Physics void OnTriggerEnter(Collider other) OnTriggerEnter is called when the Collider other enters the trigger. void OnTriggerExit(Collider other) OnTriggerExit is called when the Collider other has stopped touching the trigger. void OnTriggerStay(Collider other) OnTriggerStay is called once per frame for every Collider other that is touching the trigger. void OnCollisionEnter(Collision collision) OnCollisionEnter is called when this collider/rigidbody has begun touching another rigidbody/collider. void OnCollisionExit(Collision collisionInfo) OnCollisionExit is called when this collider/rigidbody has stopped touching another rigidbody/collider. void OnCollisionStay(Collision collisionInfo) OnCollisionStay is called once per frame for every collider/rigidbody that is touching rigidbody/collider. void OnControllerColliderHit(ControllerColliderHit hit) OnControllerColliderHit is called when the controller hits a collider while performing a Move. void OnJointBreak(float breakForce) Called when a joint attached to the same game object broke. void OnParticleCollision(GameObject other) OnParticleCollision is called when a particle hits a collider. HEADER Mouse void OnMouseEnter() OnMouseEnter is called when the mouse entered the GUIElement or Collider. void OnMouseOver() OnMouseOver is called every frame while the mouse is over the GUIElement or Collider. void OnMouseExit() OnMouseExit is called when the mouse is not any longer over the GUIElement or Collider. void OnMouseDown() OnMouseDown is called when the user has pressed the mouse button while over the GUIElement or Collider. void OnMouseUp() OnMouseUp is called when the user has released the mouse button. void OnMouseUpAsButton() OnMouseUpAsButton is only called when the mouse is released over the same GUIElement or Collider as it was pressed. void OnMouseDrag() OnMouseDrag is called when the user has clicked on a GUIElement or Collider and is still holding down the mouse. HEADER Playback void OnLevelWasLoaded(int level) This function is called after a new level was loaded. void OnApplicationFocus(bool focus) Sent to all game objects when the player gets or looses focus. void OnApplicationPause(bool pause) Sent to all game objects when the player pauses. void OnApplicationQuit() Sent to all game objects before the application is quit. HEADER Rendering void OnBecameVisible() OnBecameVisible is called when the renderer became visible by any camera. void OnBecameInvisible() OnBecameInvisible is called when the renderer is no longer visible by any camera. void OnPreCull() OnPreCull is called before a camera culls the scene. void OnPreRender() OnPreRender is called before a camera starts rendering the scene. void OnPostRender() OnPostRender is called after a camera finished rendering the scene. void OnRenderObject() OnRenderObject is called after camera has rendered the scene. void OnWillRenderObject() OnWillRenderObject is called once for each camera if the object is visible. void OnRenderImage(RenderTexture source, RenderTexture destination) OnRenderImage is called after all rendering is complete to render image HEADER Gizmos void OnDrawGizmosSelected() Implement this OnDrawGizmosSelected if you want to draw gizmos only if the object is selected. void OnDrawGizmos() Implement this OnDrawGizmos if you want to draw gizmos that are also pickable and always drawn. HEADER Network void OnPlayerConnected(NetworkPlayer player) Called on the server whenever a new player has successfully connected. void OnServerInitialized() Called on the server whenever a Network.InitializeServer was invoked and has completed. void OnConnectedToServer() Called on the client when you have successfully connected to a server. void OnPlayerDisconnected(NetworkPlayer player) Called on the server whenever a player disconnected from the server. void OnDisconnectedFromServer(NetworkDisconnection info) Called on the client when the connection was lost or you disconnected from the server. void OnFailedToConnect(NetworkConnectionError error) Called on the client when a connection attempt fails for some reason. void OnFailedToConnectToMasterServer(NetworkConnectionError info) Called on clients or servers when there is a problem connecting to the MasterServer. void OnMasterServerEvent(MasterServerEvent msEvent) Called on clients or servers when reporting events from the MasterServer. void OnNetworkInstantiate(NetworkMessageInfo info) Called on objects which have been network instantiated with Network.Instantiate void OnSerializeNetworkView(BitStream stream, NetworkMessageInfo info) Used to customize synchronization of variables in a script watched by a network view.
自訂功能
修改後的外掛程式:連結:https://pan.baidu.com/s/1oa8r...密碼:6zln
修改或增加了以下功能:
1.修復了"UnityEditorInternal.InternalEditorUtility"的錯誤。
2.新增模板MyMono(拷貝C#的MonoBehaviour模板)。
3.預設選擇自訂模板MyMono。
4.增加了目前建立日期。
5.可以刪除註解(以前刪除註解還會有//)。
6.增加了對存取修飾符的支援。
7.重新排序API。
8.打包版本Unity5.3.4。
相關文章:
相關影片:
以上是Unity實作腳本外掛程式[Script Create Dialog]圖文詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

使用 C# 的 Active Directory 指南。在這裡,我們討論 Active Directory 在 C# 中的介紹和工作原理以及語法和範例。

多線程和異步的區別在於,多線程同時執行多個線程,而異步在不阻塞當前線程的情況下執行操作。多線程用於計算密集型任務,而異步用於用戶交互操作。多線程的優勢是提高計算性能,異步的優勢是不阻塞 UI 線程。選擇多線程還是異步取決於任務性質:計算密集型任務使用多線程,與外部資源交互且需要保持 UI 響應的任務使用異步。
