AIGLX

GLX and AIGLX versus direct rendering.
compizとAIGLXの組合せによるデスクトップの回転中の画面

AIGLX(Accelerated Indirect GLX)はX.Org FoundationおよびFedoraのコミュニティによって開始されたオープンソースのプロジェクトである。3Dデスクトップ環境を実現する技術として知られているが、これは、もともとシリコングラフィックスが90年代に開発したXサーバのGLX拡張を、最近のビデオカードが持つグラフィックアクセラレーションやDRIにより高速化するものである。

Xglとの関係

両者ともに3Dデスクトップ環境を実現することを念頭に開発されたという経緯があるため、同様の技術として見られることが多いが、実際には全く異なる設計に基づいている。

XglXnestのように他のXサーバの上で動き、OpenGLのAPIを通じて可能な限り高速に2D描画およびGLXの処理を行うよう設計されている新しいXサーバであるが、AIGLXは、あくまでXサーバの拡張モジュールであり、従来からあるGLXを高速化し、3Dデスクトップ環境の実現のために、いくつかの機能要件を満たすよう拡張したものに過ぎない。したがって、技術として競合するものではなく、事実としてプロジェクト間でコードの交換をしたり、互換性を保つような協調作業が行われてきた。その結果、Xglの最初のウィンドウマネージャであるCompizもAIGLX上で動作するようになった。

利用できる環境

X11R7.1でサポートされている。GLXとは「OpenGL Extension to the X Window System」の略語で、X Window System上でOpenGLを実行する技術である。

プロプライエタリなドライバとAIGLX

NVIDIAATIなどのプロプライエタリドライバはもともと独自にGLXを高速に描画するためのバックエンドを持っており、すでにXサーバと共にインストールされているGLX拡張モジュールを置き換える形で機能するようになっている。一方、AIGLXはXFree86ではMesaにより実装されていたGLXを、よりMesaの持つグラフィックアクセラレーション機構を活用できるように改良したものである。

Compizなどのウィンドウマネージャは視覚効果を実現するのに、texture_from_pixmapと呼ばれるOpenGL拡張に依存している。当初この拡張はMesaでしか実装されておらず、プロプライエタリドライバと共に3Dデスクトップ環境を利用するには、ベンダーの対応を待つ必要があった。NVIDIAは2006年9月にリリースした9000シリーズ以降のドライバでこの拡張に対応している。

また、以上のような理由から、AIGLXをサポートしない古いXサーバ上でも、利用するアプリケーションの要求を満たすベンダ製のドライバを使うことで、AIGLXとほぼ同等の環境を実現することができる。

関連項目

外部リンク

  • Fedora Project Wiki AIGLX Article(英語
  • Accelerated X flame wars!—Maybe not — AIGLXとXglの違いについて解説した記事(英語)
  • Installing AiglxOnFedora Fedora Core 5へのAIGLXのインストールHOWTO(英語)
  • 表示
  • 編集