粘土游戏引擎
开发者 | 龚敏敏 |
---|---|
编程语言 | C++,Python |
平台 | Microsoft Windows,Linux |
类型 | 游戏引擎 |
许可协议 | GPL |
网站 | http://www.klayge.org/ |
粘土游戏引擎(KlayGE)是一个开放源代码的,跨平台的,基于插件结构的游戏引擎。该引擎从2003年开始研发,设计目的是用最先进的技术武装引擎,使游戏的开发、测试、移植得到简化。
协议
KlayGE按照GPL 2.0协议发布。这意味着所有人都可以用它,而且可以访问到它全部的源代码。
技术特性
图形
- 支持DirectX 9.0-11.0,OpenGL 2.0-4.0,以及OpenGL ES 2.0
- 采用fxml作为可渲染物体的特效脚本,可以直接把美工生成的特效导出使用
- Python脚本可以在运行期动态解释,所以修改脚本以后不需要重新编译
- 可以通过高度图来建立地形场景
- 支持骨骼动画
- 硬件遮挡裁减
- 粒子系统
- 后处理技术
- 自适应硬件状态缓存和延迟更新机制
- 支持逐像素光照和渲染技术
- 基于距离场的字体系统,兼有矢量字体和点阵字体的优点
- 支持过程纹理
- 支持次表面散射,可用于渲染树叶、皮肤、玉器等半透明材质
- 支持PN Triangles技术,在运行期自动光滑低模
- 着色
- 光照
- 动态光照
- 全方向阴影贴图
音频
工具
- 法线图生成器,可以从高度图生成法线图
- 距离图生成器,可以从高度图或3D纹理生成距离图
- MeshML导出插件,从3ds Max导出模型
- OpenGL兼容性检测工具
- HDR压缩器,支持cubemap和2D HDR纹理的压缩
- Normalmap压缩器,2:1或4:1的压缩率
- 基于distance的字体生成器,可以把矢量字体转换成引擎使用的字体格式
- FXML2Shader工具,把FXML的特效脚本转换成HLSL或Cg
程序特性
- KlayGE是开放源代码的,包含了100%的引擎、工具的源代码。
- 可扩展的、面向对象的C++引擎,带有用于静态和动态加载代码和资源的软件架构,易于移植和调试。
- 用Python作为脚本语言,提供了对动态数据的自动支持,开发调试方便,并很容易和C++主程序配合工作。