phase - ps

La instrucción de fase marca la transición entre la fase 1 y la fase 2. Si no hay ninguna instrucción de fase, todo el sombreador se ejecuta como si fuera un sombreador de fase 2.

Esta instrucción solo se aplica a la versión 1_4.

Sintaxis

phase

Comentarios

Versiones del sombreador de píxeles 1_1 1_2 1_3 1_4 2_0 2_x 2_sw 3_0 3_sw
phase x

 

Las instrucciones del sombreador que se producen antes de la instrucción de fase son las instrucciones de la fase 1. Todas las demás instrucciones son las instrucciones de la fase 2. Al tener dos fases para instrucciones, se aumenta el número máximo de instrucciones por sombreador.

El efecto secundario lamentable de la transición de fase es que el componente alfa de los registros temporales no persiste en la transición. En otras palabras, el componente alfa debe reinicializarse después de la instrucción de fase.

Ejemplo

En este ejemplo se muestra cómo agrupar instrucciones como instrucciones de fase 1 o fase 2 dentro de un sombreador.

La instrucción de fase también se denomina normalmente marcador de fase porque marca la transición entre las instrucciones de la fase 1 y 2. En un sombreador de píxeles de la versión 1_4, si el marcador de fase no está presente, el sombreador se ejecuta como si estuviera ejecutándose en la fase 2. Esto es importante porque hay diferencias entre las instrucciones de la fase 1 y 2 y la disponibilidad del registro. Las diferencias se indican a lo largo de la sección de referencia.

ps_1_4
  // Add phase 1 instructions here

phase
  // Add phase 2 instructions here

Instrucciones del sombreador de píxeles