Loading article…
コンピュータグラフィックスにおける保持モードは、グラフィックスライブラリにおけるAPI設計の主要なパターンであり、[ 1 ]
即時モードは代替アプローチです。歴史的に、保持モードはGUIライブラリで主流のスタイルでしたが、[ 4 ]両方とも同じライブラリ内で共存でき、実際には必ずしも排他的ではありません。[ 5 ]

リテインドモードでは、クライアント呼び出しは直接実際のレンダリングを引き起こすのではなく、ライブラリのデータ空間内に保持されている抽象的な内部モデル(通常はオブジェクトのリスト)を更新します。これにより、ライブラリは実際のレンダリングと関連オブジェクトの処理を最適化できます。[ 2 ]
レンダリングを最適化するためのテクニックには、以下のようなものがあります。
同じライブラリ内で即時モードと共存する例としては、OpenGLがあります。[ 10 ] OpenGL には、変更されていないデータを再送信することなく、以前に定義されたサーバー側オブジェクト (テクスチャ、頂点バッファとインデックスバッファ、シェーダーなど) を使用できる即時モード関数があります。[ 11 ] [ 12 ]
保持モードレンダリングシステムの例としては、Windows Presentation Foundation [ 2 ] 、macOS のSceneKit [ 13 ]、PHIGSなどがあります。

リテインド モードは長年標準となっています。ほとんどすべての GUI はリテインド モードです。
、SceneKitとSpriteKitは保持モードAPIである。