Я искал в Интернете образец кода, который показывает, как использовать pbuffer с GLUT, но я ничего не нашел ...
Меня озадачивает переключение контекста между pbuffer и окном рендеринга. Я предполагаю, что мне придется использовать glutSetWindow для переключения между двумя поверхностями рендеринга, но я не слишком уверен в деталях.
Может кто-нибудь объяснить мне, как использовать pbuffer с GLUT?





Короткий ответ: не существует способа хорошо сделать это.
Более длинный ответ заключается в том, что pbuffers не являются кроссплатформенными, поэтому вам обязательно нужно использовать API-интерфейсы для конкретной платформы для доступа к ним. То, как вы переключаетесь между поверхностями рендеринга, зависит от вашей платформы; в Windows вы должны использовать wglMakeCurrent () и тому подобное.
Мета-ответ состоит в том, что вам следует избегать pbuffers, если это вообще возможно - FBOs предоставляют аналогичную функциональность, но без проблем такого рода, а также с лучшей производительностью.
Ответ Майка Ф. привел меня к хорошему объяснение от ATI по поводу буферов. Спасибо!
Я не нашел упоминания о функциях GLUT для переключения контекста, только о функциях wgl *. Я, должно быть, неправильно понял цель glutSetWindow.
Я бы использовал FBO в мгновение ока, но целевая графическая карта поддерживает только буферы ... Платформа - Windows (MingW, среда MSYS).