联盟首页 协同开发 共创软件 开放源码 软件工程 共创论坛 关于联盟
  您的位置 » 2005年01月08日  
通过SSL登录
新用户通过SSL注册

完全匹配   
项目摘要

项目维护

软件分类表
新发布软件
代码片断

项目: Garnet 3D Game Library:
版本信息


摘要| 管理| 首页| 论坛| 跟踪| 错误| 支持| 补丁| 电子邮件| 任务| 文档| 调查| 新闻| CVS| 软件包 | 

信息

版本名称: 0.6.6

信息:
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之间的差异



修改: [2003.3.6] ■ 修复了一个非常隐秘的bug(是由于使用auto_scope类不当引起的),详情 参见rdx_ibuffer.cpp和rdx_vbuffer.cpp。 NOTE : 由于该bug只有在Radeon卡上,且只有在使用HW-DirectX时才出现, 因此一度被认为是Driver的bug所致。多亏了CVS的帮助,通过逐段 比对新旧代码,总算是找到了这个bug。 现在算是真正体会到CVS的好处了 :) ■ 升级版本号到:0.6.6 [2003.3.4] ■ 增加了一次读取多个mesh功能 ■ 给GLsdk增加了对ATI_vertex_attrib_array_object的支持 [2003.2.27] ■ 新增了sprite资源管理器 ■ 今后在程序中尽量使用doxygen风格的注释 [2003.2.27] ■ 修正了reslib_tc::mark函数中的逻辑错误 ■ 给reslib_tc增加了flush()函数 [2003.2.26] ■ 实现了FX Library中读取VertexShader的部分,现在FXLib已经基本可用了; ■ 所有物体现在都改用了Programmable Pipeline [2003.2.25] ■ 实现了FX Library中读取RSBlock的部分 ■ 实现了FX Library中读取VertexShader的部分 [2003.2.24] ■ 部分实现FX Library中读取XML文件功能 [2003.2.22] ■ 今天章姝晋结婚,足吃了一顿 :) ■ 在scene模块中增加了fx_c类,专门用来实现各种特效 ■ 修改了render模块的许多接口,以方便对multi-pass的支持 ■ 在types模块中整合了tinyxml包,以支持对XML格式的读写 [2003.2.19] ■ 新增了资源管理器单元,用于统一的管理各种资源 [2003.2.6] ■ 改进了auto_scope类的实现 [2003.1.27] ■ 增加了对GL_ATI_vertex_array_object的支持;(experimental) [2003.1.21] ■ 增加了对全屏模式下输入法的支持; ■ 增加了对静态编译模式的支持; [2003.1.15] ■ 改进了fontcach_c的绘图代码。现在即使同屏幕显示上千个不同的 中英文字符,速度也不会有太多的降低(最多4096个); ■ 给render_i增加了新的caps管理器; [2003.1.11] ■ 一个新的转换3ds文件的工具:meshmaker; ■ 修改了meshldr函数,以便从.gnm文件中读取mesh数据; ■ 修改了gui模块中的OpenGL代码,现在uidemo也可以跑在DirectX下了。 [2003.1.9] ■ 新增了一个立即模式渲染器,效率不高,但很方便,主要用来渲染 一些实验性的数据。 [2003.1.8] ■ 删除了comp模块中的sprite_i类,由toolkits中的sprite_c来代替; ■ 新增通用的2D Sprite Renderer,可以高效的渲染文字和2D图片; ■ 删除了fontrender_c类,其功能由新的spriterender_c来实现; ■ 修正了math模块中计算正交矩阵中的一个错误; ■ 新模块:scene ■ 'Component' module is completly removed. [2003.1.4] ■ 将函数infolog改为宏GN_INFLOG; ■ 将函数errlog改为宏GN_ERRLOG,同时在错误信息中增加了文件名 和行号,以便更好的进行错误定位; ■ 取消了宏GN_UNGUARD_SLOW_EXEC和GN_UNGUARD_SLOW_NOTHROW,因为 这两个宏会造成debug和release版本程序流程的差异; ■ 实现了贴图的局部锁定功能; ■ 增加了对NV_vertex_array_range和NV_vertex_array_range2的支持; [2003.1.3] ■ 新模块:fswin(用WINAPI实现的FontSystem) [2002.12.31] ■ 新增用来绘制文字的工具类:fontrender_c, fontcache_c ■ 新增用来绘制坐标轴的工具类:coordinate_c [2002.12.27] ■ 新的模块类:fs(FileSystem) [2002.12.25] ■ 将rdx模块升级了DirectX 9.0; ■ 修改了定义顶点格式的方式(摒弃了原先的二维数组方式); ■ 给camctrl_c类增加了插值功能,以获得顺滑的动画效果; [2002.12.18] ■ 修正了ARB vertex program中的错误 ■ 新的设备模块:vfsansi - 用ASNI函数实现的虚拟文件系统(VFS) ■ 将常用设备模块的初始化放到了core模块中,以便其他模块可以方便的 访问这些设备(目前包括:vfs,window,render,input四个设备)。 [2002.12.16] ■ 将utils模块合并到types模块中; ■ 将geom3d模块改名为math模块; ■ 增加了一个新模块:toolkits,来代替原先example包中的common库; ■ 修改了core模块中子系统的声明方式; ■ 在core模块中增加了:vfilesys, varsys, timesys三个新的子系统; ■ 将comp模块中的camera_i类移动到了新的math模块中,且改名为camera_c; ■ 删除了comp模块中的timer_i类(由core中的timesys来代替) ■ 在rgl模块中增加了一个新的单元:Caps Manager,代替原先的glext单元 [2002.12.6] ■ 将render单元的资源改成非CIF类,简化了系统的复杂度; [2002.12.1] ■ 在rdx单元中采用了VertexShader来取代现有的渲染流水线 ■ 给config_c增加了用整数索引变量的功能(速度比直接用名字索引快得多) [2002.11.22] ■ 修改了input单元输出键盘消息的方式,使得应用程序可以很容易的响应 诸如CTRL-Y,ALT-X之类的组合键; 同时,通过过滤操作修正了不对称的 按键事件(比如连续两次发送同一个键的按下消息)。 ■ 将uicontrol和canvas改为一一对应,canvas根据传入的控件状态参数来 渲染不同的图象。( 原先是一个控件对应多个canvas,每个canvas只负 责绘制一种状态 )

  » 合 作 伙 伴