цикл — и
Запуск цикла... блок endloop .
Синтаксис
loop aL, i # |
---|
Где:
- aL — это регистр счетчика цикла , содержащий текущее число циклов.
- i# является константным целочисленным регистром. См. примечания.
Remarks
Версии вершинного шейдера | 1_1 | 2_0 | 2_x | 2_sw | 3_0 | 3_sw |
---|---|---|---|---|---|---|
loop | x | x | x | x | x |
- Регистр счетчика цикла (aL) содержит текущее число циклов и может использоваться для относительной адресации в постоянный целочисленный регистр (c#) или выходные регистры (o#) внутри блока цикла.
- 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, c2[aL]
endloop
Связанные темы