GLSL арифметический оператор - PullRequest
6 голосов
/ 18 января 2011

глупый вопрос в glsl, почему эта строка:

float x = 1 - gl_Color.x;

дает:

(26): error: Could not implicitly convert operands to arithmetic operator

1 Ответ

20 голосов
/ 18 января 2011

GLSL (до #version 120) не допускает неявных преобразований между целым числом и плавающей запятой. 1 - это целое число, а gl_Color.x - это число с плавающей точкой, поэтому вы получаете сообщение об ошибке. Вам нужно

float x = 1.0 - gl_Color.x;

вместо

...