/// <summary> /// Sets the textures. /// </summary> /// <param name="context">The context.</param> /// <param name="texture">The textures.</param> public void SetTextures(DeviceContext context, Texture[] textures) { Contract.Requires<ArgumentNullException>(context != null, "context"); Contract.Requires<ArgumentNullException>(textures != null, "textures"); if (textures.Length == 1) { SetTexture(context, textures[0]); } else { ShaderResourceView[] views = new ShaderResourceView[textures.Length]; for (int i = 0; i < textures.Length; i++) { views[i] = textures[i].TextureView; } context.PixelShader.SetShaderResources(views, 0, textures.Length); } }
/// <summary> /// Sets the texture. /// </summary> /// <param name="context">The context.</param> /// <param name="texture">The texture.</param> public void SetTexture(DeviceContext context, Texture texture) { Contract.Requires<ArgumentNullException>(context != null, "context"); Contract.Requires<ArgumentNullException>(texture != null, "texture"); context.PixelShader.SetShaderResource(texture.TextureView, 0); }