Freigeben über


return-Anweisung

Eine return-Anweisung signalisiert das Ende einer Funktion.

rückgabe [wert];

 

Die einfachste return-Anweisung gibt die Steuerung von der Funktion an das aufrufende Programm zurück. Es gibt keinen Wert zurück.

void main()
{
    return ;
}

Eine return-Anweisung kann jedoch einen oder mehrere Werte zurückgeben. In diesem Beispiel wird ein Literalwert zurückgegeben:

float main( float input : COLOR0) : COLOR0
{
    return 0;
}

In diesem Beispiel wird das skalare Ergebnis eines Ausdrucks zurückgegeben.

return  light.enabled = true ;

In diesem Beispiel wird ein Vektor mit vier Komponenten zurückgegeben, der aus einer lokalen Variablen und einem Literal erstellt wird.

return  float4(color.rgb, 1) ;

In diesem Beispiel wird ein Vektor mit vier Komponenten zurückgegeben, der aus dem Ergebnis erstellt wird, das von einer intrinsischen Funktion zurückgegeben wird, zusammen mit Literalwerten.

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 diesem Beispiel wird eine Struktur zurückgegeben, die mindestens ein Element enthält.

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;
};

Siehe auch

Funktionen (DirectX HLSL)