又到了KlayGE的发布周期。今天,KlayGE 4.5正式发布了!这个版本除了KlayGE传统上在图形方面的发展之外,在工程方面和移动平台上也有较大的改进。这个趋势还会持续下去。在这个版本的开发中,多个大的组件是由团队成员完成的,同时也有很多朋友提供了宝贵意见和bug报告,在此表示感谢。KlayGE 4.5的主要更新如下:
新子项目
- DXBC2GLSL。组员林胜华完成的一个库和工具,可以把D3D compiler生成的字节码转换成OpenGL 2.0-4.4和OpenGL ES 2.0-3.1的GLSL。
引擎方面的改进
- 层次结构的场景物体,简化场景维护。
- 新的distance-based font算法。由周赫提议。在目前的版本里,字体转换速度可以提升4倍以上,未来还将做进一步的优化。
- 支持D3D 11.2。
- 改进的RenderEffect
- 删除了在runtime提供预定义宏的功能。请用<macro>和<include>来代替。参见GBufferSkinning128.fxml。
- 加速effect的载入。
- 支持递归包含。
- 支持CBuffer。
- Sensor输入。在Windows、WinRT和Android上支持陀螺仪、罗盘、加速度计、GPS等多种sensor。
- 内置式性能剖析器。方便开发者从高层做性能剖析。
工程方面的改进
- 统一使用同样的CMake文件来管理Windows、Linux、Android和WinRT的工程。注意,如果需要编译Android和WinRT版本,需要先编译出Windows版的工具。
- 支持用Clang编译。但因为Clang导入导出方面的bug,在Windows上链接仍是失败的。
- 更符合C++11规范。
- 移除了大的二进制文件。
- 新的文件命名规范,兼容不同编译器所生成的文件共存。
移动方面的改进
- Deferred框架开始支持移动平台。
- 完整支持没有浮点纹理的平台。
- 减少了渲染系统的内存消耗。
- 更多例子能在移动平台运行。
其他改进
KlayGE 4.5仍然使用双协议:开放源代码的GPL和封闭的KlayGE Proprietary License(KPL)。详细情况请见Licensing。
从此处下载KlayGE 4.5。由于一些二进制大文件被分离到了KlayGE_Dependencies_4_5_0.7z,这一版本的源代码包比上一版本的小了22%。
KlayGE meets its release milestone again. Today, KlayGE 4.5 is ready to release! In this version, some components are finished by developer team members. Also, there are many users provide great suggestions and bug reports. Thanks again for your help. The highlight features of KlayGE 4.5 are:
New sub-project
- DXBC2GLSL. A library and tool finished by Shenghua Lin. It converts bytecode generated by D3D compiler to GLSL of OpenGL 2.0-4.4 and OpenGL ES 2.0-3.1.
Improvements in engine
- Hierarchical scene object simplified scene management.
- A new distance-based font generation algorithm. Suggested by He Zhou. In current version, the converting speed is 4 times faster than before. Additional optimization will be done in the future.
- Supports D3D 11.2.
- Improved RenderEffect
- Remove pre-define macros in runtime. Use <macro> and <include> instead. Please see GBufferSkinning128.fxml.
- Speed up effect loading.
- Recursive include support.
- CBuffer in effect.
- Sensor input. Supports many types of sensors such as gyroscope, compass, accelerometer, GPS, in Windows, WinRT and Android.
- In-engine profiler to help developers do the profiling in high level.
Improvements in engineering
- Using the same CMake files for managing Windows, Linux, Android and WinRT projects. Note that if you need to compile Android or WinRT version, the Tools of Windows version must be built first.
- Supports compiling by Clang. But because of a bug in Clang’s importer and exporter, linking on Windows fails.
- C++11 compliance
- Remove large binary files from repository.
- New file naming convention. Allow files from different compiler coexists in the same folder.
Improvements in mobile
- Deferred frame starts to support mobile platform.
- Fully support platforms without float point texture.
- Reduce memory consuming of rendering system.
- More samples running on mobile platform.
Other improvements
KlayGE 4.5 is still in dual license: A open source license GPL and a proprietary one KlayGE Proprietary License (KPL). Details in Licensing.
You can download KlayGE 4.5 here. Some large binary files are moved to KlayGE_Dependencies_4_5_0.7z, the source code package is 22% smaller than last version’s.
Comments