Istruzione return
Un'istruzione restituita segnala la fine di una funzione.
return [value];
L'istruzione restituita più semplice restituisce il controllo dalla funzione al programma chiamante; non restituisce alcun valore.
void main()
{
return ;
}
Tuttavia, un'istruzione restituita può restituire uno o più valori. In questo esempio viene restituito un valore letterale:
float main( float input : COLOR0) : COLOR0
{
return 0;
}
In questo esempio viene restituito il risultato scalare di un'espressione.
return light.enabled = true ;
In questo esempio viene restituito un vettore a quattro componenti costruito da una variabile locale e da un valore letterale.
return float4(color.rgb, 1) ;
In questo esempio viene restituito un vettore a quattro componenti costruito dal risultato restituito da una funzione intrinseca, insieme ai valori letterali.
float4 func(float2 a: POSITION): COLOR
{
return float4(sin(length(a) * 100.0) * 0.5 + 0.5, sin(a.y * 50.0), 0, 1);
}
In questo esempio viene restituita una struttura contenente uno o più membri.
float4x4 WorldViewProj;
struct VS_OUTPUT
{
float4 Pos : POSITION;
};
VS_OUTPUT VertexShader_Tutorial_1(float4 inPos : POSITION )
{
VS_OUTPUT out;
out.Pos = mul(inPos, WorldViewProj );
return out;
};
Vedi anche