原创 Unity個人優化總結

一、程序方面    01、務必刪除腳本中爲空或不需要的默認方法;    02、只在一個腳本中使用OnGUI方法;    03、避免在OnGUI中對變量、方法進行更新、賦值,輸出變量建議在Update內;    04、同一腳本中頻

原创 Unity UGUI事件系統

Unity3D的uGUI系統的將UI可能觸發的事件分爲12個類型,即EventTriggerType枚舉的12個值。如下圖所示:     先以PointerClick爲例。這個是用於某點點擊事件。其他事件都可以根據相同的辦法調用。

原创 Unity關於Sprite Packer的用法

之前有人留言說想我介紹一下sprite packer的用法。那麼我也順便的介紹一下吧。 我們用來做sprite 的圖片,通常會留有很多空白的地方,我們在畫完了sprite之後,這些地方很可能就沒有什麼作用了。如果想避免這些資源上的浪費,

原创 C# 結構體類型和類類型

             當我們需要定義一些需要定義一些類型的時候,需要用到一些字段和屬性的集合,有人會用類類型。也有人會用結構體類型。             結構和類的區別:   1、結構是值類型,它在棧中分配空間;而類是引用類型,它

原创 Unity比較兩個向量的長度

向量的長度是用勾股定理計算出來,計算機計算兩次方和開根的運算量比加減法要費時的多。所以如果是想比較兩個向量的長度,用sqrMagnitude可以快出很多。using UnityEngine; using System.Collection

原创 Unity 紋理格式

[Desktop] RGB Compressed DXT1 壓縮的RGB紋理。這是最常見的漫反射紋理格式。 4位/像素(32 KB 256x256) RGBA Compressed DXT5 壓縮的RGBA紋理。這是漫反射和高光

原创 Unity之關於代碼--數據結構

1、如果你需要高效的隨即存取,而不在乎插入和刪除的效率,使用vector 2、如果你需要大量的插入和刪除,而不關心隨即存取,則應使用list 3、如果你需要隨即存取,而且關心兩端數據的插入和刪除,則應使用deque。 4、如果你要存儲

原创 Unity遊戲開發使用Assetbundle加載場景實戰

之前有一篇文章中我們相惜討論了Assetbundle的原理,如果對原理還不太瞭解的朋友可以看這一篇文章:Unity遊戲開發使用Assetbundle加載場景的原理 本篇文章我們將說說assetbundle是如何實現的。 1.創建Ass

原创 關於Invoke的使用

在多線程編程中,我們經常要在工作線程中去更新界面顯示,而在多線程中直接調用界面控件的方法是錯誤的做法,Invoke 和 BeginInvoke 就是爲了解決這個問題而出現的,使你在多線程中安全的更新界面顯示。 正確的做法是將工作線程中涉

原创 Unity之講Texture圖片轉換成Sprite格式

由於Image和Button的圖片要求是Sprite類型的,當有大量圖片時,一個一個的操作不方便,所以考慮動態的將jpg或png圖片進行轉換格式。 Sprite sprite = Sprite.Create(tex, new Rect(0

原创 Unity寫代碼日常(六)

最近注意到了一個事情,有些時候,我們可能需要判斷一些不一定等於0.但是又要接近0的情況。就比如,我們做一個人物移動,2D情況下。目的地有個牆,我們移動過去。移動的距離即使特小也是有距離的,可能在貼近目的地的時候,發生某些我們不想要的問題。

原创 關於認證Steamworks注意事項。

因爲現在steam已經把綠光去掉了。換成了steam Dirct。所以規則變了一些。具體的詳細流程我就不寫了,記不住。因爲我已經註冊過了。除非再申請一個賬號,再走一次流程。最主要的是發一下注意事項。 1.認證steamworks的時候,填

原创 內存存儲以及分配方式的區別問題

內存分配方式及其區別 1) 從靜態存儲區域分配。內存在程序編譯的時候就已經分配好,這塊內存在程序的整個運行期間都存在。例如全局變量,static 變量。 2) 在棧上創建。在執行函數時,函數內局部變量的存儲單元都可以在棧上創建,函數

原创 數組與指針的區別

數組要麼在靜態存儲區被創建(如全局數組),要麼在棧上被創建。指針可以隨時指向任意類型的內存塊。 (1)修改內容上的差別 char a[] = “hello”; a[0] = ‘X’; char *p = “world”; //