Método ID3DXFile::RegisterTemplates
Registra modelos personalizados.
Sintaxe
HRESULT RegisterTemplates(
[in] LPCVOID pvData,
[in] SIZE_T cbSize
);
Parâmetros
-
pvData [in]
-
Tipo: LPCVOID
Ponteiro para um buffer que consiste em um arquivo .x em formato de texto ou binário que contém modelos.
-
cbSize [in]
-
Tipo: SIZE_T
Tamanho do buffer apontado por pvData, em bytes.
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: D3DXFERR_BADVALUE, D3DXFERR_PARSEERROR.
Comentários
O fragmento de código a seguir fornece uma chamada de exemplo para RegisterTemplates e conteúdo de exemplo para o buffer para o qual pvData aponta.
#define XSKINEXP_TEMPLATES \
"xof 0303txt 0032\
template XSkinMeshHeader \
{ \
<3CF169CE-FF7C-44ab-93C0-F78F62D172E2> \
WORD nMaxSkinWeightsPerVertex; \
WORD nMaxSkinWeightsPerFace; \
WORD nBones; \
} \
template VertexDuplicationIndices \
{ \
<B8D65549-D7C9-4995-89CF-53A9A8B031E3> \
DWORD nIndices; \
DWORD nOriginalVertices; \
array DWORD indices[nIndices]; \
} \
template SkinWeights \
{ \
<6F0D123B-BAD2-4167-A0D0-80224F25FABB> \
STRING transformNodeName;\
DWORD nWeights; \
array DWORD vertexIndices[nWeights]; \
array float weights[nWeights]; \
Matrix4x4 matrixOffset; \
}"
.
.
.
LPD3DXFILE pD3DXFile = NULL;
if ( FAILED
(hr = pD3DXFile->RegisterTemplates(
(LPVOID)XSKINEXP_TEMPLATES,
sizeof( XSKINEXP_TEMPLATES ) - 1 ) ) )
goto End;
Todos os modelos devem especificar um nome e um UUID.
Esse método chama o método RegisterEnumTemplates , obtendo um ponteiro de interface ID3DXFileEnumObject chamando CreateEnumObject com pvData como o primeiro parâmetro.
Requisitos
Requisito | Valor |
---|---|
parâmetro |
|
Biblioteca |
|
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de