Когда я визуализую текстуру (хранящуюся в связанном объекте фреймбуфера), имеет значение любой из следующих параметров текстуры?Render to texture - форматы и параметры текстуры?
GL_TEXTURE_WRAP_S
GL_TEXTURE_WRAP_T
GL_TEXTURE_MIN_FILTER
GL_TEXTURE_MAG_FILTER
Это также избыточно, чтобы генерировать mipmaps, не так ли? (Возможно, это глупый вопрос, но я просто убедился!)
Что относительно типов данных (параметр type
)? Должно ли type
должно быть GL_FLOAT
? Если нет, в чем разница между указанием type
как GL_FLOAT
и GL_UNSIGNED_BYTE
?
Кроме того, каждый документ, который я нашел в Интернете относительно информации Texture2D (например, https://www.opengl.org/sdk/docs/man/html/glTexImage2D.xhtml), отсутствует. (а именно GL_DEPTH_COMPONENT16/24/32
и GL_RGB16
флагов, другие источники пропускают намного больше).
Есть ли источник полной информации об этих товарах? (желательно для метода рендеринга текстуры)
Я не думаю, что эти параметры имеют какой-либо эффект при рендеринге текстуры. Да, mipmaps избыточны при рендеринге текстуры. «Тип» - это то, как сохраняются компоненты цвета. Нет, также имеет значение «GL_UNSIGNED_BYTE». Разница между ними потусторонняя, не так ли? '..._ FLOAT' сохраняет ваши цвета как четыре поплавка,' ..._ BYTE' сохраняет их как 4 байта.И если вы хотите получить полный документ, просто скачайте последнюю спецификацию профиля совместимости. – HolyBlackCat
Я спрашивал о типах, потому что в учебнике [this] (http://learnopengl.com/#!Advanced-Lighting/Deferred-Shading) автор устанавливает большинство текстур как 'GL_FLOAT', но по какой-то неизвестной причине он устанавливает последняя текстура как 'GL_UNSIGNED_BYTE'. Любая идея почему? – Pilpel
'..._ FLOAT' предлагает лучшую точность, но это часто избыточно, вы не увидите никакой разницы между ним и' ..._ BYTE' на большинстве мониторов. Но если результат используется в вычислениях, float может быть лучше. Возможно, это и есть причина. – HolyBlackCat