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


Функция D3DXTessellateRectPatch

Тесселлирует прямоугольное пятно поверхности более высокого порядка в треугольниковую сетку.

Синтаксис

HRESULT D3DXTessellateRectPatch(
  _In_          LPDIRECT3DVERTEXBUFFER9 pVB,
  _In_    const FLOAT                   *pNumSegs,
  _In_    const D3DVERTEXELEMENT9       *pInDecl,
  _In_    const D3DRECTPATCH_INFO       *pRectPatchInfo,
  _Inout_       LPD3DXMESH              pMesh
);

Параметры

pVB [in]

Тип: LPDIRECT3DVERTEXBUFFER9

Буфер вершин, содержащий данные исправления.

pNumSegs [in]

Тип: const FLOAT*

Указатель на массив из четырех значений с плавающей запятой, определяющих количество сегментов, на которые следует разделить каждый край прямоугольника при тесселяции. См . D3DRECTPATCH_INFO.

pInDecl [in]

Тип: const D3DVERTEXELEMENT9*

Структура объявления вершин, определяющая данные вершин. См. раздел D3DVERTEXELEMENT9.

pRectPatchInfo [in]

Тип: const D3DRECTPATCH_INFO*

Описывает прямоугольное исправление. См . D3DRECTPATCH_INFO.

pMesh [вход, выход]

Тип: LPD3DXMESH

Указатель на созданную сетку. См. раздел ID3DXMesh.

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

Тип: HRESULT

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

Комментарии

Используйте D3DXRectPatchSize , чтобы получить количество выходных вершин и индексов, необходимых функции тесселяции.

Требования

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

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

Функции сетки

D3DXTessellateTriPatch