http://www.linuxgraphics.cn/xwindow/gallium3d.html
Gallium3D 介绍
作者: 刘鹏
日期: 2009-09-24
Gallium3D 是非常先进的技术,Mesa 7.5 也将其引入了,本文对 Gallium3D 做了详细介绍。
|
简介1近日 Mesa 7.5 正式发布了,这是一个具有重要含义的版本,因为它引入了“Gallium3D”构架。 Mesa 是 OpenGL 规范的开源实现,让显卡的 3D 加速特性透过此得到施展。在 很多平台 Mesa 都得到了应用。其中包括 X Window 系统。 Mesa的开发始于1993年,历史已是相当悠久。虽然近年不断的开发让 Mesa 也适 应了现代桌面的 3D 技术,如 DRI(直接渲染构架)的引入让 X Window 直接在 桌面上渲染 OpenGL 的 3D 应用成为可能,最新的已经是DRI2了(已经在Fedora 11中默认启用)。然而,Mesa 的框架决定了它驱动开发的复杂性:每个显卡厂 商的3D驱动都有各自不同的应用后端,通过此调用 Mesa 的 API 来实现 3D 加 速。Intel、AMD 和 NVIDIA 这三大厂商的显卡都具备各自不同的应用后端,造成了开发和维护困难。 Mesa 7.5 引入了 Gallium3D 来解决上述问题,尽管目前为止 Gallium3D 还未完全成熟。 Gallium3D 提供一套统一的 API,这套 API 将标准的硬件特性(而非软件特性) 暴露出来(如shader units),也就是说,Gallium3D 直接与统一的硬件级特性打交道,而非充当一个纯软件层。 因此,这些 API 使得 OpenGL 1.x/2.x,OpenGL 3.x,OpenVG,GPGPU 架构甚至 Direct3D 的实现,都只需要通过一个单独的后端即可。而无须各个厂商自行开发各自不同的后端。 这不仅让开发和维护显示驱动带来了极大的方便,而且统一的 API 使得 Mesa 的灵活性和扩展性大大增强。透过Wine项目正在实现的开源Direct3D,未来Linux平台直接运行DirectX游戏将不是梦想! 未来,Mesa 7.6 还将进一步完善 Gallium3D 的支持,更有意思的是,此前在驱 动开发领域一直落后的 AMD,将率先使得 ATI R600/700系列显卡支持 Mesa 7.6, 并成为 Mesa 的一部分。 Gallium3D 体系结构3Gallium3D 是对 Mesa 设备驱动模型的重新设计,是一种解决图形加速问题的新 方法。 Gallium3D 的目的:
Gallium3D 基本模型如下所示:
Gallium3D 带来的好处:
Reference |