Palavras-chave
A Linguagem de Sombreador de Alto Nível da Microsoft (HLSL) reconhece as palavras nesta seção como palavras-chave. Palavras-chave são identificadores reservados pré-definidos que têm significados especiais. Você não pode usá-los como identificadores em seu aplicativo.
- AppendStructuredBuffer, asm, asm_fragment
- BlendState, bool, break, Buffer, ByteAddressBuffer
- case, cbuffer, centroid, class, column_major, compile, compile_fragment, CompileShader, const, continue, ComputeShader, ConsumStructuredBuffer
- default, DepthStencilState, DepthStencilView, discard, do, double, DomainShader, dword
- else, export, extern
- false, float, for, fxgroup
- GeometryShader, agrupado
- half, Hullshader
- se, inline,inout, InputPatch, int, interface
- line, lineadj, linear, LineStream
- matrix, min16float, min10float, min16int, min12int, min16uint
- namespace, nointerpolation, noperspective, NULL
- out, OutputPatch
- packoffset, pass, pixelfragment, PixelShader, point, PointStream, precise
- RasterizerState, RenderTargetView, return, register, row_major, RWBuffer, RWByteAddressBuffer, RWStructuredBuffer, RWTexture1D, RWTexture1DArray, RWTexture2D, RWTexture2DArray, RWTexture3D
- sample, sampler, SamplerState, SamplerComparisonState, shared, snorm, stateblock, stateblock_state, static, string, struct, switch, StructuredBuffer
- tbuffer, técnica, técnica10, técnica11, textura, Texture1D, Texture1DArray, Texture2D, Texture2DArray, Texture2DMS, Texture2DMSArray, Texture3D, TextureCube, TextureCubeArray, true, typedef, triangle, triangleadj, TriangleStream
- uint, uniforme, unorm, unsigned
- vector, vertexfragment, VertexShader, void, volatile
- while
Comentários
Esses tipos numéricos têm expansões escalares, vetoriais e de matriz palavra-chave:
- float, int, uint, bool
- min10float, min16float
- min12int, min16int
- min16uint
As expansões desses tipos numéricos seguem esse padrão, que usa float como exemplo:
Escalar
- FLOAT
Vetor
- float1, float2, float3, float4
Matriz
- float1x1, float1x2, float1x3, float1x4 float2x1, float2x2, float2x3, float2x4 float3x1, float3x2, float3x3, float3x4 float4x1, float4x2, float4x3, float4x4
O HLSL dá suporte à textura e ao sampler de letras minúsculas por motivos herdados. Em vez disso, para seus novos aplicativos, recomendamos que você use os novos objetos de textura da HLSL (Texture2D, Texture3D e assim por diante) e objetos sampler (SamplerState e SamplerComparisonState).
exportar
Use exportar para marcar as funções que você empacota em uma biblioteca.
Veja um exemplo:
export float identity(float x)
{
return x;
}
Marcando a função de identidade com a palavra-chave de exportação, você disponibiliza a função de identidade de uma biblioteca para vinculação posterior. Sem a marcação de exportação , a função de identidade não está disponível para vinculação posterior.
O compilador ignora o palavra-chave de exportação para compilação não biblioteca.
Observação
O palavra-chave de exportação requer o D3dcompiler_47.dll ou uma versão posterior da DLL.
Tópicos relacionados