粘土游戏引擎 KlayGE

jopen 12年前

粘土游戏引擎(KlayGE)是一个开放源代码的,跨平台的,基于插件结构的游戏引擎。该引擎从2003年开始研发,设计目的是用最先进的技术武装引擎,使游戏的开发、测试、移植得到简化。

该引擎是国人开发!

技术特性:

图形
支持DirectX 9.0-11.0,OpenGL 2.0-4.0,以及OpenGL ES 2.0
采用fxml作为可渲染物体的特效脚本,可以直接把美工生成的特效导出使用
Python脚本可以在运行期动态解释,所以修改脚本以后不需要重新编译
可以通过高度图来建立地形场景
支持骨骼动画
硬件遮挡裁减
粒子系统
后处理技术
自适应硬件状态缓存和延迟更新机制
支持逐像素光照和渲染技术
基于距离场的字体系统,兼有矢量字体和点阵字体的优点
支持过程纹理
支持次表面散射,可用于渲染树叶、皮肤、玉器等半透明材质
支持PN Triangles技术,在运行期自动光滑低模
着色
包含常用操作的shader库
完全抽象出图形API
多遍渲染
完全支持可编程着色
可以使用多条渲染流
光照
动态光照
全方向阴影贴图

音频
支持各种平台的音频输出
支持3D声音定位和多普勒效应
输入格式支持Ogg Vorbis
支持流式播放

工具
法线图生成器,可以从高度图生成法线图
距离图生成器,可以从高度图或3D纹理生成距离图
MeshML导出插件,从3ds Max导出模型
OpenGL兼容性检测工具
HDR压缩器,支持cubemap和2D HDR纹理的压缩
Normalmap压缩器,2:1或4:1的压缩率
基于distance的字体生成器,可以把矢量字体转换成引擎使用的字体格式
FXML2Shader工具,把FXML的特效脚本转换成HLSL或Cg

程序特性
KlayGE是开放源代码的,包含了100%的引擎、工具的源代码。
可扩展的、面向对象的C++引擎,带有用于静态和动态加载代码和资源的软件架构,易于移植和调试。
用Python作为脚本语言,提供了对动态数据的自动支持,开发调试方便,并很容易和C++主程序配合工作。

项目主页:http://www.open-open.com/lib/view/home/1336611253453