发展历程

From KlayGE
Revision as of 10:43, 24 December 2013 by Gongminmin (Talk | contribs)

Jump to: navigation, search

本条目介绍的是KlayGE的发展历程,子项目有单独的条目介绍其发展历程:glloader

各版本KlayGE的主要更新如下,另外可以参看各版本的路线图

4.4 (2013.12.24)

改进的编译系统
 * 尽可能使用MSBuild
 * 第三方库使用cmake工程文件
 * 自动搜索OpenGLES SDK的目录,简化了编译的配置
OpenGL ES 3.0支持
OpenGL 4.4支持
Multi-resolution层
高质量地形渲染(由孙文全协助完成)
屏幕空间SSS和半透明效果(由石裕隆完成)
基于后处理的图片放缩
多线程场景更新和渲染(oz01提出的建议)
重写的ParticleSystem
从VSM切换到ESM
支持discard frame buffer
改进了Juda texture
Runtime log可以输出到文件(石裕隆提出的建议)

4.3 (2013.6.27)

一个新的子项目KFL
脚本引擎(由王锐完成)
高质量细节效果
改进的Deferred Rendering
 * 改进阴影生成(由李渊完成)
 * Deferred框架和GI分离
 * 大量重构(论坛里的lcbiotech提出的建议)
大范围阴影支持
支持官方版Android NDK r8
全新的输入系统,支持触摸输入
非阻塞式资源载入和管理(论坛里的lcbiotech提出的建议)
增强的立体输出(由孙文全帮助测试)
支持嵌入其他GUI框架
支持多种OIT方法
用C++11代替多个boost库

4.2 (2012.12.26)

一个新的子项目MeshML library
实验性支持WinRT平台
体积光(由王清源完成)
改进的DoF,并支持Bokeh
贴花渲染
JudaTex打包工具(由Honyeung Lau完成)
工具集增强
摄像机路径功能(王毅胡勤协助完成)
多视口支持
优化的顶点结构
全方向SSR
更好地支持compute shader
改进的Juda texture
GPU排序

4.1 (2012.6.29)

完全使用cmake工程
字体读写成为独立的库
屏幕空间反射(由王清源完成)
FFT镜头效果
性能无损的立体显示 (由王锐完成)
加速全局光照(由陈顺斌完成)
碰撞检测函数(由朱晓阳协助完成)
增强了对OpenGLES的兼容
支持大气散射效果
支持SSGI
Effect的JIT系统
增加了新的工具
增加了教程
3DSMax导出插件增强

4.0 (2011.12.25)

Deferred Rendering layer集成到核心中
全局光照得到了很大的加速
支持Android(由王锐协助完成)
支持实时焦散(由王清源完成)
蒙皮动画支持Dual quaternion(由Honyeung Lau朱晓阳完成)
增加了资源载入框架(由郭鹏设计)
改进的SSVO (由吴野完成)
骨骼数据压缩
用Phong Tessellation代替PN-Triangles
支持渲染到纹理数组
支持parallax occlusion mapping

3.12.0 (2011.6.30)

支持全局光照(由atyuwen完成)
包含第三方库及其编译脚本
增加了Maya导出插件(由王锐朱晓阳honyeung Lau完成)
支持Dual Paraboloid Shadow Map(由张亚川完成)
增加了多种模式的BC1-BC5纹理压缩函数
增加了cmake工程脚本(由王锐完成)
支持Filmic tonemapping
支持FXAA和Temporal AA(由陈顺斌郭鹏完成)

3.11.0 (2010.12.23)

支持OpenGL 4.1
增加了Juda texture,最大支持1M*1M大小的纹理
增强立体显示,支持立体眼镜
去掉了D3D9和D3D10插件,WinXP下由OpenGL插件接管
支持基于物理的BRDF
SSAO速度提高10倍
增强Post Processor脚本
水体渲染的质量和速度都有所提高
增加了配置工具


3.10.0 (2010.6.27)

支持OpenGL ES 2.0和OpenGL 4.0
支持立体显示
在高端显卡上Deferred Shading速度提高120%
支持Compute Shader
字体渲染速度提高50%
字体生成工具速度提高3倍
增强了场景管理
增强的Post processing
支持Sub-Surface Scattering
支持PN Triangles


3.9.0 (2009.12.19)

增加了TrackballCameraController
增加了Model Viewer和Particle Editor
UI dialog改进
直接读取uiml,fxml和meshml
Cg载入后编译成GLSL使用
支持Motion blur
支持DX10 DDS的读写
支持Stream output
更快的Deferred Shading
加入LZMA的编解码


3.8.0 (2009.3.1)

支持DX10,DX11和OpenGL 3.0
改成DLL的形式
增加了描述UI的UIML文件格式和编译器
增加了ElementAccessHint和ElementInitData
支持硬件depth texture
支持BC4/BC5纹理压缩
去掉了归一化cubemap生成器
多线程资源载入
支持Procedural Texture


3.7.0 (2008.7.17)

改进了Clear
增加了Depth Peeling例子
加速了Octree
无死角的FirstPersonCameraController
新的基于distance的字体格式
支持Visual Studio 2008
支持lock-free atomic操作
增加了CPUInfo
增加了Summed-Area Table Postprocess
实验性支持Linux
性能提升5%-10%


3.6.0 (2007.7.30)

兼容Vista 32/64
使用pbo加速纹理填充
改用7z作为打包格式
加强了3DS Max插件
RenderEffect增加了Clone方法
去掉了RenderTarget和RenderWindow
去掉了Triangle fan的拓扑方式
增加了UI系统
增加了Depth of field例子
去掉了对Wav的支持
启用了新的thread和thread_pool


