共用方式為


紋理類型

使用下列語法來宣告紋理變數。

類型名稱;

參數

項目 描述
類型
下列其中一種類型:紋理 (不具類型,適用于回溯相容性) 、Texture1D、Texture1DArray、Texture2D、Texture2D、Texture2D、Texture3D、TextureCube。 元素大小必須符合 4 32 位的數量。
名字
可唯一識別變數名稱的 ASCII 字串。

備註

使用紋理有三個部分。

  1. 宣告紋理變數。 這是使用上面所示的語法來完成。 例如,這些是有效的宣告。

    texture g_MeshTexture;
    

    - 或 -

    Texture2D g_MeshTexture;
    
  2. 宣告和初始化取樣器物件。 這在 Direct3D 9 和 Direct3D 10 中使用稍微不同的語法來完成。 如需 sampler 物件語法的詳細資訊,請參閱 Sampler Type (DirectX HLSL)

  3. 叫用著色器中的紋理函式。

Direct3D 9 與 Direct3D 10 之間的差異:

Direct3D 9 會使用 內部紋理函式來執行紋理 作業。 此範例來自BasicHLSL 範例,並使用 tex2D (s,t) (DirectX HLSL) 來執行紋理取樣。

Output.RGBColor = tex2D(MeshTextureSampler, In.TextureUV) * In.Diffuse;

Direct3D 10 會改用 樣板化紋理物件 。 以下是對等紋理作業的範例。

Output.RGBColor = g_MeshTexture.Sample(MeshTextureSampler, In.TextureUV) * In.Diffuse;

另請參閱

(DirectX HLSL)