ID3DXPRTEngine::SetMeshMaterials-Methode

Legt Gitternetzmaterialeigenschaften in der 3D-Szene fest. Verwenden Sie diese Methode, um Subsurface Scattering-Parameter anzugeben.

Syntax

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

Parameter

ppMaterials [ In]

Typ: const D3DXSHMATERIAL * *

Adresse eines Zeigers auf die gewünschten Gitternetzmaterialeigenschaften. Siehe D3DXSHMATERIAL.

NumMeshes [ In]

Typ: UINT

Index des Gitters, für das Materialeigenschaften festgelegt werden.

NumChannels [ In]

Typ: UINT

Anzahl von Farbkanälen, die im Gitternetz festgelegt werden. Legen Sie auf 1 fest, um graue Materialien anzugeben (R = G = B), oder 3, um Farbeffekte zu aktivieren. Wenn Sie diesen Parameter ändern möchten, legen Sie zuerst das Albedo mit einer anderen Methode fest, z.B. ID3DXPRTEngine::SetPerTexelAlbedo oder ID3DXPRTEngine::SetPerVertexAlbedo.

bSetAlbedo [ In]

Typ: BOOL

True gibt an, dass das Albedo des Gitters auf ppMaterials setzt und alle vorhandenen Texel- und Vertex-Albedo-Werte überschreiben. False gibt an, dass alle vorhandenen texel- und vertex albedo-Werte beibehalten werden, die von anderen Methoden festgelegt wurden. NumChannels muss mit dem NumChannels-Parameter übereinstimmen, der zum Erstellen des Puffers in D3DXCreatePRTBuffer oder D3DXCreatePRTBufferTex verwendet wird.

fLengthScale [ In]

Typ: FLOAT

Skalierung der 3D-Szene relativ zu einem 1-mm-Cube. Wird für Berechnungen im Unteroberflächen-Punktdiagramm verwendet.

Rückgabewert

Typ: HRESULT

Wenn die Methode erfolgreich ist, ist der Rückgabewert S _ OK. Wenn die Methode fehlschlägt, kann der Rückgabewert einer der folgenden sein: D3DERR _ INVALIDCALL, E _ OUTOFMEMORY.

Anforderungen

Anforderung Wert
Header
D3DX9Mesh.h
Bibliothek
D3dx9.lib

Siehe auch

ID3DXPRTEngine