Метод ID3DXPRTEngine::SetMeshMaterials
Задает свойства материала сетки в трехмерной сцене. Используйте этот метод для указания параметров рассеяния подповерхностей.
Синтаксис
HRESULT SetMeshMaterials(
[in] const D3DXSHMATERIAL **ppMaterials,
[in] UINT NumMeshes,
[in] UINT NumChannels,
[in] BOOL bSetAlbedo,
[in] FLOAT fLengthScale
);
Параметры
-
ppMaterials [in]
-
Тип: const D3DXSHMATERIAL**
Адрес указателя на требуемые свойства материала сетки. См . раздел D3DXSHMATERIAL.
-
NumMeshes [in]
-
Тип: UINT
Индекс сетки, для которой задаются свойства материала.
-
NumChannels [in]
-
Тип: UINT
Число цветовых каналов, задается в сетке. Задайте значение 1, чтобы указать серые материалы (R = G = B), или 3, чтобы включить эффекты цветного кровотечения. Если вы планируете изменить этот параметр, сначала задайте альбедо с помощью другого метода, например ID3DXPRTEngine::SetPerTexelAlbedo или ID3DXPRTEngine::SetPerVertexAlbedo.
-
bSetAlbedo [in]
-
Тип: BOOL
Если задано значение TRUE, для альбедо сетки устанавливается значение ppMaterials, перезаписав все существующие значения текселя и вершинного альбедо. При значении FALSE сохраняет все существующие значения текселя и вершинного альбедо, заданные другими методами; NumChannels должен соответствовать параметру NumChannels, используемому для создания буфера в D3DXCreatePRTBuffer или D3DXCreatePRTBufferTex.
-
fLengthScale [in]
-
Тип: FLOAT
Масштаб трехмерной сцены относительно куба 1 мм. Используется для вычислений подповерхностного рассеяния.
Возвращаемое значение
Тип: HRESULT
Если метод выполнен успешно, возвращаемое значение будет S_OK. Если метод завершается ошибкой, возвращаемое значение может быть одним из следующих: D3DERR_INVALIDCALL, E_OUTOFMEMORY.
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|
См. также раздел