|
项目: Garnet 3D Game Library:
版本信息
摘要|
管理|
首页|
论坛|
跟踪|
错误|
支持|
补丁|
电子邮件|
任务|
文档|
调查|
新闻|
CVS|
软件包 |
信息 |
信息:
0.7.0a (2004.11.16)
===================
- added
- General
- 全新的以scons(www.scons.org)为基础的跨平台编译环境
- 整合glut,已经可以在linux上运行了
- 新的app模块,方便用户建立自己的应用程序
- 支持命令行参数
- in-game performance profiler
- 用WTL替换掉MFC
- Null device implementation
- draft unit test framework
- Graphics
- 支持运行时切换显示底层
- 支持D3D HLSL
- 支持OpenGL Shading Language 1.0
- 升级D3D版本到 9.0c october update 2004
- 支持 "render to texture"
- multiple render targets
- 支持多显示器
- 全新的surface format定义
- 通用的mipmap类(API无关)
- fixed
- Fix bug of handling "control-under-mouse" in GUI module
- Fix bug of unproperly setting current vsh/psh pointer and
vsh/psh function table in rdx module
- Fix bug when loading effect from XML file.
- Fix inconsistent diffuse in im3drenderer
- modified/improved
- General
- 全面支持unicode
- 全模版化的几何类型(vector,matrix,...)
- lua格式的系统配置文件
- 简化的log系统,更加直观好用,且支持格式化的输出
- 集成的文件和窗口系统
- integrate math module into types module
- Replace expat with TinyXML for ease of use
- improved signal/slot implementation: now support return value
- support "bad/null" resource instance, remove necessity of checking null resource pointer
- Graphics
- 简化的shader参数设置方式
- replace GLsdk with glew
- experimental
- RenderMonkey的插件
- removed
- tokenzier class (replaced by conterparts in boost)
- heightmap
- geomipmap based terrain
- FFT based water
- issues
- compatbility with stlport is yet to verfied
0.6.8 ( 2003-07-28 )
====================
- added :
- 对Programmable Pixel Shader的支持
- 对高级shader语言Cg的支持
- 新的effect系统以取代原先的FX类
- 基于XML的grapchis effect描述
- 对cubemap的支持
- 生成/读取/修改mipmap功能
- 新的vertex semantic : VERTSEM_FOGCOORD, VERTSEM_TANGENT, VERTSEM_BINORMAL,
用来支持tangent space的特效
- 对OpenGL VBO的支持
- 给render_i增加了一个device-lost-signal,以便外部程序
能够及时reload丢失的资源
- fixed :
- GUI模块中处理输入焦点时的一个bug
- rsblock处理无效值以及处理多层贴图时的bug
- 修正了切换可编程和固定流水线时的bug
- modified/improved :
- 取消了IBuffer和VBuffer的双缓冲机制(太费内存)
- 将矩阵改为 row-major 形式,因为programmable pipeline中通常都需
要输入行形式的矩阵。
- 简化frame的代码为只支持刚体变换(用quaternion来记录旋转操作)
- 在quadrender_c中增加了对2D图片的修正操作,以保证texel和pixel
的精确对应
- 取消了fontcache_c中的修正操作和字符间的隔离区,以增加一张贴图中可
容纳的字符数
- 改进了rsblock处理multi-texstage的方式
- experimental
( not well implemented, may change or being canceled in future version )
- rendering to texture
- heightmap
- geomipmap based terrain
- FFT based water
0.6.7 ( 2003-04-14 )
====================
- 将工程文件升级到了VS.NET 2003版;
- 对render模块做了较大的调整:
. 分离render模块中的modelview变换为独立的view和world变换
. 修改了vbuffer的语义:现在一个vbuffer类内包含了多个vertex stream
. 修改了vshader单元的实现,以方便支持Cg等高级语言
. 取消了独立的vertmap单元,现在vertmap是作为vshader的一个附属类
. 修改rsblock的实现方案,大幅提高了其执行效率(尤其是OpenGL版本)
. new renderer option : VSYNC
. 把primitve_t和vertex format类型和rsblock的基本定义都挪到了types模块;
- 在types模块中增加了file_i类,作为基本的文件类型接口;所有读取文件
的操作都改为通过file_i类来实现,以方便将来使用虚拟文件系统;
- 重新实现了mesh类,并整合入现有的资源系统中;
- Misc Modifications
. 改用DevIL来读取图象文件;
. 实现了scene模块中负责三维变换的frame_c类
. camera的视点变换功能移交frame_c类完成
. 删除math模块中的euler类
. 修正了计算逆矩阵函数中的一个错误
. 将input_i::sig_char_press的参数改为wchar_t,以支持中文字符
0.6.6 ( 2003-03-06 )
====================
从上次版本升级到现在已经很长时间了,期间garnet库已经有了很大的改变:
- 主要变化
. 新增了特效类fx_c,统管所有物体的渲染,全面支持可编程流水线。
. 将rdx模块升级了DirectX 9.0;
. 增强了对中文的支持,现在可以全屏输出数千个字符而不严重降低
程序的性能(最多4096个);
. 新增了两个专用渲染器:quadrender(四边形渲染器)和im3drender
(立即模式渲染器);
. 增加了统一的资源管理系统,现在大部分的外部资源都已经整合到了这个
新系统中。
- 模块的增减/调整/重命名
. 新增字体设备:fswin和fsft2
. 新增虚拟文件设备:vfansi
. 新模块:toolkits,来代替原先example包中的common库;
. 将utils模块合并到types模块中;
. 将geom3d模块改名为math模块;
- misc
. 在rgl模块中增加了一个新的单元:Caps Manager,代替原先的glext单元
. 给config_c增加了用整数索引变量的功能(速度比直接用名字索引快得多)
. 将render单元的资源改成非CIF类,简化了系统的复杂度;
. 给camctrl_c类增加了插值功能,以获得顺滑的动画效果;
. 修改了定义顶点格式的方式(摒弃了原先的二维数组方式);
. 修改了input单元输出键盘消息的方式,使得应用程序可以很容易的响应
诸如CTRL-Y,ALT-X之类的组合键; 同时,增加过滤操作,以修正不对称
的按键事件(比如连续两次发送同一个键的按下消息)。
0.6.5 ( 2002-11-16 )
===================
- 用unreal风格的guard/unguard宏替换了大部分的try/catch block;
- 用新的vertmap模块替代了目前的vshader模块;
- replace simple camera class with CIF based "camera_i";
- 使用了新的引用计数机制;
- 使用了http://sigslot.sf.net的signal/slot库来简化模块间的耦合性;
- 将工程文件升级到了vc7/vc.net,以后将不再支持vc6;
- 大幅度简化了CIF系统中不常用的功能,并且使用模板函数取代了大部分的
宏,使代码更加清晰易懂,且更安全;
- 将render模块display子单元中窗口管理的部分独立成了一个新的模块:
. window模块,用来管理和窗口相关的事宜(如窗口消息处理等等〕,使得
. render模块的功能更清晰;
- 新的功能模块:GUI模块,用来实现通用的用户界面(参见例子程序uidemo)。
0.6.4 ( 2002-9-26 )
===================
- 简化了render模块的结构,将原先的多个子接口整合到了单一的render_i中;
- 放弃原先句柄形式的显示资源,改用了基于CIF的指针资源;
- 删除了render模块中的pshader类型,代之以新的rsblock(RenderStateBlock);
- 在rgl模块中采用了Intel GLsdk来管理opengl extension;
- 在异常处理单元中增加了function guard系列宏,以增加可调试性;
- 将cif类的版本号由全局变量改为静态成员函数,从而避免了名字冲突;
0.6.3 ( 2002-8-28 )
===================
- 修改了render_i::draw_mgr_i的接口,以便于对Vertex(Index)Buffer的共享;
- 修正了rdx模块中恢复丢失设备后VertexShader管理器无法还原的错误;
- 在所有的动态模块中增加了对核心版本的检测;
- 修改了系统事件的定义(详见comp/eventdef.h);
- bug fixes.
0.6.2 ( 2002-6-27 )
===================
- 修改了render_i::transform_mgr_i的接口
- 修改了camera_c的实现
- 新函数CORE_get_version()
0.6.1 ( 2002-6-5 )
==================
- 在新开发的CIF(Common Interface Framework)系统的支持下,重构了系统的plugin
机制,对原有的系统结构作了很大的调整。
0.5.2a ( 2002-4-11 )
==================
- 将用户定制的部分(包括:主程序、user模块和节点库)从引擎中独立出来。
0.5.2 ( 2002-3-7 )
==================
- 将font单元移出了render模块,成为一个新的节点类: fontnode_n
0.5.1 ( 2002-3-6 )
==================
- 将顶点格式的定义从_vshader_mgr.h中移到了新的头文件_vertex_format.h中
- 在vbuffer类中记录了顶点的格式
- 彻底消除了font单元在不同API之间的差异
修改:
[2004.11.22]
■ 升级版本号到 0.7.0a
[2004.11.20]
■ fix compile error on posix system
[2004.11.19]
■ allow tag inside log string. can be used to specify text color
[2004.11.18]
■ draft unit test framework
[2004.11.18]
■ refine render device caps definition
■ add support to multiple render targets
■ rtdsc timer
[2004.11.17]
■ integrate with glut
[2004.11.16]
■ in-game profiler
■ adjust app module
■ new command line option to run limited frames.
[2004.11.11]
■ new TSS operation: TSSVAL_CONSTANT
■ Fix inconsistent diffuse in im3drenderer
[2004.11.5]
■ move GUI definitions into namespace GNgui.
■ flip Y-axis of render_i::draw_text()
■ command line parameters
■ improve GN_INLINE (inline only in retail build)
[2004.10.31]
■ more flexible and powerful color/surface format definition
[2004.10.26]
■ fix bugs in config_c
■ add command line support in framework_c
[2004.10.20]
■ fix GLSL runtime error on Nvidia card
■ move graphics types and constants into new namespace GNgfx
[2004.10.18]
■ add support to multi-monitors
■ fix bugs when dealing with font color format
■ adjust layout of garnet3d.conf
■ remove implementation code from config_c
[2004.10.12]
■ add support to OpenGL shading language (working in progress)
- lack of ability to bind vertex attribute array
- lack of ability to set uniform parameters
[2004.10.4]
■ fix msvc level 4 warnings
[2004.9.22]
■ replace expat with tinyxml
[2004.9.21]
■ upgrade lua code to lua-5.1-work2
■ write effect to xml file (by TinyXml)
[2004.9.19]
■ add support to DirectX HLSL
[2004.9.7]
■ add semantic property to uniform
■ update uniform value based on semantic
[2004.9.5]
■ Fix bug of disbled texture stage in rgl
■ Remove "ssp" and "usp" from shader interface
[2004.9.4]
■ Upgrade to lua v5.1(work1)
[2004.8.21]
■ Upgrade build script to scons 0.96
■ Now use special "null" instance as fallback in resource
libarary, while resource ID is invalid, or resource
loading is failed.
[2004.7.27]
■ Change build system to scons(http://www.scons.org)
■ Implement null font system
[2004.6.28]
■ Implement null input device
■ Move implementation of null devices to core module
[2004.6.11]
■ Fix compile error on Linux
[2004.6.1]
■ rewrite sigslot library, now support return value and
connection to free function.
[2004.5.21]
■ new render module option: use_2nd_monitor (rdx only)
【 2004.11.16
removed
】
[2004.5.14]
■ Make behavior of rendering mode switching more stable.
[2004.5.10]
■ Fix crash bug when switch from rgl to rdx on ATI card
[2004.4.6]
■ QA PASSED: 运行时切换OGL/D3D
[2004.3.27]
■ Fix problem of rgl module can't handle display switch in
fullscreen mode.
[2004.3.26]
■ Rewrite rgl module to support runtime device switch.
[2004.3.25]
■ Window device now became a subsystem of core module. And you
should be able to switch rendering window in runtime.
▲ Need QA.
【 2004.11.16
QA Passed
】
■ Change architecture of rendering module, with fully support
of runtime rendering device switch.
■ You should now be able switch between OpenGL and DirectX.
▲ Need QA.
【 2004.4.6
QA Passed
】
■ New application module. Move the framework class from
example package here.
■ Merge autoscope.h into types.h
■ 简化了log函数的实现
(more powerful, more straitforward and intuitive)
■ 增加了宏GN_TRACE,方便输出调试信息
■ implement a null rendering device
■ replace GLsdk with glew (http://glew.sf.net)
[2004.3.14]
■ Remove support for Nvidia RegisterCombiner & TextureShader
■ More rubost support to render-to-texture (rdx only)
[2004.3.13]
■ Fix compile warning&errors when enable UNICODE and /W4
■ Fix resource loading bugs in UNICODE mode
[2004.3.7]
■ Remove over-complicated and non-intuitive
transformation class : transform_c & revtransform_c
■ Simplify the implementation of transformation frame class
[2004.2.7]
■ Better support to STLport :
Fix many compile-time/run-time error, when using STLport.
[2004.2.3]
■ replace old log system with just one function and one signal
[2004.2.2]
■ Fix a bug when there are unreferenced variables in Cg shaders.
[2004.1.30]
■ 修正了读取8-bit贴图时的错误
■ 所有角度值都改用”弧度“为单位
■ 给matrix类增加了lookat函数
■ replace my own tokenizer class with boost's
[2004.1.27]
■ 将2D模式的坐标系改为(X左,Y下),以符合一般GUI系统的惯例。
■ 删除了不成熟的terrain相关代码和演示
■ 修复不同图像格式原点不统一的问题
[2004.1.6]
■ upgrage expat to version 1.95.7
[2004.1.17]
■ Fix some compiling erros, when enable UNICODE
|
|
|