OpenGL: я должен всегда обрезать значения glColor * f сам? - PullRequest
4 голосов
/ 04 января 2011

Это может звучать глупо ... но мне было интересно, имеет ли значение, отправляю ли я значение больше 1.0f в функции glColor * f?

Старые карты / драйверы gfx справляются с этим по-разному? Использует ли OpenGL непосредственно значение цвета, которое я ему даю, или оно обрезает его самостоятельно? Должен ли я прекратить делать, если (r> 1.0f) r = 1.0f; ? Есть ли какая-либо опасность, что больше, чем 1,0f, может привести к непредсказуемому поведению?

Кажется, я не могу получить больше, чем 1.0f, чтобы сделать что-то другое.

Ответы [ 2 ]

4 голосов
/ 04 января 2011

С справочная страница :

"Ни значения с плавающей запятой, ни целые числа со знаком не ограничиваются диапазоном [0,1] до обновления текущего цвета. Однако компоненты цвета ограничиваются этим диапазоном до их интерполяции или записи в буфер цвета."

2 голосов
/ 04 января 2011

OpenGL автоматически фиксирует значения в диапазоне [0, 1].

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...