Whisk3D Core 是一个跨平台的 3D 引擎:一个用 C++ 编写的库,用于创建轻量级的 2D/3D 游戏和应用程序,既能在现代系统上运行,也能在复古系统上运行。它提供了一套统一的图形 API,屏蔽了各种渲染 API 和操作系统之间的差异:编写一次,即可在 Windows、Linux、Android、Symbian 和浏览器(WebGL)上运行。
它的设计优先考虑简洁性、性能和可移植性,灵感来自 RenderWare 这样的经典引擎。它非常适合复古美学或低配置需求的项目。Core 是 Editor 的基础,但你也可以单独使用它,作为渲染框架用在你自己的项目中。
它现在能做什么
- 两个图形后端:固定管线(桌面版 OpenGL 以及 Android/Symbian 上的 OpenGL ES 1.1)和着色器(OpenGL ES 2.0 / WebGL)。在编译时选择;高层代码保持不变。
- 看不到 OpenGL 的痕迹:所有绘制都通过
w3dEngine完成(状态、矩阵、材质、灯光、雾、混合……),从不直接调用 OpenGL。 - 纹理:从文件加载(PC/Android 上用 stb,Symbian 上用 ICL),支持线性或 nearest 过滤。
- 灯光:方向光、点光源和聚光灯,每个场景最多 8 个,带有 ambient/diffuse/specular。
- 相机、场景和几何体:带有逐顶点法线/UV/颜色的网格,具有层级结构和动画的物体图。
- 自研数学库(向量、4x4 矩阵、四元数)以及跨平台的日志系统。
采用 MIT 许可证:你可以将它用于自由或商业项目,也可以 fork 并修改它。
开发中:Core 仍在持续清理和简化(正从 Editor 中分离出来),今后还会加入骨骼、更多复古后端以及文档。