Método ID3DX10Mesh::Optimize
Gera uma nova malha com rostos e vértices reordenados para otimizar o desempenho do desenho.
Sintaxe
HRESULT Optimize(
[in] UINT Flags,
[in] UINT *pFaceRemap,
[out] LPD3D10BLOB *ppVertexRemap
);
Parâmetros
-
Sinalizadores [in]
-
Tipo: UINT
Especifica o tipo de otimização a ser executada. Esse parâmetro pode ser definido como uma combinação de um ou mais sinalizadores de D3DXMESHOPT e D3DXMESH (exceto D3DXMESH_32BIT, D3DXMESH_IB_WRITEONLY e D3DXMESH_WRITEONLY).
-
pFaceRemap [in]
-
Tipo: UINT*
Uma matriz de UINTs, uma por rosto, que identifica a face de malha original que corresponde a cada rosto na malha otimizada. Se o valor fornecido para esse argumento for NULL, os dados de remapeamento facial não serão retornados.
-
ppVertexRemap [out]
-
Tipo: LPD3D10BLOB*
Endereço de um ponteiro para uma Interface ID3D10Blob, que contém um DWORD para cada vértice que especifica como os novos vértices são mapeados para os vértices antigos. Esse remapeamento será útil se você precisar alterar dados externos com base no novo mapeamento de vértice.
Valor retornado
Tipo: HRESULT
O valor retornado é um dos valores listados em Códigos de Retorno do Direct3D 10.
Comentários
Esse método gera uma nova malha. Antes de executar o Optimize, um aplicativo deve gerar um buffer de adjacência chamando ID3DX10Mesh::GenerateAdjacencyAndPointReps. O buffer de adjacência contém dados de adjacência, como uma lista de bordas e os rostos adjacentes uns aos outros.
Esse método é muito semelhante ao método ID3DX10Mesh::CloneMesh , exceto que ele pode executar a otimização ao gerar o novo clone da malha. A malha de saída herda todos os parâmetros de criação da malha de entrada.
Requisitos
Requisito | Valor |
---|---|
parâmetro |
|
Biblioteca |
|
Confira também