Antialiasing
-
Halli hallo,
ich versuche krampfhaft eine Antialiasing Funktion zu schreiben. Funktioniert aber nicht richtig hat vielleicht jemand ein bisschen Quellcode von einem funktionierenden Antialiasing irgend wo rumliegen?´Vielen Dank
bracki
-
Dieser Thread wurde von Moderator/in nman aus dem Forum Andere GUIs - Qt, GTK+, wxWidgets in das Forum Spiele-/Grafikprogrammierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
wenn du so fragst, gerne:
AntialiasingLevel(4);
mehr fällt mir bei deiner fragestellung leider nicht ein.
-
Ich vermute das du keinen ansatz findestm, ich habe schonmal eine AA funtkion in 2D geschrieben, überlege du musst aus einem pixel zwei machen, also ganz primitiv das benutzte bild einfach in alle 8 richtungen um einen Pixel verschieben(kopien davon)
is aber eine sehr schlechte lösung
-
Wenns nur um Linien geht bietet die OpenGL glEnable(GL_LINE_SMOOTH). (gibts auch noch für Polygone und Punkte)
-
kommt drauf an ob die eine api für die grafikkarte verwendest oder nicht
wenn du opengl verwendest gibts die glMultiSampleARB Funktion
und directx wird auch einen flag geben (doc nachlesen)
wenn du einen software render schreibst, kann ich dir leider nicht helfen ...
-
Der Witz beim Antialiasing ist doch ganz einfach - z. B. das Pixel (1,3;2,4) soll schwarz gefärbt werden -> geht nicht das es nur "ganze" Pixel gibt - also wird die Farbe einfach prozentual auf die 4 beteiligten Pixel verteilt
weiter kommt drauf an wozu du Antialising einsetzen willst... willst du nur Linien oder Buchstaben zeichen? oder Kanten eines 3d Objekt, eine Textur ....
-
für den software renderer (raytracing) ist das verfahren vielleicht noch einfacher:
einfach durch einen pixel mehrere rays schicken und dann die durchschnittsfarbe für diesen pixel ermitteln.
-
in der Aller größten not, kannst du es auch per Shader emulieren, wenn du Post Processing renderst.
das ist zwar nciht ganz so genau wie multisampling aber es sieht auhc gut aus, und man kann noch viel mehr damit machen, z.B. verschwimmen lassen, verzerrungen usw.