http://news.mynavi.jp/column/iphone/018/index.html
主に3つのグラフィックフレームワークがある。
*Cocoa touchグラフィックス
*Core Graphics (Quartz)
*OpenGL
,,Cocoa,Core Graphics,OpenGL
,Cocoaとの親和性,高,中,低
,機能,中,高,低
,パフォーマンス,低,中,高
まず、iPhoneアプリとのメインフレームワークであるCocoa touchとの親和性だが、もちろんこれはCocoa touchグラフィックスがいちばん高い。Core Graphicsも、CocoaのAPIを使って直接Core Graphics環境を取得することができるため、充分共存できる。これらに対してOpenGLは、Cocoaとの親和性はとても低い。Cocoaの描画とOpenGLの描画は、まったく別物と考え、また同一ビューで混合して使うのも避けた方がいい。
次に機能だが、汎用的なグラフィックスフレームワークの機能として考えると、Core Graphicsが一番高いと言える。例えば、様々な画像フォーマットのサポート、ベクトルベースの描画、フォントのサポート、PDFのサポートなどが含まれている。一般的なアプリケーションを作るために、重要な機能ばかりだ。これと比べると、OpenGLは3次元描画はサポートしているものの、他の機能は必要最低限に抑えられている。
ここまではOpenGLに対して辛口の評価であったが、もちろんこれらを補ってあまりある利点がある。それはパフォーマンスだ。OpenGLの描画パフォーマンスは、他の2つに比べて圧倒的に高い。ゲームのようなアプリケーションでは、これを最優先に判断すべきだろう。
{{category2 プログラミング言語,Objective-C}}