Mesa 3D
From Wikipedia, the free encyclopedia
Mesa 3D は自由ソフトウェアかつオープンソースのグラフィックスライブラリであり、1993年8月に Brian Paul が開発した初版が公開された。このプロジェクトはもともと3次元コンピュータグラフィックスのAPI仕様であるOpenGLのオープンソース実装として始まったが[2]、のちにOpenGLだけでなくOpenGL ES、Vulkan、OpenCLなどの様々なAPIのオープンソース実装となった[3]。Mesaは主にLinux向けに開発・利用されているが、他にも様々なプラットフォームに対応している[4]。
クロノス・グループによって公式に各APIの実装として認証されているわけではないが[5]、APIの構造や構文やセマンティクスは各API仕様に準じている。
新しい Gallium3D アーキテクチャでMesa 3Dを置き換えると、より新しいバージョンのOpenGLへの互換性が得られる。つまり、より新しいGPU(ビデオカード)の機能や、簡易化したデバイスドライバのアーキテクチャが利用できるようになる。
特徴
- 2007年現在の構成では、ほとんどあらゆるプラットフォーム上でコンパイルし利用できる。
- ライセンスの問題により、OpenGL の実装であるとは公式には認められていないが、Mesa 3D の作者は OpenGL の最新の標準に追随するようAPIを保守し続けている。
- Mesa 3Dの主要なソースコードはMITライセンスの条件で配布されるが、GLXなどいくつかの関連コンポーネントはそれぞれのライセンスに従う[6]。
- Mesa 3D はいくつかのグラフィックアクセラレータをサポートしているが、ソフトウェアのみのレンダラーとしてもコンパイル可能である。また、フリーでオープンソースであるため、OpenGL 互換レンダラーがどうなっているかを学ぶのに適している。
- OpenGL アプリケーションのデバッグの際、Mesa 3D と普通のデバッガを使うことでバグを見つけやすくなることがある。
- IntelとAMDは自社のGPU用の対応のためにMesaを公式にサポートしている。
- Galliumドライバーを通じて、Direct3D 12のような他のグラフィックスAPI上に構築されたマッピングレイヤーもサポートしている[7]。この成果物はARMアーキテクチャ版のMicrosoft WindowsにおけるOpenCL/OpenGL/Vulkan互換機能パックの実装に活かされている[8][9]。