(Translated by https://www.hiragana.jp/)
Quartz Compositor - Wikipedia コンテンツにスキップ

Quartz Compositor

出典しゅってん: フリー百科ひゃっか事典じてん『ウィキペディア(Wikipedia)』

Quartz CompositormacOSウィンドウシステムQuartzフレームワークやQuartzファミリのレンダラー生成せいせいラスタライズしたグラフィックスを管理かんり表示ひょうじする役割やくわりになう。

概要がいよう

[編集へんしゅう]

Quartz Compositorは、生成せいせいされたビットマップ画像がぞうビデオカードのメモリへの配置はいち単独たんどく管理かんりする。Quartz 2DOpenGLCore ImageQuickTimeなどが出力しゅつりょくしたビットマップは一旦いったん特定とくていのメモリ位置いち、すなわち「バッキングストア」にかれる。Compositor はバッキングストアからデータをみ、それらから画面がめん全体ぜんたいのイメージをたてて、ビデオカードのフレームバッファにそのイメージをむ。Quartz Compositorはラスタ形式けいしきのデータだけをり、フレームバッファに直接ちょくせつアクセスする唯一ゆいいつのプロセスとして動作どうさする[1]

個々ここのウィンドウの管理かんりにおいては、Quartz Compositorはそのウィンドウのビットマップ画像がぞう位置いち情報じょうほうをレンダラーからる。レンダラーの選択せんたくはアプリケーションに一任いちにんされているが、通常つうじょうはQuartz 2Dを使用しようする。Quartz Compositorは「視覚しかくミキシングボード」として動作どうさし、そのウィンドウを画面がめん全体ぜんたいのシーンに追加ついかする。

Quartz Compositorはウィンドウマネージャのような役割やくわりたし、キー押下おうかやマウスクリックといったイベントをイベントキューっている。Quartz Compositorはそのキューからイベントを取出とりだし、そのイベントが発生はっせいしたウィンドウに対応たいおうするプロセスを特定とくていし、そのプロセスにイベントをわた[2]

Quartz Extreme

[編集へんしゅう]

Mac OS X v10.2Quartz Extreme導入どうにゅうされた。これは、Quartz CompositorのGPUアクセラレーション機能きのうである。Quartz Extremeを使つかうと、シーンの合成ごうせいCPUのサイクルをまった使つかわなくなる。Quartz Compositorは、描画びょうがみのバッキングストアをOpenGLのテクスチャマップまたはサーフェイスにカプセルし、GPUを使つかって動作どうさする。すると、GPUはそのサーフェイスやマップを合成ごうせいして最終さいしゅうてきイメージをつくり、自身じしんのフレームバッファにそれを供給きょうきゅうする。

Quartz ExtremeはOpenGLコマンドだけを使つかい、AGP 2Xかそれ以上いじょうのバス(AGP 4X、8X、PCI Express)に接続せつぞくされたグラフィックスカードを必要ひつようとする。また、レンダラー(たとえばQuartz 2D)にはサイズ制限せいげんがないため、グラフィックスカードは任意にんいおおきさのテクスチャやマップをサポートしている必要ひつようがある[1]以下いかグラフィックスカード搭載とうさいしたMacシステムでは自動的じどうてき有効ゆうこうとなる[3]

QuartzGLMac OS X v10.4ではQuartz 2D Extreme)は、Quartz 2D APIようGPUアクセラレーション機能きのうである。デフォルトではMac OS X v10.4でもMac OS X v10.6でも有効ゆうこうになっていない。しかし、macOSデベロッパーツールにある "quartz debug" アプリケーションを使つかうと、どちらのバージョンでも有効ゆうこうにできる。ただし、AppleはQuartzGLを正式せいしきサポートしていないので、quartz debugユーティリティを終了しゅうりょうさせると同時どうじ無効むこうとなる。ワークアラウンドとしてquartz debugユーティリティを強制きょうせい終了しゅうりょうさせるとQuartzGLを有効ゆうこうのままにしておくことも可能かのうである。

Leopardでは、アプリケーションのinfo.plistにQuartzGLEnabledというエントリを追加ついかでき、アプリケーション単位たんい有効ゆうこう可能かのうである。ただし、そのまえにシステム全体ぜんたい有効ゆうこうにしておかないと、アプリケーション単位たんいの "QuartzGLEnabled" も効果こうかがない。

Core ImageをサポートしているグラフィックスカードならQuartzGLもサポートできる。

脚注きゃくちゅう出典しゅってん

[編集へんしゅう]
  1. ^ a b ArsTechnica - Mac OS X 10.4 Tiger - Quartz”. 2007ねん2がつ12にち閲覧えつらん
  2. ^ Apple - Developer - Mac OS X Technology Overview: Graphics and Multimedia Technologies”. 2009ねん7がつ5にち閲覧えつらん
  3. ^ Apple - Mac OS X 10.4: Requirements for Quartz Extreme and Core Image graphics”. 2007ねん2がつ12にち閲覧えつらん

関連かんれん項目こうもく

[編集へんしゅう]

外部がいぶリンク

[編集へんしゅう]