2017年5月26日 星期五

Native Game Programming

用 Unity 做遊戲,C#寫遊戲程式,是工作上的必需。

用 C++ 寫手機遊戲程式,過程中有一種不同的樂趣與成就感。

所以我仍然抓著空餘時間套著 Android NDK 在手機上玩玩 Graphic,把以前半成品的 Engine 想辦法 Porting 到 Android 系統上玩。

對於要在 Visual Studio 上開發原生Android 程式,NVidia 的 Nsight Tegra for Visual Studio 是很好用的支援工具,當中的 Android Log Output 尤其好用。

android_log

即使是用 Unity 開發手機遊戲,這 Log Window 也幫助很大。

Android Logcat 輸出的訊息量很龐大,如果不能好好的過濾訊息,Debug 抓問題的時候,會幾乎不知從何下手。

Nsight Tegra 這套工具裡的 Log Output,給了還算完善的自訂過濾器功能,而且提供了 UI 來訂製過濾器。

所以我才會面對這樣的問題:

Visual Studio 今年改版出了 2017 版,但是 NVidia 遲遲不將 Nsight Tegra 支援 VS2017,以致我只能選擇繼續使用 VS2015或是,在 VS2017上用功能很差的Logcat。

最後我決定,在 VS2017上,自己開發個外掛,"山寨" Nsight Tegra 的 Log Output。

沒想到的是,我為了 Native Game Programming,還是繞了回來用 C#寫工具。

上面這句話才是本篇的重點。

這個 Extension 還沒完成,不過也還可以先給個 GitHub Link

Visual Studio Tool Window Extension for Android Logcat Output & Filter