Я ожидал, что gl_Position автоматически гомогенизируется (делится на w), но, похоже, не работает .. Почему следующие результаты дают разные результаты?
1)
пустая функция() {
vec4 p;
... опущено ...
gl_Position = projectionMatrix * p;
}
2)
... так же, как и выше ...
p = projectionMatrix * p;
gl_Position = p / p.w;
Я думаю, что оба должны давать одинаковые результаты, но, похоже, это не так. 1 не работает, а 2 работает, как ожидалось. Может ли быть проблема точности? Я что-то пропустил? Это сводит меня с ума ... нужна помощь. Большое спасибо заранее!