跳转到内容

草稿:保留模式

维基百科,自由的百科全书
保留模式图形 API 的示意图
立即模式图形 API 的示意图

计算机图形学中的保留模式是指一种主流的图形库API设计模式

保留模式下,客户端不会直接引发实际渲染,而是更新由图形库负责管理的的抽象内部模型(通常是对象列表)。这使得图形库能够在实际渲染时以及处理相关对象时进行优化,同时也减轻了客户端维护相关场景对象的负担。 [1]

图形库优化渲染的一些技术包括:

  • 管理双缓冲[2] [3]
  • 处理隐藏表面(如背面剔除[4]、遮挡剔除(深度缓冲[5]
  • 仅传输发生变化的数据

另一种设计模式是立即模式,即客户端对图形库的调用会直接引发渲染。从历史上看,保留模式一直是GUI库中的主导风格。


使用保留模式的渲染系统有Windows Presentation Foundation 、macOS 上的SceneKit [1] [6]、 和PHIGS 。


扩展阅读

[编辑]

参考

[编辑]
  1. ^ 1.0 1.1 Quinn Radich. Retained Mode Versus Immediate Mode. Win32 apps. Microsoft. May 30, 2018 [21 December 2019]. 
  2. ^ OpenGL double buffering. [7 May 2020]. 
  3. ^ DirectX double buffering. [7 May 2020]. 
  4. ^ OpenGL face culling. [7 May 2020]. 
  5. ^ DirectX occlusion culling. [7 May 2020]. 
  6. ^ Weiher, Marcel. iOS and macOS Performance Tuning: Cocoa, Cocoa Touch, Objective-C, and Swift. Addison-Wesley Professional. Feb 24, 2017 [22 December 2019]. ISBN 9780133085532. SceneKit and SpriteKit on the other hand are retained-mode APIs