游戏一般规模都很大,保持结构清晰是首要的问题。我们知道大型系统一般都可以分为MVC三部分,实践证明这种结构行之有效。本人将之应用在游戏设计中总结出若干经验:
(1)将建模和交互两部分分开,建模阶段采用工厂模式,利用资源管理器统一创建、销毁和调度资源;
(2)交互包括显示和操纵两部分,其实可以统一由图形界面实现;
(3)逻辑使用脚本加解释器的方式实现,这样可以在游戏之外修改游戏;
(4)将场景作为游戏的基本单位,将物理系统和效果系统独立出来,场景可以透明使用和替换它们;
(5)针对应用自定义消息,开辟若干线程,使用线程消息机制来进行消息响应;
(6)注意类的粒度的问题,类之间的交互只好保持在同一级,这样有利于扩展和移植。
游戏设计最理想的情况就是美工做资源,设计师写脚本,然后运行一下可复用的引擎就把游戏搞出来了。虽然难度不小,但是可以冲着这个目标努力,最最关键的还是要有合理的体系结构。