For faster navigation, this Iframe is preloading the Wikiwand page for Xgl.

Xgl

Xgl
開発元 Compiz
初版 2006年1月2日 (18年前) (2006-01-02)
種別 ディスプレイサーバ
公式サイト en.opensuse.org/xgl ウィキデータを編集
テンプレートを表示

Xgl(エックスジーエル)はデスクトップOpenGLを使って描画するX Window Systemのアーキテクチャの1つ。Xサーバを現在のピクセル描画モデルからベクトル描画モデルに移行するものである。ノベル社のデビッド・レイブマン (David Reveman) によって開発された。

最近のPCは3D機能付きのグラフィックカードを搭載しているため、Xglを使用することによりX上で高速で多彩なエフェクトが使用できる。しかしながら、NVIDIAATIのようなグラフィックカードベンダーはオープンソースのドライバーをほとんど提供していないので、現在のXサーバがサポートする全てのマシン上でXglが動作するわけではない[1]

2005年に、非常に閉鎖的な開発のされ方が問題になり、一部の開発コミュニティで論争が起こったことがある。しかし、2006年のX開発者カンファレンスで実装が発表されてからは好意的に受け入れられた。

バックエンド

[編集]

OpenGL自体にはディスプレイを初期化したり、描画のコンテキストを操作する機能はない。そこでウィンドウシステム自体にこれらの指示を与えるようなバックエンドが必要になる。今のところこれには2つの実装があるが、初期化担当の部分を除けば違いはほとんどない。

Xglx

[編集]

Xglxは最初に実装されたXglバックエンドである。現在使用しているXサーバの上で動作し、XのOpenGL拡張によって描画する。これはちょうど、Xnestの機能と同じようなものである。しかし、このような動作方法だと3Dゴーグルやデュアルモニタのサポートが難しくなるということが、2006年のX開発者カンファレンスでNVIDIA社によって指摘されている[2]。将来的には、これは開発者だけが使用するものになる予定である。

Xegl

[編集]

Xeglは将来のXglバックエンドである。描画担当のコードはXglxとほとんど違いはないが、OpenGL描画のための初期化と描画コンテキスト管理を、Embedded GLのAPIによって行う。現在の実装ではMesaによってLinuxフレームバッファーかDRIによるグラフィックカードへの描画を行っている。2005年の段階ではRADEON R200上でしか動作しない。現在も開発中である。

類似の技術

[編集]
  • cairoはXでベクトル描画を行うためのライブラリである。現在はXgl同様、glitz経由で動いているが、cairoをXgl上で動かすこともできる。また、Qt 4.0はArthurというベクトル描画システムを備えているが、これも同様にXgl上でも動かすことができる。
  • GNUstepではDisplayGhostscriptによってデスクトップのベクトル描画が可能である。
  • AIGLXはX上でOpenGLによるエフェクトを可能にするためのプロジェクトである。Fedora Projectによって開発された。XglがXサーバを完全に置き換えてしまうのに対し、こちらはXの一部を拡張し、プロトコルを追加している。しかし、AIGLXはXglのバックエンドの一つになる可能性が高いと言われている。
  • macOSでは、OpenGLによるデスクトップの描画はQuartz Extremeと呼ばれる技術によって使用されている。
  • Windows Vistaにおいても同様の技術がDesktop Window Manager (DWM) という名前で搭載されている。こちらはOpenGLではなくDirectXを使っている。
  • Project Looking GlassJavaによる3Dデスクトップ環境である。Xglと同様、OpenGLによるハードウェアアクセラレーションを利用している。

Compiz

[編集]

CompizはXglを利用した最初のウィンドウマネージャである。デスクトップをキューブのように回転させたり、ウィンドウ動作をゼリーのように震わせる機能が特徴である。開発者はXglと同じである。現在はAIGLXの上でも動作する。

外部リンク

[編集]
  • Kororaa Linux Xglを搭載したLinuxディストリビューション。ライブCDにより環境を汚さずXglが体験できる。

脚注

[編集]
{{bottomLinkPreText}} {{bottomLinkText}}
Xgl
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?