Я запускаю ошибку «из памяти» из OpenGL на glReadPixels() в условиях низкой памяти. Я пишу подключаемый модуль к программе с мощным механизмом кучи для таких ситуаций, но я понятия не имею, можно ли использовать OpenGL для ее использования для управления памятью приложения. Понятие о том, что это даже возможно, привлекло мое внимание через эту [хотя и датированную] нить по аналогичной проблеме в Mac OS [not X]: http://lists.apple.com/archives/Mac-opengl/2001/Sep/msg00042.htmlOpenGL «out of memory» на glReadPixels()
Я использую Windows XP и видел ее на нескольких картах NVidia. Меня также интересуют любые работы, которые я мог бы передать пользователям (в потоке упоминается «увеличение виртуальной памяти»).
Thanks, Sean
Вы были совершенно правы! В моем коде была ошибка, из-за которой код ошибки попадал на проверку ошибок на glReadPixels(). Спасибо, что вырвали меня из моей ментальной клетки на этом ... – spurserh
Как вы можете быть «совершенно уверены» glReadPixels ничего не выделяют? Это полностью зависит от реализации. – Bahbar
@Bahbar: GL_OUT_OF_MEMORY не означает, что malloc не удалось! Это связано с графической памятью, и каждый вызов OpenGL хорошо определяет каждый код ошибки, который может вернуться! Я «уверен», потому что не могу сказать, что конкретная реализация OpenGL соответствует спецификации; но если это так, glReadPixels не может вернуть GL_OUT_OF_MEMORY. – Luca