遊戲引擎 GUI的設計與實現 序

2021-07-01 18:10:02 字數 848 閱讀 4755

在實現了幾個完整gui系統後,以前覺得很難的東西一下變得開朗了。比如以前想在ftk裡實現乙個**混排的控制項和樹形控制項,感覺複雜度超出我的能力範圍了,所以ftk沒有這樣的控制項。而在cantk裡實現乙個**混排的控制項只花了兩天時間,在wtk實現樹形控制項只花了一天時間。寫程式沒有什麼技巧,只是熟能生巧罷了,多寫多練,新的思路自然就出來了。

為什麼要寫《遊戲引擎/gui的設計與實現》呢:

gui的設計與實現很有意思。以前我花了一些時間去研究os核心,虛擬機器和編譯器,真正自己嘗試去做乙個核心,虛擬機器和編譯器的時候,卻讓我倍感挫折,在明白了自己只是個平庸的程式設計師後,放棄了對它們的研究。相反,gui的實現不太難也不太簡單,即使你是初學者,去實現gui裡的乙個控制項也不是難事。即使工作多年的高手,要去實現乙個完整的gui,仍然有很大挑戰。所以gui的開發是老少皆宜的活動:)我在這上面花了好幾年時間,它給我帶來的樂趣很多,總是有把自己經驗和想法寫出來分享的衝動:)

在寫作的過程中,對cantk的**進行重構,並為cantk-native的開發做些準備。開發cantk的時候正是我剛剛開始學js的時候,雖然後來多次重構,但是裡面還是有些**很醜陋,希望在寫作的過程中改掉這部分醜陋的**。

雖然做過幾個gui,我在gui方面也只是剛剛入門,還有很多東西需要學習。我希望在寫《gui設計與實現》的過程中,和大家一起學習和交流,能更進一層學習。

有朋友可能會問,明明是寫《遊戲引擎/gui的設計與實現》,而前面只說了gui,完全沒有提遊戲引擎呢。其實cantk已經不只是乙個gui系統了,它整合了物理引擎,聲音處理,骨骼動畫和粒子系統,是乙個完整的2d遊戲引擎。雖然有些**是第三方開源**,我也花了一些時間去研究,其中不少東西做得非常棒,我希望能把自己的學習心得寫出來。所以才把題目命名為《遊戲引擎/gui的設計與實現》。

3D遊戲引擎設計與實現(3)

經過幾天編寫,3d遊戲引擎的架構 大體架構已經搭好。下面來每個模組說明 l 引導程式 engine mm3dmain.exe l dll管理模組 engine bin mm3drun.dll l 引擎管理模組 engine bin mm3dengine.dll l ui模組 engine bin m...

3D遊戲引擎設計與實現(11)

3d遊戲引擎設計與實現 11 已經到開始考慮怎麼樣去渲染場境,因為遊戲裡主要部份就是由場境組成,然後再新增各種人物在裡面,因此就要思考怎麼樣儲存場境,3d引擎怎麼樣載入它。現在為了用到cs的資源,當然要用它的地 件,才可以更加方面。到目前,就決定使用bsp的地 件格式,這種檔案格式比較複雜,儲存的資...

3D遊戲引擎設計與實現(12)

3d遊戲引擎設計與實現 12 遊戲的地 件格式是非常重要的一種格式,設計得好與壞,都關係到讀寫和渲染速度。如果儲存的資訊過少,就會導致渲染時花費大量的時間在計算。就目前主流的3d遊戲,都會用這種思想 就是能預先計算的東西,就要先計好,不是在遊戲中實現計算。比如用bsp樹來儲存衝突檢測,儲存可見性等,...