if pred – vs

Start eines , wenn pred - vs... else – vs... endif – vs block, mit der Bedingung, die aus dem Inhalt des Prädikatregisters übernommen wird.

Syntax

wenn [ ! ] pred.replicateSwizzle

Hierbei gilt:

  • [!] ein optionaler NOT-Modifizierer. Dadurch wird der Wert im Prädikatregister verändert.
  • pred ist das Prädikatregister p0. Weitere Informationen finden Sie unter Prädikatregister.
  • replicateSwizzle ist eine einzelne Komponente, die in alle vier Komponenten kopiert (oder repliziert) wird (swizzled). Gültige Komponenten sind: x, y, z, w oder r, g, b, a.

Hinweise

Vertex-Shaderversionen 1_1 2 _ 0 2 _ x 2 _ sw 3 _ 0 3 _ sw
if pred x x x x

Diese Anweisung wird verwendet, um einen Codeblock basierend auf einem Kanal des Prädikatregisters zu überspringen. Jeder , _ wenn pred-Block mit einer else- oder endif-Anweisung enden muss.

Es gelten folgende Beschränkungen:

, _ wenn vordefinierte Blöcke geschachtelt werden können. Dies zählt zur gesamten dynamischen Schachtelungstiefe zusammen mit if _ comp-Blöcken.

Wenn ein pred-Block einen Schleifenblock nicht umschließen kann, sollte er sich entweder vollständig darin oder _ umschließen.

Vertex-Shader-Anweisungen