Método IDirect3DDevice9::P rocessVertices (d3d9helper.h)
Aplica el procesamiento de vértices definido por el sombreador de vértices al conjunto de flujos de datos de entrada, generando una única secuencia de datos de vértices intercalados al búfer de vértices de destino.
Sintaxis
HRESULT ProcessVertices(
[in] UINT SrcStartIndex,
[in] UINT DestIndex,
[in] UINT VertexCount,
[in] IDirect3DVertexBuffer9 *pDestBuffer,
[in] IDirect3DVertexDeclaration9 *pVertexDecl,
[in] DWORD Flags
);
Parámetros
[in] SrcStartIndex
Tipo: UINT
Índice del primer vértice que se va a cargar.
[in] DestIndex
Tipo: UINT
Índice del primer vértice del búfer de vértices de destino en el que se colocan los resultados.
[in] VertexCount
Tipo: UINT
Número de vértices que se van a procesar.
[in] pDestBuffer
Tipo: IDirect3DVertexBuffer9*
Puntero a una interfaz IDirect3DVertexBuffer9 , el búfer de vértices de destino que representa la secuencia de datos de vértices intercalados.
[in] pVertexDecl
Tipo: IDirect3DVertexDeclaration9*
Puntero a una interfaz IDirect3DVertexDeclaration9 que representa la declaración de datos del vértice de salida. Cuando el sombreador de vértices 3.0 o superior se establece como sombreador de vértices actual, la declaración de vértice de salida debe estar presente.
[in] Flags
Tipo: DWORD
Opciones de procesamiento. Establezca este parámetro en 0 para el procesamiento predeterminado. Establézcalo en D3DPV_DONOTCOPYDATA para evitar que el sistema copie datos de vértices no afectados por la operación de vértice en el búfer de destino. El valor de D3DPV_DONOTCOPYDATA se puede combinar con uno o varios valores D3DLOCK adecuados para el búfer de destino.
Valor devuelto
Tipo: HRESULT
Si el método se realiza correctamente, el valor devuelto es D3D_OK. Si se produce un error en el método, el valor devuelto se puede D3DERR_INVALIDCALL.
Comentarios
El orden de las operaciones para este método es el siguiente:
- Transformar vértices en el espacio de proyección mediante la matriz de proyección mundo + vista y proyección.
- Coordenadas de pantalla de proceso mediante la configuración de la ventanilla.
- Si el recorte está habilitado, los códigos de recorte de proceso y los almacenan en un búfer interno, asociado al búfer de vértices de destino. Si un vértice está dentro del frustum de visualización, se calculan sus coordenadas de pantalla. Si el vértice está fuera del frustum de visualización, el vértice se almacena en el búfer de vértices de destino en coordenadas del espacio de proyección.
- Otras notas: El usuario no tiene acceso al búfer de código de clip interno. No se realiza ningún recorte en triángulos ni en ningún otro primitivo.
Cuando Direct3D genera coordenadas de textura, o copia o transforma las coordenadas de textura de entrada, y el formato de coordenadas de textura de salida define más componentes de coordenadas de textura que genera Direct3D, Direct3D no cambia estos componentes adicionales.
Requisitos
Plataforma de destino | Windows |
Encabezado | d3d9helper.h (incluya D3D9.h) |
Library | D3D9.lib |
Consulte también
Tipos de dispositivo y requisitos de procesamiento de vértices (Direct3D 9)