OpenGL C++ 图形引擎
Cell - 图形引擎 ===== 欢迎来到 Cell 开源 OpenGL 图形引擎的开发仓库,该引擎旨在作为一个教育性仓库,用于学习如何构建和组织一个大型图形引擎。Cell 的主要目标是构建一个既易于使用又易于阅读的引擎。Cell 还旨在提供既灵活又可适当维护的代码。请注意,本项目尚未完成,因此代码可能仍然模糊,还没有适当的构建文件。
引擎将在源代码中进行大量注释和文档说明,以激励新的图形程序员深入了解其内部工作原理,而不会感到过于压力。
功能列表(完整:基本功能):
线性代数:n 维向量、nxn 维矩阵、变换、实用函数。
余弦函数:单位圆实用函数、弧度/度转换。
实用函数:lerp、step、smoothstep、smootherstep、clamp 等。
配置和启用调试和日志工具。 1. 带有自定义预处理器(定义、包含)的着色器对象: 1. 包含其他着色器文件。 2. 分析活动顶点属性和统一变量,检索位置并存储在着色器对象中。 3. 根据着色器轻松配置状态。 4. 支持多个构建路径。 2. 材料管线;在材料中配置渲染状态,以及使用的着色器、统一配置和采样器。 1. 允许轻松访问材料和存储;包括一组默认材料(默认材料、玻璃材料等)。 3. 定义网格对象和包含的模型类。 1. 定义一组基本形状网格生成;平面、立方体、圆盘、球体、圆柱、环(甜甜圈)。 2. 使用 Assimp 加载艺术家定义的 3D 模型。 - 注:Assimp 以静态库的形式构建,与 Cell 进行静态链接/合并。我还构建了静态 zlib 库,以便与 Assimp 正常工作(均为 32 位)。 5. 灵活
暂无开放 Issues,或尚未同步最近议题。