Nos computadores gráficos, "Window" e "Viewport" referem -se a diferentes áreas retangulares envolvidas na exibição de uma cena. Eles se relacionam com a transformação das coordenadas mundiais de sua cena para os pixels na tela. Pense nisso como olhar através de uma janela em uma cena maior (o mundo).
*
Janela: Esta é uma região retangular em * coordenadas mundiais * que define a parte da cena que será exibida. É especificado nas unidades do sistema de coordenadas da sua cena (por exemplo, medidores, pixels em uma imagem 2D). Essencialmente, você está dizendo "Eu só quero mostrar o mundo dentro desta caixa".
*
viewport: Esta é uma região retangular em * coordenadas de tela * (pixels), onde o conteúdo da janela será exibido. É definido pelas coordenadas do Pixel na tela ou pelo dispositivo de exibição. Ele especifica a área * na tela * onde a imagem será desenhada. Você está dizendo "Eu quero colocar a imagem da janela nesta área da minha tela".
Analogia: Imagine que você está olhando através de uma câmera.
* A janela
é a área da cena que é visível através da lente da câmera. Você pode ampliar ou sair o zoom (alterando o tamanho da janela) para ver diferentes partes da cena.
* A
viewport é o tamanho e a localização da imagem que é exibida na tela da sua câmera ou no visor. Pode ser a tela inteira ou uma parte menor dela.
no código (conceitual): Digamos que suas coordenadas mundiais variam de (0,0) a (100.100).
* Você pode definir uma `janela` de (20, 20) a (80, 80), o que significa que você só deseja mostrar a parte central da sua cena.
* O seu `viewport` pode ser a tela inteira (por exemplo, 0 a 800 pixels de largura, 0 a 600 pixels de altura). A imagem da janela (20,20) a (80,80) nas coordenadas mundiais será mapeada e escalada para caber nesta visualização de 800x600 pixels.
Transformação: O processo de renderização envolve a transformação das coordenadas dos objetos dentro da janela para os locais de pixels correspondentes na viewport. Isso envolve uma matriz de transformação que escala, traduz e potencialmente gira o conteúdo da janela para ajustar a viewport. Isso é frequentemente referido como uma * transformação de projeção * nos gráficos 3D.
Em resumo:a janela seleciona * o que * parte da cena para mostrar, e a viewport determina * onde * e * quão grande * essa parte será exibida na tela.