可謂可有可無
原本以三賢人(Video Manager, Input Manager, Sound Manager)的角度來作基礎,再以大量的Wrapper來建造我的Game Engine。看來天衣無縫。心想,日後我要創造新的電腦遊戲時,就不用去直接接觸Directx API,可謂一勞永逸。
但係對一個沒有遊戲開發經驗的人來講,「想的」和「做的」始終都係有一點出入。三賢人和Wrapper的想法基本是好的。但係,在配合HLSL的時候,我發現Game Engine不景是要多一點Generic。結果,我還是須要在Game Engine上開很多洞,為日後的開發人員提供一個機會去直接接觸Directx API。這樣做後,我原先的設計看上去就有點笨,可謂可有可無。
在新的設計中,三賢人會被淡化,或被視為提供簡化程式的Classes。換來係把Directx Devices看作針或引線放在Game Engine Main Class中。其他的Objects,在不儲蓄這些Devices的前提下借用作林林總總的工作。
至今可能留下的Classes有︰
- IRenderable
- G3DCamera
- G3DIndexBuffer
- G3DVertexBuffer
- G3DTexture
- G3DStaticMesh
- G3DAnimMesh
- Video Manager
- Input Manager
- Sound Manager
- G3DGameEngine

