简单的3D游戏引擎
一个轻量级、模块化、易于扩展的3D游戏引擎原型,既可作为学习参考,也能作为小型3D游戏项目的开发起点。基于C++和openGL,以及少量的第三方库,比如ImGui,Assimp,json,stb...等。
项目地址:点我
主要实现模块
- 资源管理模块
- 相机,着色器,3d模型加载模块
- 简单碰撞检测模块
- 渲染模块
- 音频模块
- 光照系统和阴影系统
- 数据驱动关卡管理模块
- 地图编辑器

- 悬浮菜单

- 游戏内调试终端

基本性能优化算法
- 视锥体剔除
- 四叉树空间划分
- 可视距离渲染剔除
- 批处理
- GPU顶点缓存优化 + 物理顺序重排
- LOD