Я создаю просмотрщик изображений, используя openGL, и столкнулся с ситуацией, когда мне нужно загрузить очень большие (> 50 МБ) изображения для просмотра. Я загружаю изображения в виде текстур и отображаю их в GL_QUAD, который отлично работал для небольших изображений, но на больших изображениях загрузка не удалась, и я получил пустой прямоугольник. До сих пор я реализовал очень уродливый хакер, который использует другую программу для преобразования изображений в меньшие версии с более низким разрешением, которые можно загрузить, но я ищу более элегантное решение. Я обнаружил, что openGL имеет функцию сжатия текстур , но я не могу заставить ее работать. Когда я звоню
glTexImage2D(GL_TEXTURE_2D, 0, GL_COMPRESSED_RGBA_ARB, t.width(), t.height(), 0, GL_RGBA, GL_UNSIGNED_BYTE, t.bits());
Я получаю сообщение об ошибке компилятора " GL_COMPRESSED_RGBA_ARB undeclared". Что я делаю неправильно? Есть ли библиотека, по которой я скучаю? И вообще, это жизнеспособное решение моей проблемы?
Я использую Qt Creator на компьютере под управлением Windows Vista с графической картой NVIDIA Quadro FX 1700.