This article needs additional citations for
verification. (September 2014) |
Retained mode in computer graphics is a major pattern of API design in graphics libraries, [1] in which
Immediate mode is an alternative approach. Historically, retained mode has been the dominant style in GUI libraries; [4] however, both can coexist in the same library and are not necessarily exclusionary in practice. [5]
In retained mode the client calls do not directly cause actual rendering, but instead update an abstract internal model (typically a list of objects) which is maintained within the library's data space. This allows the library to optimize when actual rendering takes place along with the processing of related objects. [2]
Some techniques to optimize rendering include:
Example of coexistence with immediate mode in the same library is OpenGL.[ dubious ][ failed verification] [10] OpenGL has immediate mode functions that can use previously defined server side objects ( textures, vertex buffers and index buffers, shaders, etc.) without resending unchanged data. [11] [12]
Examples of retained mode rendering systems include Windows Presentation Foundation, [2] SceneKit on macOS, [13] and PHIGS.
Retained mode has been the standard for years. Just about every GUI is in retained mode.
SceneKit and SpriteKit on the other hand are retained-mode APIs
This article needs additional citations for
verification. (September 2014) |
Retained mode in computer graphics is a major pattern of API design in graphics libraries, [1] in which
Immediate mode is an alternative approach. Historically, retained mode has been the dominant style in GUI libraries; [4] however, both can coexist in the same library and are not necessarily exclusionary in practice. [5]
In retained mode the client calls do not directly cause actual rendering, but instead update an abstract internal model (typically a list of objects) which is maintained within the library's data space. This allows the library to optimize when actual rendering takes place along with the processing of related objects. [2]
Some techniques to optimize rendering include:
Example of coexistence with immediate mode in the same library is OpenGL.[ dubious ][ failed verification] [10] OpenGL has immediate mode functions that can use previously defined server side objects ( textures, vertex buffers and index buffers, shaders, etc.) without resending unchanged data. [11] [12]
Examples of retained mode rendering systems include Windows Presentation Foundation, [2] SceneKit on macOS, [13] and PHIGS.
Retained mode has been the standard for years. Just about every GUI is in retained mode.
SceneKit and SpriteKit on the other hand are retained-mode APIs