Partilhar via


Método ID3DXPRTEngine::SetMeshMaterials

Define as propriedades do material de malha na cena 3D. Use esse método para especificar parâmetros de dispersão subsuperficial.

Sintaxe

HRESULT SetMeshMaterials(
  [in] const D3DXSHMATERIAL **ppMaterials,
  [in]       UINT           NumMeshes,
  [in]       UINT           NumChannels,
  [in]       BOOL           bSetAlbedo,
  [in]       FLOAT          fLengthScale
);

Parâmetros

ppMaterials [in]

Tipo: const D3DXSHMATERIAL**

Endereço de um ponteiro para as propriedades de material de malha desejadas. Consulte D3DXSHMATERIAL.

NumMeshes [in]

Tipo: UINT

Índice da malha na qual definir as propriedades do material.

NumChannels [in]

Tipo: UINT

Número de canais de cores a serem definidos na malha. Defina como 1 para especificar materiais cinzas (R = G = B) ou 3 para habilitar efeitos de sangramento de cor. Se você pretende alterar esse parâmetro, primeiro defina o albedo usando outro método como ID3DXPRTEngine::SetPerTexelAlbedo ou ID3DXPRTEngine::SetPerVertexAlbedo.

bSetAlbedo [in]

Tipo: BOOL

Se TRUE, define o albedo da malha como ppMaterials, substituindo todos os valores de texel e albedo de vértice existentes. Se FALSE, preservará todos os valores de texel e albedo de vértice existentes definidos por outros métodos; NumChannels deve corresponder ao parâmetro NumChannels usado para criar o buffer em D3DXCreatePRTBuffer ou D3DXCreatePRTBufferTex.

fLengthScale [in]

Tipo: FLOAT

Escala da cena 3D em relação a um cubo de 1 mm. Usado para cálculos de dispersão subsuperficial.

Valor retornado

Tipo: HRESULT

Se o método for bem-sucedido, o valor retornado será S_OK. Se o método falhar, o valor retornado poderá ser um dos seguintes: D3DERR_INVALIDCALL, E_OUTOFMEMORY.

Requisitos

Requisito Valor
parâmetro
D3DX9Mesh.h
Biblioteca
D3dx9.lib

Confira também

ID3DXPRTEngine