grayscale (schnellere methode gesucht....)

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

Wild-Storm

Betreff: grayscale (schnellere methode gesucht....)

BeitragDi, Feb 01, 2005 21:11
Antworten mit Zitat
Benutzer-Profile anzeigen
hi,
ich habe mich in letzter zeit mal mit bildbearbeitung beschäftigt (bzw. für texturen). darunter fällt natürlich auch ein frabiges bild in ein schwarweiß bild umzuwandeln.
ich habe verschiedene methoden angewendet, allerdings muss das ganze in realtime berechnet werden. und somit komme ich auch schon zum punkt. alle methoden sind nicht für realtimeeffekte benutzbar (bei einer bild/texturgrösse 512x512 / 256x256) denn die FPS zahl sinkt wirklich hart in den keller.
nunja, hier mal die verschiedenen methoden die ich ausprobiert habe. hat einer eine idee, wie ich diese umschreiben könnte um sie schneller zu machen?


Code: [AUSKLAPPEN]
For y = 0 To h - 1
 For x = 0 To w - 1
  argb = ReadPixelFast(x,y,texbuffer)
  r   = argb Shr 16 And $FF
  g = argb Shr  8 And $FF
  b  = argb        And $FF
  gray  = (r + g + b) / 3
  WritePixelFast x,y,gray Shl 16 Or gray Shl 8 Or gray,texbuffer
 Next
Next

;nächste methode

For y = 0 To h - 1
 For x = 0 To w - 1
  argb = ReadPixelFast(x,y,texbuffer)
  r   = argb Shr 16 And $FF
  g = argb Shr  8 And $FF
  b = argb  And $FF
  gray  = r * 0.298039215 + g * 0.588235293 + b * 0.109803921
  WritePixelFast x,y,gray Shl 16 Or gray Shl 8 Or gray,texbuffer
 Next
Next

;und noch eine

For y = 0 To h - 1
 For x = 0 To w - 1
  argb = ReadPixelFast(x,y,texbuffer)
  r   = argb Shr 16 And $FF
  g = argb Shr  8 And $FF
  b  = argb        And $FF
  gray  = r * 0.2125 + g * 0.7154 + b * 0.0721
  WritePixelFast x,y,gray Shl 16 Or gray Shl 8 Or gray,texbuffer
 Next
Next
Visit http://www.next-dimension.org
-------------------------------------------------
Freeware Modelle, Texturen & Sounds:
http://www.blitzforum.de/forum...hp?t=12875
 

Klaas

BeitragDi, Feb 01, 2005 22:02
Antworten mit Zitat
Benutzer-Profile anzeigen
Das Problem ist der langsame Zugriff von Write/ReadPixelFast.

Für Fullscreen-Echtzeiteffekte leider kaum zu gebrauchen !

Wild-Storm

BeitragDi, Feb 01, 2005 22:46
Antworten mit Zitat
Benutzer-Profile anzeigen
hm, ansonsten gibts keine möglichkeit das zu realisieren, oder?
Visit http://www.next-dimension.org
-------------------------------------------------
Freeware Modelle, Texturen & Sounds:
http://www.blitzforum.de/forum...hp?t=12875
 

Klaas

BeitragMi, Feb 02, 2005 18:38
Antworten mit Zitat
Benutzer-Profile anzeigen
wandle alle Texturebn einmal in Schwarz weiß um ... mache alle farbigen Lamben Grau ... etc.

Der effekt ist dann der selbe

Wild-Storm

BeitragMi, Feb 02, 2005 18:40
Antworten mit Zitat
Benutzer-Profile anzeigen
naja, das problem ist dann aber, dass ungefähr das doppelte des arbeitsspeichers/gfxspeichers verbaucht wird. nich so dolle Sad
Visit http://www.next-dimension.org
-------------------------------------------------
Freeware Modelle, Texturen & Sounds:
http://www.blitzforum.de/forum...hp?t=12875

Vertex

BeitragMi, Feb 02, 2005 18:43
Antworten mit Zitat
Benutzer-Profile anzeigen
https://www.blitzforum.de/viewtopic.php?t=4364
wie wärs damit? Smile
vertex.dreamfall.at | GitHub
 

Klaas

BeitragMi, Feb 02, 2005 18:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Sorry, aber sonst fällt mir wirklich nichts mehr ein. Blitz ist in diesen Dingen doch recht beschränkt.

Ich denke aber das dies noch eine der Methoden ist die sich schnell und einfach umsetzen lassen.

Wild-Storm

BeitragMi, Feb 02, 2005 19:03
Antworten mit Zitat
Benutzer-Profile anzeigen
thx vertex, ich werds mir mal anschauen!
Visit http://www.next-dimension.org
-------------------------------------------------
Freeware Modelle, Texturen & Sounds:
http://www.blitzforum.de/forum...hp?t=12875

Sebastian

BeitragSo, Feb 13, 2005 14:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Klaas hat Folgendes geschrieben:
Das Problem ist der langsame Zugriff von Write/ReadPixelFast.

Für Fullscreen-Echtzeiteffekte leider kaum zu gebrauchen !


Und warum heißt es dann Writepixelfast ? Laughing

Lol .....
Seit 2 Jahren kein BlitzBasic und kein Windows mehr, und stolz darauf !

Wild-Storm

BeitragSo, Feb 13, 2005 14:36
Antworten mit Zitat
Benutzer-Profile anzeigen
weils schneller als writepixel oder plot ist.....
Visit http://www.next-dimension.org
-------------------------------------------------
Freeware Modelle, Texturen & Sounds:
http://www.blitzforum.de/forum...hp?t=12875

stfighter01

BeitragSo, Feb 13, 2005 17:25
Antworten mit Zitat
Benutzer-Profile anzeigen
hmm vertex und ava haben mal probiert das ganze in eine bank zu schreiben und diese dann in ein image übertragen.

dürfte auch ziemlich schnell arbeiten.


mfg stfighter
Denken hilft!

Wild-Storm

BeitragSo, Feb 13, 2005 17:26
Antworten mit Zitat
Benutzer-Profile anzeigen
ich habs inzwischen mit sprites hibekommen. trozdem thx Smile
Visit http://www.next-dimension.org
-------------------------------------------------
Freeware Modelle, Texturen & Sounds:
http://www.blitzforum.de/forum...hp?t=12875

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group