优化……优化……
以下皆為最近才了解到的常識問題:
1、渲染場景的時候,不應該每個邏輯對象都擁有自己的mesh,而是應該所有相同的對象共用一個mesh。紋理也是如此,應該若干對象共用一個紋理。對于各種對象內部的工具性字段都應該共用。
2、遞歸是繡花枕頭。堅決不用遞歸。
3、要用事件來觸發,不要用輪詢。
為了方便擴充和什么什么,要把引擎拆開。
內核為由用戶啟動的Client.EXE,它負責管理工具性字段和一切邏輯對象,但是所有邏輯對象的表現和行為它都不管。除此以外它監視輸入設備,將監視結果傳給Control以獲得翻譯后的邏輯對象行為指令,并將這些指令發給Server.DLL。
Control.DLL,這個模塊接受Client傳來的輸入設備狀態,并返回翻譯后的行為指令。
Server.DLL,這個模塊負責管理邏輯對象的互動。它接收Client里對象的行為,并通過Logic計算后返回行為后果。它應該可以連接多個Client。
Logic.DLL,這個模塊包含游戲的邏輯,比如所有的計算公式。必要的時候它調用AI來返回計算結果。
AI.DLL,包括所有的AI,公用的工具性AI和用來對抗的戰略AI。
ViewStyle.DLL,這個模塊負責所有的表現工作,包括繪制和發聲。但是它并不保存Device實例。所有表現原料都從Client接收。
合理……么?
轉載于:https://www.cnblogs.com/CloudAge/archive/2006/05/20/405206.html
總結
- 上一篇: [导入]ubuntu全面介绍 与 ubu
- 下一篇: SQL2000输入的值与数据类型不一致,