Ich bastel grad ein kleines Spiel. Dazu render ich Sprites (was denn sonst
Kann mir jemand ein Beispiel geben mit dem auf allen PCs eine Sprite transparent dargestellt wird ? Danke schon mal im voraus
Nimm als Transparenzfarbe Schwarz (RGB 0,0,0) und alsLittleFurz hat geschrieben:Kann mir jemand ein Beispiel geben mit dem auf allen PCs eine Sprite transparent dargestellt wird ? Danke schon mal im voraus
Dann eben nicht.LittleFurz hat geschrieben:Als transparente Farbe mag ich nicht grade so schwarz nehmen
Du solltest ja schwarz auf 8,8,8 umstellen. Da sieht manLittleFurz hat geschrieben:Die brauch ich wo anders
Da hast Du wohl Pech. Kein Code, keine Bilder, keine Hilfe.LittleFurz hat geschrieben:[Edit:]
hat auch nicht geholfenMich macht es stuzig das es nur bei mir funktioniert. auf 4 getesteten PCs hat es nur bei mir gearbeitet o_O
Dann schreibt man sich ein Mini-Tool dafür.Kaeru Gaman hat geschrieben:allerdings mag das ziemlich arbeit sein, die farben zu
verändern, wenn man kein passendes tool dafür hat.
Code: Alles auswählen
#sptSoldat = 0
#sp3Soldat = 0
Procedure.l GetTrans(Sprite.l)
DefType.l PixelColor
Debug Sprite
If StartDrawing(SpriteOutput(Sprite))
PixelColor = Point(0, 0)
StopDrawing()
EndIf
ProcedureReturn PixelColor
EndProcedure
InitSprite()
InitSprite3D()
InitKeyboard()
UsePNGImageDecoder()
OpenScreen(1024, 768, 32, "Test")
LoadSprite (#sptSoldat, "gfx\Soldier0.png", #PB_Sprite_Texture)
TransparentSpriteColor(#sptSoldat, Red(GetTrans(#sptSoldat)), Green(GetTrans(#sptSoldat)), Blue(GetTrans(#sptSoldat)))
CreateSprite3D (#sptSoldat, #sp3Soldat)
Sprite3DQuality(1)
RotateSprite3D(#sp3Soldat,0,1)
Repeat
ClearScreen(128, 128, 128)
ExamineKeyboard()
If KeyboardPushed(#PB_Key_Escape)
Break 1
EndIf
If Start3D()
RotateSprite3D(#sp3Soldat, 1,1)
DisplaySprite3D(#sp3Soldat, 20, 20)
Stop3D()
EndIf
FlipBuffers()
ForEver