コンテンツにスキップ

「Quartz」の版間の差分

出典: フリー百科事典『ウィキペディア(Wikipedia)』
削除された内容 追加された内容
編集の要約なし
Cewbot (会話 | 投稿記録)
1行目: 1行目:
{{Otheruses||その他|クオーツ}}{{更新|date=2021年4月}}{{出典の明記|date=2008年2月}}
{{Otheruses||その他|クオーツ}}{{更新|date=2021年4月}}{{出典の明記|date=2008年2月}}
'''Quartz'''(クオーツ)は、[[アップル (企業)|アップル]]の[[オペレーティングシステム]] {{lang|en|[[macOS]]}} の描画コアエンジン。前身である{{lang|en|[[NeXT]]}}の[[Display PostScript|DPS]]に代わり、[[Portable Document Format|PDF]]ベースの描画モデルを採用したもの。三次[[ベジェ曲線]]を描画プリミティブとするベクトル型システムで、{{lang|en|[[QuickDraw]]}}との互換性はない。なお、QuickDrawは[[Carbon]]アプリケーションの互換性のため{{lang|en|macOS}}にも残されている。
'''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 の描画コアエンジン。前身であるNeXTDPSに代わり、PDFベースの描画モデルを採用したもの。三次ベジェ曲線を描画プリミティブとするベクトル型システムで、QuickDrawとの互換性はない。なお、QuickDrawはCarbonアプリケーションの互換性のためmacOSにも残されている。

細かく言うと、アプリケーションで個々のバッファに描画を行うプリミティブはQuartz 2Dと呼び、それらを最終的にGPUのフレームバッファに合成する部分はQuartz Compositorクオーツ・コンポジターという。単にQuartzという場合は、大抵Quartz 2Dのことである。現在のQuartzの構造では、Quartz 2DQuickDrawOpenGLQuickTimeの各出力が最終的にQuartz Compositorによって画面に描画される形になっている。

Quartzの機能は、Objective-CからはCocoa APIを通して、またC/C++言語からはCarbon APIを通して利用できる。またアップルはQuartzスクリプト言語バインディングのひとつとしてPythonのバインディングを公式に用意している。

Mac OS X v10.2 (Jaguar) 以降では、環境に応じてGPUのジオメトリ演算ユニットを使って、 CPUの負荷を軽減するQuartz Extremeが実装された。これはQuartz Compositorのバッファ合成をGPU内部で行うシステムであり、これによりOpenGLとの混在描画も可能となった。

Mac OS X v10.4 (Tiger) ではGPUのプログラマブルシェーダを使って、描画演算をほぼ全てビデオチップ内で実行できるQuartz 2D ExtremeMac OS X v10.5(Leopard)でQuartzGLに名称変更[1])が隠し機能として搭載されている(多くの不具合を抱えたまま実装されオフにされており、正式にはサポートされていない[1])。

DPSからQuartzへと実装が変更された理由は、一説にはアドビのライセンス料が高額だったためといわれていた。しかし、実際にはDPSでは機能が足りず、現代的な描画システムとしてふさわしいリッチなものが必要であったことが主な理由である。[要出典]

脚注

  1. ^ a b OS X ハッキング!(298) 名前が変わった「QuartzGL」でSafariが速くなる?”. マイナビニュース (2008年11月4日). 2019年11月6日閲覧。

関連項目