Método IDirect3DDevice9Ex::ComposeRects (d3d9.h)
Copie una cadena de texto en una superficie mediante un alfabeto de glifos en otra superficie. La composición se realiza mediante la GPU mediante operaciones bit a bit.
Sintaxis
HRESULT ComposeRects(
[in] IDirect3DSurface9 *pSrc,
[in] IDirect3DSurface9 *pDst,
[in] IDirect3DVertexBuffer9 *pSrcRectDescs,
[in] UINT NumRects,
[in] IDirect3DVertexBuffer9 *pDstRectDescs,
[in] D3DCOMPOSERECTSOP Operation,
[in] int Xoffset,
[in] int Yoffset
);
Parámetros
[in] pSrc
Tipo: IDirect3DSurface9*
Puntero a una superficie de origen (preparada por IDirect3DSurface9) que proporciona los glifos del alfabeto. Esta superficie debe crearse con la marca D3DUSAGE_TEXTAPI .
[in] pDst
Tipo: IDirect3DSurface9*
Puntero a la superficie de destino (preparada por IDirect3DSurface9) que recibe los datos del glifo. La superficie debe formar parte de una textura.
[in] pSrcRectDescs
Tipo: IDirect3DVertexBuffer9*
Puntero a un búfer de vértices (vea IDirect3DVertexBuffer9) que contiene rectángulos (vea D3DCOMPOSERECTDESC) que incluyen los glifos deseados en la superficie de origen.
[in] NumRects
Tipo: UINT
Número de rectángulos o glifos que se usan en la operación. El número se aplica a las superficies de origen y destino. El intervalo es de 0 a D3DCOMPOSERECTS_MAXNUMRECTS.
[in] pDstRectDescs
Tipo: IDirect3DVertexBuffer9*
Puntero a un búfer de vértices (vea IDirect3DVertexBuffer9) que contiene rectángulos (vea D3DCOMPOSERECTDESTINATION) que describen el destino al que se copiará el glifo indicado de la superficie de origen.
[in] Operation
Tipo: D3DCOMPOSERECTSOP
Especifica cómo combinar las superficies de origen y destino. Consulte D3DCOMPOSERECTSOP.
[in] Xoffset
Tipo: INT
Valor agregado a las coordenadas x de todos los rectángulos de destino. Este valor puede ser negativo, lo que puede hacer que el glifo se rechace o se recorte si el resultado está más allá de los límites de la superficie.
[in] Yoffset
Tipo: INT
Valor agregado a las coordenadas y de todos los rectángulos de destino. Este valor puede ser negativo, lo que puede hacer que el glifo se rechace o se recorte si el resultado está más allá de los límites de la superficie.
Valor devuelto
Tipo: HRESULT
Si el método se realiza correctamente, el valor devuelto es D3D_OK.
Comentarios
Los glifos de una superficie de origen de un bit se colocan en otra superficie de textura de un bit con este método. A continuación, la superficie de destino se puede usar como origen para una operación normal de texturización que filtrará y escalará las cadenas de texto en alguna otra superficie no monocromática.
Este método tiene varias restricciones (que son similares a StretchRect):
- Las superficies no se pueden bloquear.
- Las superficies de origen y destino no pueden ser la misma superficie.
- Las superficies de origen y destino deben crearse con el formato D3DFMT_A1 .
- La superficie de origen y ambos búferes de vértices deben crearse con la marca D3DPOOL_DEFAULT .
- La superficie de destino debe crearse con las marcas D3DPOOL_DEFAULT o D3DPOOL_SYSTEMMEM .
- Los rectángulos de origen deben estar dentro de la superficie de origen.
Requisitos
Plataforma de destino | Windows |
Encabezado | d3d9.h |
Library | D3D9.lib |