Flame Steel引擎游戏工具包的架构

今天我会讲一下游戏开发工具包Flame Steel Engine Game Toolkit的架构。
Flame Steel Engine游戏工具包允许您基于Flame Steel Engine创建游戏:
flamesteelgametoolkitschematics

火焰钢发动机的所有类别均以前缀FSE开头(Flame Steel >E 引擎)和FSEGTFlameSteelE引擎G梅Ttoolkit) 用于工具包。
游戏场景、对象、按钮都是FSEObject的子类,并且应该位于FSEGTGameData类内。每个FSEObject必须实现FSESerialize接口,这将允许您保存/加载游戏数据并提供保存机制。
FSEController 类与 FSEObject 类的对象一起使用。该工具包有一个基本的游戏场景控制器类 – FSEGTGameSceneController,您可以继承该类来实现您的游戏逻辑。
IOSystemFSEGTIOSystem接口的对象,该接口包含FSEGTRendererFSEGTInputControllerFSEGTUIRenderer强>。FSEGTIOSystem 必须实现一个渲染器,从键盘、操纵杆(输入设备)接收数据并提供界面元素的渲染以供访问该平台的输入/输出系统
目前,渲染器已经实现,一个基于 SDL 库的键盘控制器,可以在 FSEGTIOSDLSystem 类。

Flame Steel Engine Raycaster Demo
Flame Steel Engine Raycaster Demo

未来计划创建一个基于OpenGL的IOSystem,该类将被称为FSEGTIOGLSystem 。如果你想创建一个基于任何平台的IOSystem,那么你需要使用FSEGTIOSystem接口并实现FSEGTRenderer渲染器,FSEGTInputController平台。

Flame Steel引擎、工具包、游戏源代码:
https://github.com/demensdeum/FlameSteelCallOfTheDeathMask