原创 邊緣檢測效果動畫Shader實現

AR項目中在掃描識別圖時需要加上掃描識別效果,加上邊緣識別後看起來效果更好,所以就需要這樣一個邊緣檢測效果的動畫Shader。 Shader "Unlit/AnimateEdgeShader" { Properties { _Ma

原创 List.Sort()小技巧

List<UIPanel> list = parentGo.GetComponents<UIpanel>(); list.Sort( delegate(UIPanel a, UIPanel b) {  return a.depth.Com

原创 Unity3D ScrollView滑動優化

unity中 scrollview在遊戲任務,物品列表中是很常見的使用,但是在使用過程中會出現很多問題,當有1000條item同時一起加載進場景中會瞬間造成unity死機。這裏對scrollview做了一個簡單的優化,會根據需要動態的平滑

原创 unity3d檢測鼠標滑動停止事件

前幾天項目中需要一個檢測鼠標滑動停止的事件,發現Unity中沒有,只有拖動停止等事件,所以在這裏上傳一個,如果有問題希望大神能指教一下。 private Action onScrollFinish; private bool

原创 Unity中JsonUtility對List和Dictionary的序列化

Unity5.3從開始追加的JsonUtility,但是對於List 和Dictionary不能被直接序列化存儲 例如:  數據模型 using UnityEngine; using System; using System.Coll

原创 Unity下安卓,Ios,PC平臺下的路徑讀取

Application.Platfrom==RuntimePlatfrom.Android  判斷運行環境 StreamingAssets目錄下再運行時只能讀取不能寫入 安卓讀:filePath = Application.stre

原创 對象池與池管理

Unity編程標準導引-3.4 Unity中的對象池   本節通過一個簡單的射擊子彈的示例來介紹Transform的用法。子彈射擊本身很容易製作,只要製作一個子彈Prefab,再做一個發生器,使用發生器控制按頻率產生子彈,即克隆

原创 Unity3D換裝系統原理

在unity中實現換裝的方式主要有三種: 1.換材質或換貼圖 2.顯示或隱藏模型 3.合併網格 第二種主要用於換裝備,但當涉及到“本質”上的換裝時(例如豬腳是普通人,發動技能後左手變成機械手),就行不通了。因此,有必要學習一下合

原创 粒子顯示在UI前方

參考鏈接:http://www.xuanyusong.com/archives/3278 Canvas的Render Mode的三種模式比較:http://www.manew.com/thread-90759-1-1.html?_ds

原创 C#單例與繼承MonoBehaviour的單例

單例模式是我們最常用的一種設計模式。 主要優點: 1、提供了對唯一實例的受控訪問。 2、由於在系統內存中只存在一個對象,因此可以節約系統資源,對於一些需要頻繁創建和銷燬的對象單例模式無疑可以提高系統的性能。 3、允許可變數目的實

原创 WWW動態加載AssetBundle場景資源

IEnumerator LoadScene(string url) { WWW www = new WWW(url); yield return www; if (www.err

原创 多重血條效果

描述: 1.當受到傷害較小時,出現“殘血”效果 2.當受到傷害較大時,出現“流水”效果 血條由4部分組成 1.剩餘學條數 2.當前血條剩餘血量image 3.過度血條image 4.下一血條顯示顏色 image 注意:這裏的

原创 Unity 腳本之間的消息傳遞,事件管理

在遊戲中發生了一個事件,我們如何把這個時間通知給其他GameObject:比如遊戲中發生了爆炸,我們需要在一定範圍內的GameObject都感知到這一事件。有的時候,我們希望攝像機以外的物體不要接到我們這一事件的通知。遊戲中豐富多彩的世界

原创 當初的願望實現了嗎?

自己收藏的一篇好文,希望它能夠帶給大家,些許的觸動。         你今年二十五六歲,站在人生的十字路口,你除了一紙文憑什麼都沒有。你離鄉背井在異地讀了四年大學,在這個陌生的城市你依然找不到歸屬感。你還是搞不懂錯綜複雜的

原创 unity3d讀取圖片文件繪製在UIImage上

public void UpdateInfomation(string infomation){ Texture2D texture2d = new Texture2D(1, 1); texture2d.LoadImage(