分類:Unity、C#、VS2015 網絡
建立日期:2016-03-31 數據結構
用VS2015編輯C#腳本時,若是讓其「顯示全部文件」,就會看到VS2015解決方案資源管理器中項目的文件夾結構和Unity的Project下的文件夾結構徹底相同: 編輯器
這樣一來,你就能夠在VS2015中直接打開編輯不一樣的C# 腳本文件了,並且還能夠直接建立新的C# 腳本,而沒必要在Unity和VS2015間來回切換。 函數
一、與Unity的深度集成 工具
若是你仍然不得不一直在Unity編輯器和VS2015之間來回切換,則VS2015 Tools for Unity 就不是一個提高效率的工具了。之因此藉助VS2015 Tools for Unity,是由於能夠輕鬆地在無需離開VS2015的狀況下保持工做,這是它能提高開發效率的主要緣由。 調試
•VS2015中呈現的項目層次結構和在Unity編輯器中顯示的層次結構相同。 對象
•VS2015會自動未來自Unity控制檯的輸出顯示在VS2015的錯誤窗口內的右側。 blog
•調試遊戲時,無需切換回Unity,只需按F5。 繼承
不管是獨立運行仍是在Unity編輯器中運行,VS2015強大的調試器都會鏈接到你的Unity遊戲以調試C#腳本和DLL。 遊戲
• 斷點,包括條件斷點。
• 計算「監視」窗口中的複雜表達式。
• 檢查和修改變量和參數的值。
• 深化到複雜的對象和數據結構。
你甚至能夠當Unity遊戲在網絡上的另外一臺計算機上運行時對其進行調試。
二、MonoBehavior嚮導
在VS2015的.cs代碼編輯器中,將光標放置在你可能要插入方法的位置,而後鼠標右擊選擇【Implement MonoBehaviors】:
此時就會出現下面的選項:
選擇要重載的方法,單擊【肯定】按鈕,它就會自動生成對應的代碼。
當你須要重載不熟悉的方法時,MonoBehavior 嚮導尤爲有用。
三、可直接編輯Shader
Unity的 ShaderLab語言的語法着色可幫助你在着色器中的錯誤變成bug以前發現它們。你只需在VS2015中打開並編輯ShaderLab文件。
四、Unity 錯誤列表
鏈接到 Unity 實例時,能夠從 Visual Studio 內部的 Unity 控制檯查看消息。 這包括 Unity 中的錯誤和警告。 消息將顯示在 Visual Studio 的「錯誤列表」窗口中;Unity 中的錯誤消息將顯示在「錯誤」選項卡上,警告消息將顯示在「警告」選項卡,而其餘消息(好比經過使用 Debug.Log Unity API 發送的消息)將顯示在「消息」選項卡上。
爲了查看消息,必須正確配置 Unity 項目以支持腳本調試並導入適用於你的 Visual Studio 版本的 Visual Studio Tools for Unity 包,而且 Visual Studio 必須鏈接到 Unity。
若是不想在 Visual Studio 的「錯誤列表」窗口中看到 Unity 中的錯誤、警告和消息,則可在「配置」菜單中禁用它們。
在Unity中使用C#編寫腳本時須要注意如下規則:
一、變量的定義
在Unity中,C#腳本的變量不是用屬性來聲明,而是直接用public、protected、private來聲明該變量可訪問的範圍,格式爲:
訪問修飾符 變量類型 變量名;
例如:
public int x = 3;
private string s="abc";
其中,聲明爲public的變量會自動顯示在Unity編輯器的Inspector視圖中,並能夠在Inspector視圖中直接編輯該變量的值。
此規定僅限添加到遊戲對象的C# 腳本類,即從MonoBehauour類繼承的子類中定義的變量,其餘類沒有此限制。
二、腳本類必須是MonoBehauour類的子類
凡是須要添加到遊戲對象的C# 腳本類,都必須直接或間接地從MonoBehauour類繼承。對於在Unity編輯器中新建的C# 腳本,Unity會自動幫助開發者完成繼承的相關代碼。
不須要添加到遊戲對象的C#類沒有此限制。
三、腳本子類不要使用構造函數
對於腳本子類(從MonoBehauour類繼承的類),應該在Start()方法或者Awake()方法中處理初始化的工做,必定不要在MonoBehauour子類中用構造函數作初始化工做,這是由於Unity沒法肯定什麼時候調用該子類的構造函數。
不是MonoBehauour的子類沒有此限制。
四、腳本類名要和腳本文件名相同
對於從MonoBehauour類繼承的類,類名必定要與腳本文件名相同,不然添加腳本到遊戲對象時會提示錯誤。
不是MonoBehauour的子類沒有此限制。
五、靜態變量
建議不要在對象引用中使用靜態變量,以確保未使用的對象可以從內存中刪除。