Compartilhar via


Método IDirect3DDevice9::SetStreamSource (d3d9helper.h)

Associa um buffer de vértice a um fluxo de dados do dispositivo. Para obter mais informações, consulte Setting the Stream Source (Direct3D 9).

Sintaxe

HRESULT SetStreamSource(
  [in] UINT                   StreamNumber,
  [in] IDirect3DVertexBuffer9 *pStreamData,
  [in] UINT                   OffsetInBytes,
  [in] UINT                   Stride
);

Parâmetros

[in] StreamNumber

Tipo: UINT

Especifica o fluxo de dados, no intervalo de 0 até o número máximo de fluxos -1.

[in] pStreamData

Tipo: IDirect3DVertexBuffer9*

Ponteiro para uma interface IDirect3DVertexBuffer9 , representando o buffer de vértice a ser associado ao fluxo de dados especificado.

[in] OffsetInBytes

Tipo: UINT

Deslocamento do início do fluxo para o início dos dados de vértice, em bytes. Para descobrir se o dispositivo dá suporte a deslocamentos de fluxo, consulte a constante D3DDEVCAPS2_STREAMOFFSET em D3DDEVCAPS2.

[in] Stride

Tipo: UINT

Passo do componente, em bytes. Consulte Observações.

Valor retornado

Tipo: HRESULT

Se o método for bem-sucedido, o valor retornado será D3D_OK. Se o método falhar, o valor retornado poderá ser D3DERR_INVALIDCALL.

Comentários

Quando um sombreador de vértice FVF é usado, o passo do fluxo de vértice deve corresponder ao tamanho do vértice, calculado a partir do FVF. Quando uma declaração é usada, o passo a passo deve ser maior ou igual ao tamanho do fluxo calculado da declaração.

Ao chamar SetStreamSource, o passo é normalmente necessário para ser igual ao tamanho do vértice. No entanto, há ocasiões em que talvez você queira desenhar várias instâncias da mesma geometria ou semelhante (como ao usar a instanciação para desenhar). Nesse caso, use um passo zero para dizer ao runtime para não incrementar o deslocamento do buffer de vértice (ou seja: use os mesmos dados de vértice para todas as instâncias). Para obter mais informações sobre instanciação, consulte Desenhando com eficiência várias instâncias de geometria (Direct3D 9).

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho d3d9helper.h (inclua D3D9.h)
Biblioteca D3D9.lib

Confira também

IDirect3DDevice9

IDirect3DDevice9::DrawIndexedPrimitive

IDirect3DDevice9::DrawIndexedPrimitiveUP

IDirect3DDevice9::DrawPrimitive

IDirect3DDevice9::DrawPrimitiveUP

IDirect3DDevice9::GetStreamSource

Buffers de vértice (Direct3D 9)