Quali sono gli spazi vuoti di esempio durante la conversione della scansione?


9

In questo tutorial ,

Molto spesso, i triangoli sono resi che condividono i bordi. OpenGL offre la garanzia che, purché le posizioni dei vertici dei bordi condivisi siano identiche, non vi saranno spazi vuoti di esempio durante la conversione della scansione.

1 Cosa sono esattamente le lacune del campione durante la conversione della scansione?

2 In quali circostanze, accadrà?

3 Succede quando la linea attraversa il centro del frammento?

Risposte:


8

Si verificheranno lacune di esempio se non si fanno le cose "correttamente".

In OpenGL o D3D, assumendo un ordine di avvolgimento coerente, se si hanno triangoli ABC e CBD, quindi quando un punto campione - ovvero un test durante la conversione della scansione per determinare se un punto (leggi pixel) si trova all'interno di un triangolo - si trova esattamente sul bordo condiviso BC, quindi quel campione apparterrà esattamente a uno di quei due triangoli.

Questo evita sia spazi vuoti che doppio riempimento. Quest'ultimo sarebbe problematico, per esempio, con traslucenza o operazioni di stencil.


2
Ad esempio, due triangoli di condivisione dei bordi possono dividere perfettamente lo stesso pixel in due, ma un'implementazione OpenGL deve garantire che solo uno dei triangoli copra il centro del pixel. Quale dipende dall'implementazione.
Andreas,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.