GLBasic forum

Codesnippets => Code Snippets => Topic started by: SharkRoyal on 2010-Oct-22

Title: Drawsprite mit RGB
Post by: SharkRoyal on 2010-Oct-22
Hi,
ich bin der neue hier im Forum =D.
Vorhin bin ich auf ein Problem gestoßen. Ich hab ein Kreisbild mit LoadSprite geladen, und musste feststellen, dass ich es nicht farblich ändern konnte O.o... Und bevor ich 100.000 verschieden farbige Bilder erstelle, hab ich einfach ein Codeschnipsel geschrieben.


FUNCTION DrawSprite2: num%,x%,y%,red%,green%,blue%
LOCAL width%,height%, colour% = RGB(red,green,blue)
GETSPRITESIZE num,width,height
STARTPOLY num
    POLYVECTOR x,y, 0,0, colour
    POLYVECTOR x,y+height,0,height,colour
    POLYVECTOR x+width,y+height ,width,height,colour
    POLYVECTOR x+width,y,width,0,colour
ENDPOLY
ENDFUNCTION


ich hoffe es hilft auch anderen Personen

Gruß SharkRoyal
Title: Re: Drawsprite mit RGB
Post by: Schranz0r on 2010-Oct-22
Hi und willkommen im Forum:

Zu dem Codeschnipsel:

Schön das du deine Erfahrungen gleich teilst!
Du brauchst jedoch nur bei der deklaration der Variablen ein % oder # angeben.
Im weiteren Code wird die Variable also als Float oder Integer weiter als solche behandelt. ( Spare Tiparbeit, weil Programmierer sind ja "faule" Menschen :D )
Title: Re: Drawsprite mit RGB
Post by: Slydog on 2010-Oct-22
[Google Translate:]
Überall, wo Sie verwenden:
'red%, blue%, green%'
es sein sollte:
'red%, green%, blue%'

Der "RGB () 'Befehl (R) ed (G) rün (B) lau.
Oder geben Sie einfach die letzte Farbe, um die Funktion als "Farbe%", und verwenden Sie nicht "RGB ()" in der Funktion, sondern nutzen "RGB ()" beim Aufruf der Funktion.

Aber, schön und einfach funktionieren!

[Original English:]
Everywhere you use:
'red%,blue%,green%'
it should be:
'red%,green%,blue%'

The 'RGB()' command is (R)ed (G)reen (B)lue.
Or, just pass the final colour to the function as 'colour%', and don't use 'RGB()' in the function, but use 'RGB()' when calling the function.

But, nice and simple function!
Title: Re: Drawsprite mit RGB
Post by: SharkRoyal on 2010-Oct-23
ohhh
Thank you. I didn't saw, that i switch green and blue paramaters. Thank you

But i change it.

Ich hab jetzt auch noch die % zeichen entfernt, damit man den Überblick leichter behält.
Und nochmal Danke für euer Lob.
ciao
Title: Re: Drawsprite mit RGB
Post by: monono on 2010-Oct-23
Hi Shark,
Was dir Slydog mit seiner Google-Translation noch sagen wollte ist, dass du nur einmal RGB() aufrufen musst. Also einmal vor dem STARTPOLY  color%=RGB(red, green, blue), da kommt dann eine Decimalzahl raus (z.B wird aus 255,0,0 -> 16711680). POLYVECTOR nimmt dann auch die Variable color%. Ist schneller und hübscher!
Wenn du das noch veränderst, ist´s perfekt. :)
Title: Re: Drawsprite mit RGB
Post by: SharkRoyal on 2010-Oct-24
Achso, gut zu wissen.
Danke, habs nun geändert