Поделиться через


Метод ID3DXBaseMesh::GenerateAdjacency

Создайте список ребер сетки, а также список лиц с общими краями.

Синтаксис

HRESULT GenerateAdjacency(
  [in] FLOAT Epsilon,
  [in] DWORD *pAdjacency
);

Параметры

Epsilon [in]

Тип: FLOAT

Указывает, что вершины, отличающиеся по положению меньше эпсилона, должны рассматриваться как совпадающие.

pAdjacency [in]

Тип: DWORD*

Указатель на массив из трех DWORD для каждого лица, заполняемого индексами смежных лиц. Число байтов в этом массиве должно быть не менее 3 * ID3DXBaseMesh::GetNumFaces * sizeof(DWORD).

Возвращаемое значение

Тип: HRESULT

Если метод выполнен успешно, возвращаемое значение будет D3D_OK. В случае сбоя метода возвращается одно из следующих значений: D3DERR_INVALIDCALL E_OUTOFMEMORY.

Комментарии

После того как приложение создаст сведения о смежности для сетки, данные сетки можно оптимизировать для повышения производительности рисования.

Порядок записей в буфере примыкания определяется порядком индексов вершин в буфере индексов. Смежный треугольник 0 всегда соответствует краю между индексами углов 0 и 1. Смежный треугольник 1 всегда соответствует границе между индексами углов 1 и 2, а смежный треугольник 2 соответствует границе между индексами углов 2 и 0.

Требования

Требование Значение
Заголовок
D3DX9Mesh.h
Библиотека
D3dx9.lib

См. также раздел

ID3DXBaseMesh

ID3DXMesh::Optimize

ID3DXMesh::OptimizeInplace