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

PHIGS

PHIGS(Programmer's Hierarchical Interactive Graphics System、フィグス)とは、3次元コンピュータグラフィックスレンダリングをおこなうための標準化されたAPIである。1990年代において3次元グラフィックスの標準とみなされた。機能と性能を兼ね備えたOpenGLの台頭によって事実上の標準は取って代わられ、現在においてPHIGSはあまり使われていない。

PHIGSは独立した実装(ディジタル・イクイップメント・コーポレーションのDEC PHIGS、IBMのgraPHIGS、サン・マイクロシステムズのSunPHIGSなど)においても存在し、X Window SystemにおいてもPEX(PHIGS Extension to X)を通じてサポートされている。PEXはXの拡張として構成されており、レンダリングのためにXサーバからPEXシステムへ転送されるコマンド群を追加する。PHIGSによって抽象化されるワークステーション資源は通常ウインドウを対象とするが、全画面やプリンタ出力デバイスへと転送することもできる。

PHIGSは1970年代後半におけるGraphical Kernel System(GKS)からの着想を取り込み1980年代に設計され、1989年にはANSI規格(ANSI X3.144-1988)、連邦情報処理標準(FIPS 153)、そしてISO規格(ISO/IEC 9592およびISO/IEC 9593)となった。早期の設計であるため、標準では基本的なジオメトリおよびメッシュ、基本的なグーローシェーディング、ドット、フォンシェーディングによるシーンのレンダリングといったごく基礎的な3次元グラフィックスのみがサポートされており、現代において標準的な機能と想定されるテクスチャマッピングはサポートされていない(ハードウェアがそのリアルタイム処理をサポートしていたとしても)。

技術的詳細

[編集]

PHIGSの名に含まれる「hierarchical(階層的)」という言葉は、その特筆すべき1機能を表している。一般的なグラフィックスシステムとは異なり、PHIGSはシーングラフシステムを基礎標準の部分として含んでいる。モデルはCentralized Structure Store(CSS)と呼ばれる、描画プリミティブとそれらの属性(色、線スタイルほか)を含む「ワールド」を保持するデータベースにおいて構築される。PHIGSは抽象化されたワークステーションとして振る舞い、CSSは複数の表示領域において共有できる。

PHIGSを使って画面にグラフィックスを表示するには3つの手順を踏む。まずCSS内にモデルを構築し、次に抽象ワークステーションを作成して開き、最後にモデルを抽象ワークステーションに関連づける。ワークステーションはモデルを即時にレンダリングし、将来に渡ってモデルに加えられた変更はワークステーションの表示領域へ即座に反映される。

オリジナルのPHIGSは照明されたシーンをレンダリングする能力を欠いており、PHIGS+へと改められた。PHIGS+は基本的に同様の作法で動作するが、3次元シーンを照明する手段が加えられており、冗談半分にPHIGS PLUS("Plus Lumière Und Shading")とも呼ばれている。PHIGS+ではNURBS曲面のようなより高度なグラフィックスプリミティブも加えられている。

OpenGLの台頭とPHIGSの終焉

[編集]

OpenGLはPHIGSとは異なり、レンダリングのために送信されたオブジェクトを保持しない、イミディエイト・モード(即時モード、直接モード)のレンダリングシステムである。モデルに変更が加えられた場合は、シーン全体をシステムへ再送信することで再レンダリングをおこなうため、プログラマの作業負担は大幅に増えている。簡素なプロジェクトにはPHIGSはより易しく負担が少ない。

しかしながら、OpenGLの低水準APIは、データをグラフィックスハードウェアへ送信する前にCPU側において前処理をしてレンダリング効率を大幅に向上させることを可能にした。例えば、各オブジェクトが実際のシーンにおいて可視であるか調べ、最終的に画面に映るオブジェクトのみを送信することで、カリング処理ができる。こうしたことはPHIGSにおいては非公開とされており、性能の最適化を難しくしている。

低性能なハードウェアシステムがかつてのものとなり、高性能なレンダリングの需要が増すにつれ、OpenGLがより強力な3次元プログラミングAPIとしてみなされ、PHIGSは使われなくなっていった。PEXプロトコルのバージョン6.0では他の3Dプログラミングモデルもサポートしているが、人気は回復していない。PEXはXFree86 4.2.x(2002年)では大部分が削除され、X11 R6.7.0(2004年4月)版のX Window Systemからは完全に削除されている[1]

注釈・出典

[編集]
  1. ^ X.Org Foundation releases X Window System X11R6.7、2004年4月7日

参考文献

[編集]
{{bottomLinkPreText}} {{bottomLinkText}}
PHIGS
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?