Overload模块化 3D 游戏引擎
Overload 是一个 3D 游戏引擎,受行业标准的启发,由 Benjamin VIRANIN、Max BRUN 和 Adrien GIVRY 发起。Overload 现在是一个社区项目,对任何贡献开放。
Overload 的支柱是:
- 简单
- 文档
- 高质量的现代 C++ 代码
模块
Overload 分为 12 个模块(10 个 DLL 和 2 个可执行文件):
Overload SDK
Overload SDK 是引擎的核心。它是应用程序(OvGame
和OvEditor
)正在使用的一组库。我们设计这些库时考虑了可重用性。它们非常模块化,易于从游戏引擎上下文中提取。
-
OvAnalytics
: 代码和硬件分析 -
OvDebug
:记录,断言 -
OvTools
: 序列化、ini 文件、事件、时间 -
OvMaths
: 向量、矩阵、四元数、变换 -
OvAudio
: Wraps irrKlang -
OvPhysics
: Wraps Bullet3 -
OvRendering
: 使用 OpenGL 的渲染引擎 -
OvWindowing
: GLFW + Windows API 包装器 -
OvUI
:imGui 包裹在一个基于事件和基于组件的 UI 系统中 -
OvCore
: Mediator、资源管理、脚本、基于组件的场景系统
Overload 应用程序
-
OvGame
:使用 OvCore、资产相关的通用可执行文件,适用于任何使用 Overload 构建的游戏 -
OvEditor
:使用 OvCore,向最终用户展示游戏开发(从创建到构建)
目标
- 了解如何构建游戏引擎
- 设计一个终端用户的应用思维
- 使游戏引擎尽可能简单
- 生成高质量的现代代码
- 使用我们的引擎创建游戏
- 处理一个长期项目
- 为开发人员和最终用户开发文档
特点
- 游戏编辑器
- Lua 脚本
- 基于物理的渲染 (PBR)
- 自定义着色器支持
- 视窗游戏建设
- 分析工具(编辑器和构建)
- 材质编辑器
- 3D音响系统
- 刚体物理学
依赖关系
- 带有 GLEW 的 OpenGL(图形 API)
- GLFW(窗口和输入)
- Assimp(3D 模型加载器)
- Bullet3(物理)
- irrKlang (音频)
- Tinyxml2(XML 序列化程序)
- SOL2(Lua 粘合剂)
- imGui (GUI)
要求
- 内存:100MB
- 操作系统:Windows 7
- GPU:支持 OpenGL 4.3 的显卡
评论