游戏引擎的三种架构

游戏引擎的三种架构

引擎架构是游戏引擎的骨架。它的任务是将游戏引擎的图像渲染、输入处理、音频播放、资源管理等基本功能组合成一个有机的整体。更成熟的引擎架构方法包括

(1)结构化。

结构化架构采用的方法是将游戏引擎内部的模块以结构化的形式组合起来,并以API的形式提供接口。这种架构模式的优点是效率高,界面简洁明了,适合一些对速度要求比较高的引擎,缺点是模块之间的耦合度高,不易修改。

(2)基类根表单模式。

基类根窗体框架是基于几个基本抽象服务提供的接口类,按照接口与实现分离的原则实现引擎。提供的实现类是在引擎内部创建的,接口是供用户使用的。这种架构模式的优点是结构清晰,实现灵活,可以适应比较大的变化,适合一些有跨平台需求的大型引擎,但是架构依赖于基本的继承关系抽象类3D素材,导致内部类继承了无用的功能,变得虚无缥缈,接口的通用性使得实现效率低下游戏引擎结构,导致整体效率低。

(3)组件表单框架。

组件形式框架是将具有不同功能的模块组成独立的系统。模块内部可以使用任何框架方法,只需要提供相应的接口即可。引擎以模块管理器为核心,支持以插件的形式添加组件的方式。新增的功能组件可以以插件的形式插入到系统中。这种结构非常灵活游戏引擎结构,模块内的效率也比较高,所以一些大型商业游戏引擎采用这种方式,但是这种方式设计难度大,实现起来也比较复杂,需要大量的开发经验。