DXBufferCreate

Создает буфер указанного типа на основе массива данных.

int  DXBufferCreate(
   int                  context,               // хендл на графический контекст
   ENUM_DX_BUFFER_TYPE  buffer_type,           // тип создаваемого буфера
   const void&          data[],                // данные для буфера
   uint                 start=0,               // начальный индекс
   uint                 count=WHOLE_ARRAY      // количество элементов
   );

Параметры

context

[in]  Хендл на графический контекст, созданный в DXContextCreate().

buffer_type

[in]  Тип буфера из перечисления ENUM_DX_BUFFER_TYPE.

data[]

[in]  Данные для создания буфера.

start=0

[in]  Индекс первого элемента массива, начиная с которого берутся значения из массива для создания буфера. По умолчанию берутся данные с начала массива.

count=WHOLE_ARRAY

[in]  Количество значений.  По умолчанию используется весь массив (count=WHOLE_ARRAY).

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

Хендл на созданный буфер или INVALID_HANDLE в случае ошибки. Для получения кода ошибки нужно вызвать функцию GetLastError().

Примечание

Для индексного буфера массив data[] должен иметь тип uint, а для вершинного буфера передается массив структур, описывающий вершины.

Созданный хендл, который больше не используется, должен быть явно освобожден с помощью функции DXRelease().

ENUM_DX_BUFFER_TYPE

Идентификатор

Значение

Описание

DX_BUFFER_VERTEX

1

Вершинный буфер

DX_BUFFER_INDEX

2

Индексный буфер