Algorytm linii Bresenhama to sposób rysowania linii prostych przy użyciu tylko szybkich operacji na liczbach całkowitych (dodawanie, odejmowanie i mnożenie przez 2). Generuje jednak linie aliasu. Czy istnieje równie szybki sposób rysowania linii antyaliasingu?
11
Odpowiedzi:
Nie, ponieważ z definicji wygładzona linia dotyka większej liczby pikseli. Takie algorytmy będą wolniejsze.
W oprogramowaniu do rasteryzacji wszechobecnym sposobem rysowania linii wygładzonych jest algorytm linii Xiaolin Wu . Nie jest trudne do wdrożenia, a poza tym pod tym linkiem znajduje się niezwykle wysokiej jakości pseudokod.
W sprzętowej rurze rastrowej prymityw linii jest rozszerzany do kwadratu przestrzeni ekranowej przez domyślny (lub podany przez użytkownika) moduł cieniujący geometrię, a następnie rysowany jako dwa trójkąty, które można następnie wygładzić w zwykły sposób.
W raytracer istnieje wiele opcji. Warto pomyśleć o tym, jak naprawdę narysować obiekt 1D. Może jako walec (woo shadows!). Zauważ, że wprowadza to kwestie perspektywy / skrócenia, które mogą (lub nie) być tym, czego chcesz. Nie ma wyraźnego uogólnienia. Potem, oczywiście, cokolwiek robisz, po prostu próbkujesz to.
źródło