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


Метод IDirect3DDevice9::GetStreamSource (d3d9.h)

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

Синтаксис

HRESULT GetStreamSource(
  UINT                   StreamNumber,
  IDirect3DVertexBuffer9 **ppStreamData,
  UINT                   *pOffsetInBytes,
  UINT                   *pStride
);

Параметры

StreamNumber

Тип: [in] UINT

Указывает поток данных в диапазоне от 0 до максимального числа потоков минус один.

ppStreamData

Тип: [in, out] IDirect3DVertexBuffer9**

Адрес указателя на интерфейс IDirect3DVertexBuffer9 , представляющий возвращенный буфер вершин, привязанный к указанному потоку данных.

pOffsetInBytes

Тип: [out]UINT*

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

pStride

Тип: [out] UINT*

Указатель на возвращенный шаг компонента (в байтах). См. заметки.

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

Тип: HRESULT

Если метод выполнен успешно, возвращаемое значение будет D3D_OK. Если метод завершается сбоем, возвращаемое значение можно D3DERR_INVALIDCALL.

Комментарии

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

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

Вызов этого метода увеличивает количество внутренних ссылок в интерфейсе IDirect3DVertexBuffer9 . Сбой вызова IUnknown::Release после завершения использования этого интерфейса IDirect3DVertexBuffer9 приводит к утечке памяти.

Требования

Требование Значение
Целевая платформа Windows
Header d3d9.h (включая D3D9.h)
Библиотека D3D9.lib

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

IDirect3DDevice9

IDirect3DDevice9::DrawIndexedPrimitive

IDirect3DDevice9::DrawIndexedPrimitiveUP

IDirect3DDevice9::DrawPrimitive

IDirect3DDevice9::DrawPrimitiveUP

IDirect3DDevice9::SetStreamSource

Буферы вершин (Direct3D 9)