DrawImage Antialiasing

Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Neue Antwort erstellen

 

Schoppy

Betreff: DrawImage Antialiasing

BeitragSo, März 04, 2012 2:13
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,

wie kann man ein Image um 20 Grad gedreht mit weichen Kanten rendern?
Ich habe 2 Versionen Probiert.

Version1:
Code: [AUSKLAPPEN]

Strict

Graphics 800,600

Global img:TImage = LoadImage("test.png")

'################# M A I N - L O O P #######################
While Not KeyDown(KEY_ESCAPE)

Cls


SetBlend AlphaBLEND
SetRotation - 15
DrawImage img, 400, 200


Flip
Wend



[img]
http://s14.directupload.net/im...t3ku56.jpg
[/img]

Version2:
per OpenGL klappt es aber hier ist ein Streifen quer im Bild

Code: [AUSKLAPPEN]

Strict

SetGraphicsDriver GLMax2DDriver()

Graphics 800, 600

Global img:TImage = LoadImage("test.png")


glEnable(GL_POLYGON_SMOOTH)
glEnable(GL_LINE_SMOOTH)


'################# M A I N - L O O P #######################
While Not KeyDown(KEY_ESCAPE)

Cls


SetBlend AlphaBLEND
SetRotation - 15
DrawImage img, 400, 200


Flip
Wend


[img]
http://s1.directupload.net/ima...9mju5i.jpg
[/img]

Propellator

BeitragSo, März 04, 2012 15:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,
GL_POLYGON_SMOOTH ist soweit ich weiss ein Feature, welches veraltet ist und nicht mehr benutzt werden sollte. Folglich funktioniert es auch (meinen Erfahrungen nach) nicht auf allen Grafikkarten korrekt. Versuche stattdessen MSAA.
Propellator - Alles andere ist irrelephant.
Elefanten sind die Könige der Antarktis.
 

Schoppy

BeitragSo, März 04, 2012 19:47
Antworten mit Zitat
Benutzer-Profile anzeigen
OK, wie lauten die OpenGL Befehle dazu? Google hat auch keine Antwort.

ZEVS

BeitragSo, März 04, 2012 19:49
Antworten mit Zitat
Benutzer-Profile anzeigen
http://wiki.delphigl.com/index.php/Multisampling
oder als Erweiterung:
http://wiki.delphigl.com/index...ultisample

ZEVS
 

Schoppy

BeitragSo, März 04, 2012 20:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke, aber von OpenGL habe ich kein Plan.

Also ich habe glEnable(GL_MULTISAMPLE_ARB) versucht aber ohne erfolg.

hectic

Sieger des IS Talentwettbewerb 2006

BeitragSo, März 04, 2012 22:20
Antworten mit Zitat
Benutzer-Profile anzeigen
Belasse die Farbpixel so wie sie sind, setze um das Bild herum (einen 1 Pixel dicken Rahmen) den Alphakanal auf 0. Dann hast du keine Treppeneffekte mehr. Selbst ohne irgend welche Filter die ggf. unnötig die Grafikkarte belasten.
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D
 

Schoppy

BeitragMo, März 05, 2012 0:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke dir, so funktioniert es.

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group