Grafikfilter

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

 

ChristianK

Betreff: Grafikfilter

BeitragFr, Apr 20, 2007 19:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Ist es möglich, in Blitz3D Filter, wie zum Beispiel Grauskalierung, Sepia und Kontrast, zu benutzen?
Ich hab mal was mit DirectDraw ausprobiert, aber dazu musste ich das 'primary surface' ansprechen, aber das hat nicht funktioniert. Ich weiß sowieso nicht, ob das getaugt hätte. Wink
Gibt es denn noch eine andere Möglichkeit?
 

Dreamora

BeitragFr, Apr 20, 2007 19:20
Antworten mit Zitat
Benutzer-Profile anzeigen
Da das per Pixel Effekte sind ist das kein Problem ... musst einfach manuell die pixel verändern ...

ansonsten: nein ohne Pixelshader nicht möglich also nicht mit Blitz
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.
 

ChristianK

BeitragFr, Apr 20, 2007 19:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Ist das manuelle Verändern von Pixeln denn auch in Realtime zu gebrauchen?
 

Dreamora

BeitragFr, Apr 20, 2007 20:13
Antworten mit Zitat
Benutzer-Profile anzeigen
Kommt auf die Menge der Pixel an.

Wenns viele sind, dann nein, dann gehts ohne Pixelshader nicht.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.
 

ChristianK

BeitragSa, Apr 21, 2007 11:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Eigentlich hatte ich das für den gesamten Bildschirm gedacht, also in meinem Fall 1024x768. Das dürften wohl zu viele Pixel sein.

Kennst du dich ein bisschen in DirectDraw aus?
 

Dreamora

BeitragSa, Apr 21, 2007 11:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Das nutzt dir nichts selbst wenn du es würdest.

Sephia etc sind effekte die mit BlendModes nicht erreicht werden können, dafür brauchst du explizit Möglichkeiten die Pixel einzeln zu ändern, aber auf der Grafikkarte statt der CPU -> Pixelshader.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.
 

Todeskop

BeitragSa, Apr 21, 2007 11:57
Antworten mit Zitat
Benutzer-Profile anzeigen
man könnt doch auch theoretisch, wie es viele im englischem forum machen, einfach ein sprite nehmen filtertexture druff, alphawert einstellen und mit der camera eins machen, fertig....
 

Dreamora

BeitragSa, Apr 21, 2007 12:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Und was nutzt dir das für Channel Effekte? Solche Tricks sind super für Blur und ähnliche Effekte die in 2D Grafikprogrammen auf "Layern" basieren.
(kann falsch liegen, weiss nämlich grad net mit sicherheit wie die Night- und Heat Vision Fakes laufen, würde allerdings vermuten das man die Objekte mit Schwarz Weiss Texturen rendert statt den farbigen und dann Overlay mit grünen / rotem Render to Texture Sprite macht dessen Textureblend auf 5 gesetzt ist)

Das einzige was für Channel Effekte wirklich funktioniert sind negative Lichtquellen um alle anderen Channels auszulöschen (ja, Licht geht von -255 bis +255 für jede Farbe) zum Beispiel.

Das Problem ist, damit kann man noch net ma Schwarz - Weiss erzeugen weil es für jedes Objekt ein eigenes Licht brauchen würde etc. Geschweige denn Sephia zB.

Mit einem Shader ist das ganze simpel.
Da nimmt man einfach den Pixel und setzt die Farbe auf den Mittelwert der 3 Farbkanäle und gut ist. Da die Grafikkarte sich mit der Berechnung dann abmüht anstatt der CPU wie es in B3D ist, ist man dann fein raus und die GPU tut auch noch was sinnvolles ^^
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Black Spider

BeitragSa, Apr 21, 2007 16:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Nachtsichteffekt ist möglich, hab ich mal geschrieben, siehe Codearchiv,
Wärmeshader wäre nur mit austausch der Textur möglich, genau wie Schwarzweiss oder Sepia effekt,
jeden einzelnen Pixel bei einer auflösung von z.b. 1024/768 durchzugehen würde arg langsam werden, kaum in Realtime verwendbar, würde so aussehen:

For x=1 To 1024
For y=1 To 768
;pixelchecken+einfärben
Next
Next

Wenn man ein "Step 2" oder "Step 10" dahinter packen könnte, wäre es evtl. möglich,
weiss aber nicht wie es dann aussähe.


Ansonsten ist noch der SetGamma befehl recht interessant; aber auch nicht das was du suchst.
Coming soon:
http://img132.imageshack.us/im...im2ab6.gif

hectic

Sieger des IS Talentwettbewerb 2006

BeitragSa, Apr 21, 2007 18:14
Antworten mit Zitat
Benutzer-Profile anzeigen
Eine Textur komplett als schwarz/weiß geht zB mit TextureBlend =4, also ohne Graustufen dazwischen.
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group