Есть ли способ подавить предупреждение в GLSL? - PullRequest
0 голосов
/ 12 марта 2012

Мой шейдер неявно использует int для float, что приводит к предупреждению C7011.

int i = 1;
float f = i;

Мне все равно, и я никогда не буду заботиться об этом предупреждении. Однако при попытке отладки моего шейдера мне нужно пройтись по куче этих предупреждений, чтобы найти ошибку. Есть ли способ подавить эти предупреждения?

Я пытался найти варианты для #pragma, но ничего не смог найти.

Заранее спасибо.

1 Ответ

2 голосов
/ 12 марта 2012

Не уверен, что это вам сильно поможет, но, возможно, посмотрите краткий справочник по версии glsl, которую вы используете.Похоже, согласно странице 7 краткого справочного листа GLSL 4.20, найденного по адресу http://www.khronos.org/files/opengl42-quick-reference-card.pdf,, вы можете просто использовать float f = float (i), думая, что я не на компьютере, я могу провести текущий тест, которыйon.

Если это не сработает, вы можете проверить функцию intBitsToFloat, найденную на странице 9 того же справочного листа.Хотя он существует только в glsl версии 3.3 и выше, если вы используете эту версию или выше, она может дать вам необходимое преобразование.

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