Compartilhar via


estrutura D3D11_VIEWPORT (d3d11.h)

Define as dimensões de um visor.

Sintaxe

typedef struct D3D11_VIEWPORT {
  FLOAT TopLeftX;
  FLOAT TopLeftY;
  FLOAT Width;
  FLOAT Height;
  FLOAT MinDepth;
  FLOAT MaxDepth;
} D3D11_VIEWPORT;

Membros

TopLeftX

Tipo: FLOAT

Posição X do lado esquerdo do visor. Intervalos entre D3D11_VIEWPORT_BOUNDS_MIN e D3D11_VIEWPORT_BOUNDS_MAX.

TopLeftY

Tipo: FLOAT

Posição Y da parte superior do visor. Intervalos entre D3D11_VIEWPORT_BOUNDS_MIN e D3D11_VIEWPORT_BOUNDS_MAX.

Width

Tipo: FLOAT

Largura do visor.

Height

Tipo: FLOAT

Altura do visor.

MinDepth

Tipo: FLOAT

Profundidade mínima do visor. Intervalos entre 0 e 1.

MaxDepth

Tipo: FLOAT

Profundidade máxima do visor. Intervalos entre 0 e 1.

Comentários

Em todos os casos, Width e Height devem ser >= 0 e TopLeftX + Width e TopLeftY + Height devem ser <= D3D11_VIEWPORT_BOUNDS_MAX.

Tamanhos do visor e diferenças de suporte no nível do recurso entre Direct3D 11 e Direct3D 10:

O intervalo para o tamanho mínimo e máximo do visor depende do nível de recurso definido por D3D_FEATURE_LEVEL.

  • O Direct3D 11 dá suporte a visores fracionários; os tipos de parâmetro são números de ponto flutuante. O nível de recurso, D3D_FEATURE_LEVEL_11_0, dá suporte a valores (D3D11_VIEWPORT_BOUNDS_MIN, D3D11_VIEWPORT_BOUNDS_MAX) entre (-32768, 32.767).
  • O Direct3D 10 não dá suporte a visores fracionários. Os níveis de recurso, D3D_FEATURE_LEVEL_10_1 (ou abaixo), dão suporte a valores (D3D10_VIEWPORT_BOUNDS_MIN, D3D10_VIEWPORT_BOUNDS_MAX) entre (-16384, 16383).
 
Nota Embora você especifique valores float para os membros da estrutura D3D11_VIEWPORT para a matriz pViewports em uma chamada para ID3D11DeviceContext::RSSetViewports para níveis de recursos 9_x, RSSetViewports usa DWORDs internamente. Devido a esse comportamento, quando você usa um canto superior esquerdo negativo para o visor, a chamada para RSSetViewports para níveis de recursos 9_x falha. Essa falha ocorre porque RSSetViewports para 9_x converte os valores de ponto flutuante em inteiros sem sinal sem validação, o que resulta em estouro de inteiro.
 

Requisitos

Requisito Valor
Cabeçalho d3d11.h

Confira também

Estruturas principais