Device.SetTexture Method

Language:

How Do I...?

Assigns a texture to a device stage.

Definition

Visual Basic Public Sub SetTexture( _
    ByVal stage As Integer, _
    ByVal texture As BaseTexture _
)
C# public void SetTexture(
    int stage,
    BaseTexture texture
);
C++ public:
void SetTexture(
    int stage,
    BaseTexturetexture
);
JScript public function SetTexture(
    stage : int,
    texture : BaseTexture
);

Parameters

stage System.Int32
Index value for the device stage.
texture Microsoft.DirectX.Direct3D.BaseTexture
A BaseTexture object that represents the texture being set.

Remarks

This method is not allowed if the texture is created with a pool type of Scratch, nor is it allowed with a pool type of SystemMemory, unless DeviceCaps.SupportsTextureSystemMemory is set to true.

Exceptions
InvalidCallException The method call is invalid. For example, a method's parameter might contain an invalid value.

How Do I...?

Render Mesh with Texture using HLSL

This example demonstrates how to render a mesh texture using the high-level shader language (HLSL).

In the following C# code example, the following assumptions are made:

  1. effect is a valid HLSL Effect with its technique set.
  2. The code occurs between calls to Effect.BeginPass and Effect.EndPass.
  3. mesh is a valid Mesh.
  4. meshTextures is a valid array of textures for the mesh.

              [C#]
              
effect.SetValue("WorldViewProjection", worldMatrix); // Iterate through each subset and render with its texture for (int m = 0; m < meshTextures.Length; ++m) { effect.SetValue("SceneTexture", meshTextures[m])); effect.CommitChanges(); mesh.DrawSubset(m); }

See Also


Send comments about this topic to Microsoft. © Microsoft Corporation. All rights reserved.

Feedback? Please provide us with your comments on this topic.
For more help, visit the DirectX Developer Center