PFND3DDDI_BLT función de devolución de llamada (d3dumddi.h)
La función Blt copia el contenido de una superficie de origen en una superficie de destino.
Sintaxis
PFND3DDDI_BLT Pfnd3dddiBlt;
HRESULT Pfnd3dddiBlt(
HANDLE hDevice,
const D3DDDIARG_BLT *unnamedParam2
)
{...}
Parámetros
hDevice
Identificador del dispositivo de visualización (contexto de gráficos).
unnamedParam2
pData [in]
Puntero a una estructura de D3DDDIARG_BLT que describe los parámetros de la transferencia de bloques de bits (bitblt).
Valor devuelto
Blt devuelve uno de los siguientes valores:
código de retorno | descripción |
---|---|
S_OK | El bitblt del recurso se realiza correctamente. |
E_OUTOFMEMORY | Blt no pudo asignar la memoria necesaria para que se complete. |
Observaciones
El tiempo de ejecución de Microsoft Direct3D llama a la función de del controlador de pantalla en modo de usuario para copiar el contenido de una superficie de origen en una superficie de destino. Después de asignar las referencias de superficie a las referencias de asignación, el controlador de pantalla en modo de usuario debe emitir los comandos de hardware adecuados. Si la asignación de origen o de destino está en memoria del sistema, es posible que se requiera que el controlador de pantalla en modo de usuario se sincronice (es decir, llame a la función pfnRenderCb) si la secuencia de comandos de hardware pendiente contiene referencias a la asignación de memoria del sistema. Si las asignaciones de origen y destino están en la memoria del sistema, el controlador debe sincronizarse según sea necesario, pero no debe copiar el contenido de la superficie de origen. El tiempo de ejecución de Direct3D copia el contenido después de la llamada a pfnRenderCb.
El controlador de pantalla en modo de usuario debe controlar las siguientes condiciones que pueden producirse durante una operación de copia:
- Las superficies de origen y de destino forman parte del mismo recurso (es decir, el hSrcResource y hDstResource miembros de D3DDDIARG_BLT especifica identificadores en el mismo recurso).
- Los rectángulos de origen y destino se superponen (es decir, las coordenadas de las estructuras RECT de SrcRect y DstRect miembros de D3DDDIARG_BLT superposición).
El controlador de pantalla en modo de usuario debe admitir la tecla colorkeying solo con formatos que se introdujeron antes de Microsoft DirectX 8.0. En el caso de los formatos introducidos en DirectX 8.0 y versiones posteriores, no se requiere compatibilidad con la creación de claves de color.
El tipo de bitblt que se va a realizar se indica a través de las marcas de campo de bits especificadas en el miembro Flags de D3DDDIARG_BLT. La memoria de vídeo a los bits de memoria de vídeo puede incluir la conversión de colores, la extensión, la creación de reflejos y la conversión de formato lineal a sRGB. La memoria del sistema a los bits de memoria de vídeo puede incluir la conversión de formato de extensión y lineal a sRGB; sin embargo, estos tipos de bitblts nunca incluyen la creación de reflejo o la clave de color. Toda la memoria de vídeo a los bits de memoria del sistema y la memoria del sistema a los bitblts de memoria del sistema son copias rectas solo; es decir, estos tipos de bitblts nunca incluyen la conversión de formato de extensión, creación de reflejo, colorkeying o conversión de formato lineal a sRGB. Para obtener más información sobre el formato sRGB, consulte el sitio web de sRGB de.
Para obtener más información sobre las reglas que debe seguir la función de Blt de al convertir valores de galería de símbolos de profundidad, vea Copiar valores Depth-Stencil valores.
El entorno de ejecución de Direct3D puede llamar a la función Blt del controlador de pantalla en modo de usuario para copiar el contenido de cualquier tipo de superficie de origen (por ejemplo, tipo offscreen-plain, tipo render-target o tipo de textura) a cualquier otro tipo de superficie de destino.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Disponible en Windows Vista y versiones posteriores de los sistemas operativos Windows. |
de la plataforma de destino de | Escritorio |
encabezado de | d3dumddi.h (incluya D3dumddi.h) |