loop — ps
Запускает цикл... endloop — блок ps .
Синтаксис
loop aL, i # |
---|
Где:
- aL — это регистр счетчика цикла , содержащий текущее число циклов.
- i# — это константный целочисленный регистр. См. примечания.
Remarks
Версии шейдера пикселей | 1_1 | 1_2 | 1_3 | 1_4 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|---|---|---|
loop | x | x |
- Регистр счетчика цикла (aL) содержит текущее число циклов и может использоваться для относительной адресации входного цветового регистра (v#) внутри блока цикла.
- i#.x указывает число итераций. Допустимый диапазон — [0, 255]. Обратите внимание, что эта инструкция не увеличивает и не уменьшает значение i#.x.
- i#.y задает начальное значение регистра счетчика циклов (aL). Допустимый диапазон — [0, 255]. Обратите внимание, что эта инструкция не увеличивает и не уменьшает значение i#.y.
- i#.z указывает размер шага или шага. Допустимый диапазон — [-128, 127].
- i#.w не используется блоком цикла и должен иметь значение 0.
- Блоки цикла могут быть вложенными. См. раздел Ограничения управления потоком.
- При вложенном значении значение регистра счетчика цикла (aL) относится к непосредственно включаемого блока цикла.
- Блоки цикла могут находиться либо полностью внутри блока if*, либо полностью его окружать. Не допускается перемыкание.
Пример
loop aL, i3
add r1, r0, v2[ aL ]
endloop
Связанные темы