Freigeben über


Schleife : ps

Startet eine Schleife... endloop – ps block.

Syntax

Schleife aL, i #

 

Hierbei gilt:

Bemerkungen

Pixelshaderversionen 1_1 1_2 1_3 1_4 2_0 2_x 2_sw 3_0 3_sw
loop x x

 

  • Das Schleifenzählerregister (AL) enthält die aktuelle Schleifenanzahl und kann für die relative Adressierung im Eingabefarbregister (v#) innerhalb des Schleifenblocks verwendet werden.
  • i#.x gibt die Iterationsanzahl an. Der rechtliche Bereich ist [0, 255]. Beachten Sie, dass diese Anweisung den Wert von i#.x nicht erhöht oder verringert.
  • i#.y gibt den Anfangswert des Schleifenzählerregisters (AL ) an. Der rechtliche Bereich ist [0, 255]. Beachten Sie, dass diese Anweisung den Wert von i#.y nicht erhöht oder verringert.
  • i#.z gibt die Schritt-/Schrittgröße an. Der rechtliche Bereich ist [-128, 127].
  • i#.w wird nicht vom Schleifenblock verwendet und muss 0 sein.
  • Schleifenblöcke können geschachtelt sein. Weitere Informationen finden Sie unter Einschränkungen der Flusssteuerung.
  • Wenn er geschachtelt ist, bezieht sich der Wert des Schleifenzählerregisters (AL) auf den unmittelbar umschließenden Schleifenblock.
  • Schleifenblöcke dürfen sich entweder vollständig innerhalb eines if*-Blocks oder vollständig um ihn herum befinden. Es ist kein Straddling zulässig.

Beispiel

loop aL, i3
    add r1, r0, v2[ aL ]
endloop

Pixelshaderanweisungen