勵志

勵志人生知識庫

unity static的作用

Unity中,使用[static](){"sa":"re_dqa_zy","icon":1}關鍵字可以創建靜態成員,其作用是使成員不依賴於任何對象的實例而存在。具體來說,當一個物體在Unity中被標記為static後,它確保這個物體在遊戲場景中是靜態的、不會移動的物體。這樣做的好處包括:

最佳化效率:因為static物體在腳本載入時開始渲染,不隨每一幀的update進行更新,這減少了drawcall,從而使遊戲更加流暢。

特殊處理:Unity對static物體進行一些特殊的處理,如在rendering最佳化時會根據是否為static來進行不同的最佳化,在lightmaping(光照渲染烘焙)時,會根據是否是static來進行光照等處理。

此外,static還有以下作用:

隱藏變數和函式:在編程時,如果某個變數或函式被聲明為static,那麼它只能在聲明它的檔案內部訪問,不能被其他檔案引用。

保持變數內容的持久化:靜態變數會在程式剛開始運行的時候完成初始化,並且是唯一的一次。這意味著靜態變數的值在程式運行期間不會改變,直到程式結束。

默認變數的初始化為零:靜態變數的默認值通常為零。

總的來說,Unity中的static關鍵字不僅用於創建獨立於對象實例存在的靜態成員,還用於標記場景中不會移動的物體,以便進行最佳化處理,提高遊戲性能。