OpenGVS的历史
1988年第一个GVS SDK版本由Gemini Technology Corporation发行,用于军事训练和研发仿真效果。早期的图形工作站价格昂贵,使用专用硬件、专门微代码和系统软件,用于实时生成外部场景。缺点:价格贵,不可编程。后来,用户青睐于可编程图形工作站,但却没有足够用的开发工具包。GVS应运而生。
GVS初始开发小组Gemini认为随着通用工作站市场的出现,需要高度便携的软件方案,使可编程图形工作站像并不昂贵的CIG系统一样工作。由于图形生成函数并不在硬件或微代码中实现,最好它能够扩展甚至接口到其它三维图形环境。由这样的开发工具,终端用户能一次书写代码,即使运用不同的三维图形硬件,也能重复利用于其它工程。
版本1、2的GVS为“Generic Visual System”的缩写。仅支持几种图形系统,如Evans and Sutherland (E&S), Silicon Graphics (SGI), Alliant, Megatek, and AT&T Pixel Machines。由于当时PHIGS是唯一的便携生成系统,版本1、2就围绕其开发的。不幸的是,此后几乎没有厂家采用PHIGS+作为其低级生成API。
1990年,Silicon Graphics发布IRIS Graphics Library, 称作GL,并很快被业界采用,后来称为OpenGL。OpenGL性能远优于PHIGS+,故GVS版本3采用IRIS GL作为其内部低级生成引擎。此后,GVS就是指“Gemini Visual System”。
九十年代中期,OpenGL已成为主要工业界图形生成标准,GVS版本4系列更名为OpenGVS,4.0采用OpenGL1.0 API。与此同时,微软的图形API Direct3D面世,它主要面向PC机及游戏开发商的。此时也出现了三维芯片Voodoo Graphics,它对三维游戏开发产生革命性的影响。Voodoo Graphics能提供工作站级的三维图形性能,但却没有为Direct3D或OpenGL的驱动器,而只有自己的低级Glide API(一种屏幕坐标生成层,有些类似于OpenGL)。OpenGVS开发者认为GVS的面向对象设计的性质适合于构建一个抽象层SimGL。它是对Glide and Direct3D图形生成API的抽象,这样,三维硬件看起来就像OpenGL运作。
OpenGVS V4.1用一个抽象层SimGL使运用Glide(Voodoo Graphics)变得方便了。版本4.2支持Microsoft’s Direct3D API。版本4.3支持Voodoo3芯片(Glide3 API)和Quantum3D的第一个PC-1G系统,包括硬件支持全场景和象素反走样。版本4.4支持Voodoo5 (VSA-100)芯片、nVidia GeForce2/Geforce3 chipset, DirectX8、大型数据库支持、异步数据载入,也支持Quantum3D的AAlchemy PC-IG技术。
OpenGL通常描述低级生成要素,如如何用用户定义的属性(颜色、纹理图)绘制多边形,对象对模拟光源如何反应等。而OpenGVS是一个场景管理器,它的功能就是从低级生成API功能结束的地方开始的。 |