Compartir a través de


Método ID3D10Device::SOSetTargets (d3d10.h)

Establezca los búferes de salida de destino para la fase StreamOutput , lo que permite o deshabilita la canalización para transmitir datos de salida.

Sintaxis

void SOSetTargets(
  [in] UINT         NumBuffers,
  [in] ID3D10Buffer * const *ppSOTargets,
  [in] const UINT   *pOffsets
);

Parámetros

[in] NumBuffers

Tipo: UINT

Número de búfer que se va a enlazar al dispositivo. Se puede establecer un máximo de cuatro búferes de salida. Si la llamada define menos de cuatro, las ranuras de búfer restantes se establecen en NULL. Vea la sección Comentarios.

[in] ppSOTargets

Tipo: ID3D10Buffer*

Matriz de búferes de salida (consulte ID3D10Buffer) para enlazar con el dispositivo. Los búferes deben haberse creado con la marca D3D10_BIND_STREAM_OUTPUT .

[in] pOffsets

Tipo: const UINT*

Matriz de desplazamientos en los búferes de salida de ppSOTargets, un desplazamiento para cada búfer. Los valores de desplazamiento deben estar en bytes.

Valor devuelto

None

Observaciones

Llame a ID3D10Device::SOSetTargets (antes de cualquier llamada a Draw) para transmitir datos de salida; llame a SOSetTargets con NULL para detener la transmisión de datos. Para obtener un ejemplo, vea Ejercicio 01 del taller de GDC 2007, que establece el rendertargets de salida de flujo antes de llamar a métodos draw en la función RenderInstanceToStream.

Un desplazamiento de -1 hará que se anexe el búfer de salida del flujo, continuando después de la última ubicación escrita en el búfer en un paso de salida de flujo anterior.

Al llamar a este método mediante un búfer que está enlazado actualmente para escribir, se enlazará NULL en su lugar porque un búfer no se puede enlazar como entrada y salida al mismo tiempo.

La capa de depuración generará una advertencia siempre que se impida que un recurso se enlace simultáneamente como entrada y salida, pero esto no impedirá que el tiempo de ejecución use datos no válidos.

El método no contendrá una referencia a las interfaces pasadas. Por ese motivo, las aplicaciones deben tener cuidado de no liberar una interfaz actualmente en uso por parte del dispositivo.

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado d3d10.h
Library D3D10.lib

Consulte también

Id3D10Device (interfaz)