유지 모드
Retained mode컴퓨터 그래픽스의 유지 모드는 그래픽 [1]라이브러리의 API 설계의 주요 패턴입니다.
- 클라이언트 대신 그래픽 라이브러리는 렌더링할 장면(렌더링 프리미티브의 완전한 객체 모델)을 유지합니다.
- 클라이언트의 그래픽스 라이브러리 호출은 실제 렌더링을 직접 발생시키는 것이 아니라 [2]그래픽스 라이브러리에 의해 관리되고 유지되는 리소스에 대한 광범위한 간접적 표현을 사용합니다.그것은 더블 버퍼링의 사용을 배제하지 않는다.
즉시 모드는 대체 접근법입니다.지금까지 유지 모드는 GUI [3]라이브러리에서 지배적인 스타일이었지만, 같은 라이브러리에서 공존할 수 있어 실제로는 [4]반드시 제외되는 것은 아닙니다.
개요
유지 모드에서는 클라이언트 호출이 실제 렌더링을 직접 발생시키지 않고 라이브러리의 데이터 공간 내에 유지되는 추상 내부 모델(일반적으로 개체 목록)을 업데이트합니다.이를 통해 라이브러리는 실제 렌더링이 수행되는 시기를 관련 [2]객체의 처리와 함께 최적화할 수 있습니다.
렌더링을 최적화하는 몇 가지 기술은 다음과 같습니다.
같은 라이브러리에서 즉시 모드와의 공존의 예로는 OpenGL이 [dubious ][failed verification][9]있습니다.OpenGL에는 변경되지 않은 데이터를 [10][11]재발송하지 않고 이전에 정의된 서버 측 객체(텍스트, 정점 버퍼 및 인덱스 버퍼, 셰이더 등)를 사용할 수 있는 즉시 모드 기능이 있습니다.
유지 모드 렌더링 시스템의 예로는 Windows Presentation Foundation,[2] MacOS의 [12]SceneKit, PHIGS 등이 있습니다.
「 」를 참조해 주세요.
레퍼런스
- ^ Jin, Zhefan (May 2006). "Retained-Mode Parallel Graphics Rendering For Cooperative Design Environments". 2006 10th International Conference on Computer Supported Cooperative Work in Design: 1–6. doi:10.1109/CSCWD.2006.253142. ISBN 1-4244-0164-X. S2CID 5825966.
- ^ a b c Quinn Radich (May 30, 2018). "Retained Mode Versus Immediate Mode". Win32 apps. Microsoft. Retrieved 21 December 2019.
- ^ Feldmeier, Alex (October 12, 2013). "GUI Programming". UWP Computer Science and Software Engineering Technical Report. Retrieved 22 December 2019.
Retained mode has been the standard for years. Just about every GUI is in retained mode.
- ^ QuinnRadich. "Retained Mode Versus Immediate Mode - Win32 apps". docs.microsoft.com. Retrieved 2020-08-21.
- ^ "OpenGL double buffering". Retrieved 7 May 2020.
- ^ "DirectX double buffering". Retrieved 7 May 2020.
- ^ "OpenGL face culling". Retrieved 7 May 2020.
- ^ "DirectX occlusion culling". Retrieved 7 May 2020.
- ^ "OpenGL". Retrieved 4 May 2020.
- ^ "OpenGL Driver Support". NVIDIA Developer. 2013-08-19. Retrieved 2020-08-21.
- ^ "OpenGL - The Industry's Foundation for High Performance Graphics". The Khronos Group. 2011-07-19. Retrieved 2020-08-21.
- ^ Weiher, Marcel (Feb 24, 2017). iOS and macOS Performance Tuning: Cocoa, Cocoa Touch, Objective-C, and Swift. Addison-Wesley Professional. ISBN 9780133085532. Retrieved 22 December 2019.
SceneKit and SpriteKit on the other hand are retained-mode APIs