2016-03-23 5 views
0

Я нашел код онлайн для шейдера, содержащего эти строки:Что делает оператор арифметики в HLSL?

float2 preRect; 
preRect.x = (IN.uv_MainTex.x > _RectMinX) - (IN.uv_MainTex.x > _RectMaxX); 

В языках на основе C (IN.uv_MainTex.x > _RectMinX) будет оценивать как логическое значение, но здесь это присваивающих числовое значение поплавка preRect.

Что это за линия & как это делается?

Thanks

+0

IIRC 'x> y' является сокращением для' take x, если оно больше y, иначе y'. –

+0

Отлично, спасибо – Absinthe

ответ

1

Комментарий, приведенный выше, неверен.

возвращение (a> b) - c;

эквивалентно:

возврата (A> B 1.0f: 0.0f) - с;

+0

Спасибо. Поскольку я понятия не имею, каков может быть ответ, я оставлю это другим, чтобы проголосовать :) – Absinthe

+0

Я боялся, что мой комментарий неверен. Следовательно, отказ от ИРИК и отсутствие ответа от меня. :) –

 Смежные вопросы

  • Нет связанных вопросов^_^