Можно ли заставить графический процессор использовать highp float
s в шейдерах, когда используется версия OpenGL 2.0? Я знаю, что прецизионные модификаторы - это, в основном, концепция GLES, но float
s, похоже, по умолчанию используют mediump
на рабочем столе, который мне предоставили для тестирования, и это сводит меня с ума.
Я наткнулся на эту проблему, выполняя свой проект GL под Win10 с графическим процессором GTX1070 (версия драйвера 23.21.13-9135). Я даже не установил #version
в своих шейдерах, поэтому я ожидал, что точность будет автоматически увеличена.
AFAIK, стандарт OpenGL 2.x не определяет никаких способов намекает графическому процессору, что по крайней мере 20 из 24 битов мантиссы значимы (передача целых чисел через числа с плавающей запятой, поскольку GL 2.0 не может работать с целыми числами изначально), но это Впервые за три с половиной года я видел, как настольные графические процессоры совершали подобные действия, поэтому я даже не думал, что это возможно.
Требуется помощь.