Compartir a través de


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

Enlaza un búfer de vértices a un flujo de datos del dispositivo. Para obtener más información, vea Establecer el origen de Stream (Direct3D 9).

Sintaxis

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

Parámetros

[in] StreamNumber

Tipo: UINT

Especifica el flujo de datos, en el intervalo comprendido entre 0 y el número máximo de secuencias -1.

[in] pStreamData

Tipo: IDirect3DVertexBuffer9*

Puntero a una interfaz IDirect3DVertexBuffer9 , que representa el búfer de vértices que se va a enlazar al flujo de datos especificado.

[in] OffsetInBytes

Tipo: UINT

Desfase desde el principio de la secuencia hasta el principio de los datos de vértices, en bytes. Para averiguar si el dispositivo admite desplazamientos de flujo, consulte la constante D3DDEVCAPS2_STREAMOFFSET en D3DDEVCAPS2.

[in] Stride

Tipo: UINT

Intervalo del componente, en bytes. Vea la sección Comentarios.

Valor devuelto

Tipo: HRESULT

Si el método se ejecuta correctamente, el valor devuelto es D3D_OK. Si se produce un error en el método, el valor devuelto se puede D3DERR_INVALIDCALL.

Comentarios

Cuando se usa un sombreador de vértices FVF, el paso de la secuencia de vértices debe coincidir con el tamaño del vértice, calculado desde el FVF. Cuando se usa una declaración, el intervalo debe ser mayor o igual que el tamaño de flujo calculado a partir de la declaración.

Al llamar a SetStreamSource, el paso normalmente es necesario que sea igual al tamaño del vértice. Sin embargo, hay ocasiones en las que es posible que desee dibujar varias instancias de la misma geometría o similar (por ejemplo, al usar la creación de instancias para dibujar). En este caso, use un intervalo cero para indicar al tiempo de ejecución que no incremente el desplazamiento del búfer de vértices (es decir, use los mismos datos de vértices para todas las instancias). Para obtener más información sobre la creación de instancias, vea Dibujo eficaz de varias instancias de geometry (Direct3D 9).

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado d3d9helper.h (incluya D3D9.h)
Library D3D9.lib

Consulte también

IDirect3DDevice9

IDirect3DDevice9::D rawIndexedPrimitive

IDirect3DDevice9::D rawIndexedPrimitiveUP

IDirect3DDevice9::D rawPrimitive

IDirect3DDevice9::D rawPrimitiveUP

IDirect3DDevice9::GetStreamSource

Búferes de vértices (Direct3D 9)