原创 Android 自定義控件實現分散對齊TextView

效果圖: 佈局文件如下: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/a

原创 Unity Editor 代碼中創建Prefab時無法關聯Material(Material丟失)問題

原實現如下: private void createOne(string path) { StaticSkin skin = Utils.ReadSkins(path); Mesh mesh =

原创 UGUI不規則相應區域的按鈕

準備條件: 圖片不需要響應事件的區域是透明的。1、在圖片導入時,選擇Texture Type爲“Advanced”,然後勾選“Read/Write Enabled”選項 2、添加以下腳本,並添加到當前物體上 using UnityEng

原创 關於Unity3D中RenderTexture毛邊的解決。

搭建UI時,用到RenderTexture,但是發現畫面非常不精細,毛邊十分嚴重,經研究發現,RenderTexture新建時(Unity 5.3.4),默認大小512 x 512,過分的拉伸會導致畫面模糊。 解決方法:project視圖

原创 NGUI 圖集解包的實現

最近寫Demo的時候從網上找資源,發現了一個項目源碼,發現裏面的UI是用NGUI實現,圖片已經打包成了圖集,而原先的散圖已經被刪除了(確實在正常的項目中這些散圖被打包成圖集之後就沒用了,留在項目中白白增大包體)但是我希望拿到這些散圖,在我

原创 Unity腳本生命週期, Unity腳本函數執行流程與順序

Unity腳本超詳細執行流程,

原创 BUG調試技巧

寫代碼就難免有BUG,很多時候,BUG令人無從下手,似乎很鬼畜,似乎不符合語言、編譯器甚至是計算機的運行機理。但是往往最後我們發現,越是難以置信的BUG來源於更低級的錯誤與失誤。 (一)、更多時候,調BUG考驗我們的並非對於編程技術、對運

原创 Unity UGUI 代碼改變遮擋層級

UGUI在Screen Space - Overlay渲染模式下,由於不依賴攝像機渲染,使得其無法通過修改Z軸的方式修改物體間的層級關係,以下是解決方案: 我創建了一個空的工程,然後創建了一個Image,然後複製成了一樣大小的四份 爲

原创 Unity協程(Coroutine)使用時需要注意的地方,協程異常中斷,異常停止執行的一種可能性

根據個人使用經驗,總結出來只有一點需要着重注意的地方, 那就是 協程運行時,所在的腳本和這個腳本所在的物體都必須是激活的,也就是說,它的父物體,父物體的父物體...都要是激活的。 在使用協程時,曾遇到以下幾點問題: 1、開啓協程時,確

原创 關於Direct3D繪製的頂點順序

首先D3D有三種基本圖元,外加三種繪製方式,有六種組合,默認頂點順序是順時針繞序,雖然如此,但是在實際繪製時,有一些變通之處,使人迷惑。 一、列,包括點列,線列和三角形列: 這個不需要多說,因爲互相之間沒有共享元素(雖然可能有重疊現象,但

原创 關於C++調用C#語言DLL(類庫)

原文鏈接 關於這個話題,網上有很多帖子和資料寫的都不錯,比如上面說的原文,但是個人根據實際操作,有幾點需要補充一下,在文章末尾 把C#編譯成DLL或者Axtive控件,再由C調用!比如使用C++調用C#的DLL。 SwfDotNe

原创 Unity NGUI3.0.5 FontMaker 使用注意事項w

以前一直沒接觸過NGUI,工四老項目使用的NGUI,用到BitMap字體的時候,由於網上資料中使用的NGUI版本不匹配,走了很多彎路,現根據自己嘗試得出的結論記錄如下: 1、BMFont方面設置: 使用方法在此不做贅述,只描述一些踩到的

原创 Unity 禁用動畫位移

今天在自己做demo的時候,發現網上找到的動畫資源是自帶位移的,就是說只要播放動畫,角色就會移動,但是我想自己控制角色移動,便於控制移動速度和動畫混合。 解決方法是,在Animator組件的屬性裏面有一個叫做Apply Root Moti

原创 關於UGUI中RectTransform組件的獲取問題

之前一直在抱怨UGUI的RectTransform需要格外獲取,今天偶然想到既然RectTransform是繼承自Transform,那麼可不可以直接進行類型轉換得到呢?? 經過測試發現,使用transform as RectTransf

原创 關於C#try catch異常捕獲語句一點需要注意的地方

在調用某函數時,如果使用了try catch語句捕獲該函數產生的異常,而如果這個函數內調用了其它函數,其它函數又掉了另外的函數,如果這些被調用的函數中任意一個拋出了異常,而異常所在的代碼塊沒有異常捕獲的操作,於是這個異常會被最外層的try