3.5.0 (2007.3.9)

支持Alpha to coverage
改用基于xml的特效格式
全新的特效系统,支持所有的状态缓存
增加了RenderStateObject和ShaderObject
支持x64系统
OpenGL插件可以检测Shader Model 4
增加了基于GPU的粒子系统
增加了aligned_allocator
修正了thread_pool死锁的bug(感谢Roy报告此bug)
支持NVPerfHUD
增加了有符号元素格式
不再提供VS2003的工程文件


3.4.0 (2006.9.22)

导出插件支持骨骼的导出
支持normal map的压缩
支持HDR纹理的压缩
加入了粒子系统
重写的播放引擎,现在通过图形引擎播放视频
重写了height map地形生成器
增加了HDRPostProcess


3.3.0 (2006.6.30)

Font支持渲染到3D位置
统一了渲染引擎的状态设置
OpenGL插件要求硬件支持OpenGL 2.0和FBO
增加了FrameBuffer和RenderView的结构
使用以Technique为单位的渲染
支持渲染到3D Texture的一个片
增加了多种纹理格式
统一了元素格式的使用
DistanceMap生成器支持直接对Volume的计算
增加了PostProcess


3.2.0 (2006.5.15)

增加了高精度计时器
完整地支持骨骼动画
渲染部分的结构有了较大的调整
把IndexStream和VertexStream合并成GraphicsBuffer
增加了RenderLayout
支持sRGB纹理
支持ATI的instancing方法
增加了与平台无关的线程池


3.1.0 (2005.11.27)

增加了SceneObject
简化了Instancing的使用
支持Visual Studio 2005
分离了实例和几何顶点流


3.0.0 (2005.10.26)

去掉了固定流水线
增加了Occlusion Query
增加了Point sprite
支持Instancing
支持Vertex Texture
增强了KMesh和3dsmax导出插件
优化了RenderEffect
InputEngine改为使用Event形式处理消息
支持全场景的多遍渲染
支持顶点流的合并和拼接
增加了RenderablePlane


2.8.0 (2005.8.14)

增加了RenderDeviceCaps
增加了OpenGL兼容性检测工具
增加了Sampler
重写了RenderEffect
只支持OpenGL 1.5及以上
简化了RenderEngine
DInputDevice改为多继承结构
增加了RenderToVertexStream


2.7.1 (2005.7.15)

美化了字体显示效果
LoadKMesh可以使用自定义类
增加了RenderableHelper基类
RenderEngine::ViewMatrix和ProjectionMatrix改为const


2.7.0 (2005.7.2)

改成GPL协议
增加了KMesh
去掉了RenderEngine::TextureCoordSet
AddressingMode, Filtering和Anisotropy从RenderEngine移到Texture中
Texture增加了MaxMipLevel和MipMapLodBias
App3D增加了Quit
支持OpenGL 1.5


2.6.0 (2005.6.2)

修正了SceneManager类CanBeCulled的bug
增加了half类型
D3D9Texture增加了对surface的检查
增加了RenderableSkyBox
支持HDR


2.5.0 (2005.5.2)

增加了3DSMax导出插件
可以同时使用多个输入动作表
MathLib改为使用返回值返回结果
改进了CameraController
增加了RenderableHelper
视锥裁减改为使用LUT实现


2.4.0 (2005.3.28)

支持纹理压缩
增加了D3D9Resource
支持DDS格式的载入和保存
八叉树改为线性实现
支持深度纹理


2.3.0 (2005.3.2)

使用FreeType实现Font
修正了几个内存泄漏
增加了对浮点纹理的支持
增加了CopyToMemory
增加了视锥裁减插件
D3D9插件增加了OnLostDevice和OnResetDevice


2.2.0 (2004.11.20)

修正了DSound插件的音量问题
去掉了ManagerBase、FileSystem、Crc32、alloc、Timer、Random
使用boost 1.32.0
增加了Trace


2.1.3 (2004.10.19)

增加了以boost::tuple为参数的ScriptEngine::Call
修正了一些关于STL的问题
修正了Pkt的CRC错误
去掉了MemoryLib


2.1.2 (2004.9.5)

增加了BoneMesh
增加了RenderEffectParameter
支持DX 9.0c SDK
修正了DiskFile::Seek的Bug
把const T&改为更规则的T const &
InputEngine改用Bridge实现


2.1.1 (2004.5.25)

大量使用boost
数学库都采用泛型实现
增加了Parallax的Demo
增加了ResLocator


2.1.0 (2004.4.20)

增强了OpenGL
去掉了汇编代码
直接支持单独的Shader
简化了打包文件目录表的表示法


2.0.5 (2004.4.13)

增强了OpenGL
修正了WindowMovedOrResized的bug
MemFile改用stringstream实现
提高了代码安全性


2.0.4 (2004.4.7)

修正了OALMusicBuffer无法loop的bug
DSMusicBuffer改用timeSetEvent实现
改进了VertexBuffer
Audio部分增加了NullObject
增加了Demo


2.0.3 (2004.3.12)

简化了VertexBuffer
去掉了软件顶点混合


2.0.2 (2003.12.28)

改进了渲染队列
使用Python做脚本语言
DiskFile改为用标准C++流实现


2.0.1 (2003.10.17)

去掉了DX8的支持
增加了一些工具


2.0.0 (2003.10.1)

正式版发布


2.0.0 Beta (2003.9.5)

初次发布