Casa > P > Porque É Que O Hardware Gráfico Só Renderiza Triângulos?

Porque é que o hardware gráfico só renderiza triângulos?

2-D algoritmos gráficos don't somente renderiza triângulos. É realmente bastante eficiente desenhar um polígono arbitrário e, não apenas isso, usando coordenadas integrais e algoritmo de Bresenham&apos, para garantir que não haja sobreposições.

3-D hardware tipicamente desenha pontos (e às vezes splats ou fontes), linhas, e triângulos. Pode haver outras coisas, mas elas são decompostas em triângulos primeiro. Isto é porque um triângulo em 3-D especifica um plano de forma única. Mais vértices não o fazem. Para quadriláteros, a não ser que todos os vértices estejam garantidos em um plano (muito difícil com erros de ponto flutuante acumulados), você tem o problema do laço, onde certas orientações de um quadrilátero farão com que pareça um laço, Mesmo isto não seria tão ruim para renderização, mas é desejável que a frente e o verso do polígono tenham propriedades diferentes. É desejável, por exemplo, fazer o corte da face traseira, em que a face traseira de um polígono nunca é desenhada, o que normalmente dá uma boa velocidade.

Desenhar apenas triângulos simplifica o hardware de desenho, tornando possível ter muitos renderizadores triangulares acontecendo ao mesmo tempo. Este paralelismo tem causado problemas para implementações de OpenGL, que tradicionalmente têm exigido que as imagens apareçam como se tivessem sido desenhadas sequencialmente na mesma ordem dada. Entretanto, cartas modernas têm truques para garantir que os triângulos apareçam como se tivessem sido desenhados em uma certa ordem quando realmente estão't. Eu acredito que o Silicon Graphics Reality Engine foi o primeiro a fazer isso, mas tenho certeza que ele foi implementado em muitas das placas gráficas mais modernas.

De Pettifer Blunden

O que significa 16m de cor? :: O que aconteceria se nós fossemos bombardear o Sol?