Tipo de textura
Use a sintaxe a seguir para declarar uma variável de textura.
Nome do Tipo; |
Parâmetros
Item | Descrição |
---|---|
Tipo |
Um dos seguintes tipos: textura (sem tipo, para compatibilidade com versões anteriores), Texture1D, Texture1DArray, Texture2D, Texture2DArray, Texture3D, TextureCube. O tamanho do elemento deve caber em quantidades de 4 32 bits. |
Nome |
Uma cadeia de caracteres ASCII que identifica exclusivamente o nome da variável. |
Comentários
Há três partes para usar uma textura.
Declarando uma variável de textura. Isso é feito com a sintaxe mostrada acima. Por exemplo, são declarações válidas.
texture g_MeshTexture;
- ou -
Texture2D g_MeshTexture;
Declarando e inicializando um objeto sampler. Isso é feito com uma sintaxe ligeiramente diferente no Direct3D 9 e no Direct3D 10. Para obter detalhes sobre a sintaxe do objeto sampler, consulte Tipo de sampler (DirectX HLSL).
Invocando uma função de textura em um sombreador.
Diferenças entre o Direct3D 9 e o Direct3D 10:
O Direct3D 9 usa funções de textura intrínsecas para executar operações de textura. Este exemplo é do Exemplo BasicHLSL e usa tex2D(s, t) (DirectX HLSL) para executar a amostragem de textura.
Output.RGBColor = tex2D(MeshTextureSampler, In.TextureUV) * In.Diffuse;
Em vez disso, o Direct3D 10 usa objetos de textura com modelo . Aqui está um exemplo da operação de textura equivalente.
Output.RGBColor = g_MeshTexture.Sample(MeshTextureSampler, In.TextureUV) * In.Diffuse;