「Quartz」の版間の差分
編集の要約なし |
m Bot作業依頼: Apple関連記事の改名に伴うリンク修正依頼 (Apple|Apple) - log |
||
1行目: | 1行目: | ||
{{Otheruses||その他|クオーツ}}{{更新|date=2021年4月}}{{出典の明記|date=2008年2月}} |
{{Otheruses||その他|クオーツ}}{{更新|date=2021年4月}}{{出典の明記|date=2008年2月}} |
||
'''Quartz'''(クオーツ)は、[[ |
'''Quartz'''(クオーツ)は、[[Apple]]の[[オペレーティングシステム]] {{lang|en|[[macOS]]}} の描画コアエンジン。前身である{{lang|en|[[NeXT]]}}の[[Display PostScript|DPS]]に代わり、[[Portable Document Format|PDF]]ベースの描画モデルを採用したもの。三次[[ベジェ曲線]]を描画プリミティブとするベクトル型システムで、{{lang|en|[[QuickDraw]]}}との互換性はない。なお、QuickDrawは[[Carbon]]アプリケーションの互換性のため{{lang|en|macOS}}にも残されている。 |
||
細かく言うと、アプリケーションで個々のバッファに描画を行うプリミティブは{{lang|en|[[Quartz 2D]]}}と呼び、それらを最終的に[[Graphics Processing Unit|GPU]]のフレームバッファに合成する部分は{{読み仮名|{{lang|en|[[Quartz Compositor]]}}|クオーツ・コンポジター}}という。単に{{lang|en|Quartz}}という場合は、大抵{{lang|en|Quartz 2D}}のことである。現在の{{lang|en|Quartz}}の構造では、{{lang|en|Quartz 2D}}、{{lang|en|[[QuickDraw]]}}、{{lang|en|[[OpenGL]]}}、{{lang|en|[[QuickTime]]}}の各出力が最終的に{{lang|en|Quartz Compositor}}によって画面に描画される形になっている。 |
細かく言うと、アプリケーションで個々のバッファに描画を行うプリミティブは{{lang|en|[[Quartz 2D]]}}と呼び、それらを最終的に[[Graphics Processing Unit|GPU]]のフレームバッファに合成する部分は{{読み仮名|{{lang|en|[[Quartz Compositor]]}}|クオーツ・コンポジター}}という。単に{{lang|en|Quartz}}という場合は、大抵{{lang|en|Quartz 2D}}のことである。現在の{{lang|en|Quartz}}の構造では、{{lang|en|Quartz 2D}}、{{lang|en|[[QuickDraw]]}}、{{lang|en|[[OpenGL]]}}、{{lang|en|[[QuickTime]]}}の各出力が最終的に{{lang|en|Quartz Compositor}}によって画面に描画される形になっている。 |
2021年5月20日 (木) 10:56時点における版
Quartz(クオーツ)は、Appleのオペレーティングシステム macOS の描画コアエンジン。前身であるNeXTのDPSに代わり、PDFベースの描画モデルを採用したもの。三次ベジェ曲線を描画プリミティブとするベクトル型システムで、QuickDrawとの互換性はない。なお、QuickDrawはCarbonアプリケーションの互換性のためmacOSにも残されている。
細かく言うと、アプリケーションで個々のバッファに描画を行うプリミティブはQuartz 2Dと呼び、それらを最終的にGPUのフレームバッファに合成する部分は
Quartzの機能は、Objective-CからはCocoa APIを通して、またC/C++言語からはCarbon APIを通して利用できる。またアップルはQuartzのスクリプト言語バインディングのひとつとしてPythonのバインディングを公式に用意している。
- 解像度非依存のベクトルベース・システム
- 浮動小数点による数学座標系
- 常時アンチエイリアシング
- アルファチャンネルのサポート
- オブジェクト指向のAPI
- Unicodeに対応した多国語文字描画ルーチン (Apple Type Services for Unicode Imaging)
Mac OS X v10.2 (Jaguar) 以降では、環境に応じてGPUのジオメトリ演算ユニットを使って、 CPUの負荷を軽減するQuartz Extremeが実装された。これはQuartz Compositorのバッファ合成をGPU内部で行うシステムであり、これによりOpenGLとの混在描画も可能となった。
Mac OS X v10.4 (Tiger) ではGPUのプログラマブルシェーダを使って、描画演算をほぼ全てビデオチップ内で実行できるQuartz 2D Extreme(Mac OS X v10.5(Leopard)でQuartzGLに名称変更[1])が隠し機能として搭載されている(多くの不具合を抱えたまま実装されオフにされており、正式にはサポートされていない[1])。
DPSからQuartzへと実装が変更された理由は、一説にはアドビのライセンス料が高額だったためといわれていた。しかし、実際にはDPSでは機能が足りず、現代的な描画システムとしてふさわしいリッチなものが必要であったことが主な理由である。[要出典]
脚注
- ^ a b “OS X ハッキング!(298) 名前が変わった「QuartzGL」でSafariが速くなる?”. マイナビニュース (2008年11月4日). 2019年11月6日閲覧。