Compartir a través de


PFND3D10DDI_SETSCISSORRECTS función de devolución de llamada (d3d10umddi.h)

La función SetScisorRects marca partes de destinos de representación a los que se limita la representación.

Sintaxis

PFND3D10DDI_SETSCISSORRECTS Pfnd3d10ddiSetscissorrects;

void Pfnd3d10ddiSetscissorrects(
       D3D10DDI_HDEVICE unnamedParam1,
  [in] UINT NumRects,
  [in] UINT ClearRects,
       const D3D10_DDI_RECT *unnamedParam4
)
{...}

Parámetros

unnamedParam1

hDevice [in]

Identificador del dispositivo de visualización (contexto de gráficos).

[in] NumRects

Número total de partes de destino de representación que especifica el parámetro pRects .

[in] ClearRects

Número de partes de destino de representación después del número de partes de destino de representación que NumScissorRects especifica que se va a establecer en NULL. Este número representa la diferencia entre el número anterior de partes de destino de representación (es decir, cuando el tiempo de ejecución de Microsoft Direct3D anteriormente denominado SetScissorRects) y el nuevo número de partes de destino de representación.

Tenga en cuenta que el número que ClearScissorRects especifica es solo una ayuda de optimización porque el controlador de pantalla en modo de usuario podría calcular este número.

unnamedParam4

pRects [in]

Matriz de estructuras RECT para las partes de destino de representación que se van a marcar.

Valor devuelto

None

Observaciones

El controlador puede usar la función de devolución de llamada pfnSetErrorCb para establecer un código de error.

La estructura D3D10_DDI_RECT se define como una estructura RECT .

typedef RECT D3D10_DDI_RECT;

El controlador de pantalla en modo de usuario debe establecer todas las partes de destino de representación de forma atómica como una operación.

Aunque el parámetro NumScissorRects especifica el número de partes de destino de representación en la matriz que especifica el parámetro pRects , algunos valores de la matriz pueden ser NULL.

El intervalo de partes de destino de representación entre el número que NumScissorRects especifica y el número máximo de partes de destino de representación permitidas es necesaria para contener todos los valores NULL o unbound. El número que especifica el parámetro ClearScissorRects informa al controlador sobre cuántas partes de destino de representación debe borrar el controlador para la operación atómica actual.

Si la llamada anterior a SetScissorRects pasó un valor de 2 en el parámetro NumScissorRects y la llamada actual a SetScissorRects pasa un valor de 4 en NumScissorRects, la llamada actual a SetScissorRects también pasa un valor de 0 en el parámetro ClearScissorRects . Si la siguiente llamada sucesiva a SetScissorRects pasa un valor de 1 en NumScissorRects, la llamada sucesiva también pasa un valor de 3 (4 - 1) en ClearScissorRects.

Cuando se solicita el valor de partes de destino de representación no cifrado durante las operaciones de consulta en modo de usuario, el valor es la diferencia entre el número máximo de partes de destino de representación y el valor de partes de destino de representación.

El controlador no debe encontrar ningún error, excepto por D3DDDIERR_DEVICEREMOVED. Por lo tanto, si el controlador pasa algún error, excepto por D3DDDIERR_DEVICEREMOVED, en una llamada a la función pfnSetErrorCb , el tiempo de ejecución de Microsoft Direct3D determinará que el error es crítico. Incluso si se quitó el dispositivo, no es necesario que el controlador devuelva D3DDDIERR_DEVICEREMOVED; Sin embargo, si la eliminación de dispositivos interfirió con el funcionamiento de SetScissorRects (que normalmente no debería ocurrir), el controlador puede devolver D3DDDIERR_DEVICEREMOVED.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Windows Vista y versiones posteriores de los sistemas operativos Windows.
Plataforma de destino Escritorio
Encabezado d3d10umddi.h (incluya D3d10umddi.h)

Consulte también

D3D10DDI_DEVICEFUNCS

RECT

pfnSetErrorCb