之前在群裡看到有人提到profiler memory plus這個外掛程式,相當不錯~在原來profiler功能上擴充套件出了diff功能 非常實用。
然後我就在想這個是怎麼做的呢,某天在折騰shader keyword的時候突然靈光一閃,莫非是private api搞的? 動手試了下果然可行。
具體解釋一下:unity引擎底層是用c++寫的,但是外圍邏輯絕大部分都是c#實現,包括editor本身。平常我們常見的unityengine.dll和unityeditor.dll裡就有大量的寶藏值得挖掘,網上已經有提供了乙份unitydecompiled(當然也可以自己用ilspy等工具處理)。我個人覺得可以分為兩類:
C 反射 掀起Unity Editor面紗
感覺非常棒的spy手法,可以拿到更強大的api使用!之前在群裡看到有人提到profiler memory plus這個外掛程式,相當不錯 在原來profiler功能上擴充套件出了diff功能 非常實用。然後我就在想這個是怎麼做的呢,某天在折騰shader keyword的時候突然靈光一閃,莫非是pr...
c so 反射 C 實現反射機制
net下的很多技術都是基於反射機制來實現的,反射讓.net平台下的語言變得得心應手。最簡單的,比如列舉型別,我們我可以很容易的獲得乙個列舉變數的數值以及其名稱字串。可是,在c 中,列舉變數本質上和乙個整形變數沒有區別,我們很難獲取乙個列舉變數的名稱字串。其實在c 中,我們可以通過巨集來實現類似反射的...
c so 反射 c 實現反射機制
下午接了個阿里 面試,當時剛剛睡醒,感覺有點懵。大腦莫名當機狀態,很多問題沒有表述清楚,有乙個關於 c 如何實現反射機制的問題,感覺蠻有意思,當時雖然回答了用函式指標和工廠模式,但是表述並不當,細節也沒有想清楚。晚上抽空簡單實現了一發 file name reflector.cpp author x...