Для рендеринга у меня есть текущий контекст GL, связанный с окном. В случае, когда приложение отображает несколько сцен (например, с использованием накопления или разных видовых экранов), я считаю, что вполне нормально использовать один и тот же контекст.
Мой вопрос: зачем мне использовать несколько контекстов GL? Я читал в спецификации расширения ARB_framebuffer_object, что вызовы MakeCurrent могут быть дорогими, и в случае присутствия расширения ARB_framebuffer_object я могу выполнить рендеринг в общем буфере без использования MakeCurrent.
По-видимому, единственной причиной использования множественного контекста GL является избежание установки состояния контекста (хранилища пикселей, передачи, размера точки, полигонального шаблона...) или наличия доступной конфигурации нескольких буферов визуализации (один контекст с накоплением, другой без). Как мне решить, когда лучше использовать альтернативный контекст вместо установки состояния контекста?