Compartilhar via


Instrução Return

Uma instrução return sinaliza o fim de uma função.

return [value];

 

A instrução return mais simples retorna o controle da função para o programa de chamada; não retorna nenhum valor.

void main()
{
    return ;
}

No entanto, uma instrução return pode retornar um ou mais valores. Este exemplo retorna um valor literal:

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

Este exemplo retorna o resultado escalar de uma expressão.

return  light.enabled = true ;

Este exemplo retorna um vetor de quatro componentes construído a partir de uma variável local e um literal.

return  float4(color.rgb, 1) ;

Este exemplo retorna um vetor de quatro componentes que é construído com base no resultado retornado de uma função intrínseca, juntamente com valores literais.

float4 func(float2 a: POSITION): COLOR
{
    return float4(sin(length(a) * 100.0) * 0.5 + 0.5, sin(a.y * 50.0), 0, 1);
}

Este exemplo retorna uma estrutura que contém um ou mais membros.

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

Confira também

Funções (DirectX HLSL)