Seite 1 von 2
Wie funktioniert Grabsprite heutzutage ?
Verfasst: 07.06.2015 16:16
von kutta
Hallo Leute,
schon ein Weilchen her mit Purebasic

,
wollt grade mal wieder was machen(hab mir die 5.31/x64 Demo gezogen) aber die alten Codeschnipsel
wollen natürlich nicht mehr, ok egal alles ändert sich.
Wollt zum Einstieg was mit Grabsprite machen aber wie funzt das jetzt ?
Früher ging das immer so
Code: Alles auswählen
InitKeyboard()
InitSprite()
OpenScreen(800,600,32,"5_31 Test")
LoadSprite(1, "testbild.bmp")
DisplaySprite(1, 0, 0)
GrabSprite(2, 100, 200, 100, 100 )
Repeat
ExamineKeyboard()
ClearScreen(RGB(255,255,255))
;DisplaySprite(1, 0, 0)
DisplaySprite(2, 0, 0)
FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape)
Jetzt ist das 2te Sprite immer leer(schwarz) ?
Gruß
Re: Wie funktioniert Grabsprite heutzutage ?
Verfasst: 07.06.2015 16:27
von ts-soft
Funktioniert einwandfrei. Ich denke mal, der Pfad zum Bild paßt nicht!
Code: Alles auswählen
InitKeyboard()
InitSprite()
OpenScreen(800,600,32,"5_31 Test")
LoadSprite(1, #PB_Compiler_Home + "examples/sources/Data/Background.bmp")
DisplaySprite(1, 0, 0)
GrabSprite(2, 100, 200, 100, 100 )
Repeat
ExamineKeyboard()
ClearScreen(RGB(255,255,255))
;DisplaySprite(1, 0, 0)
DisplaySprite(2, 0, 0)
FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape)
Re: Wie funktioniert Grabsprite heutzutage ?
Verfasst: 07.06.2015 16:36
von kutta
Hallo Ts-soft ,
danke das du dich meines Problems so zeitnah animmst,
aber wenn ich das erste Displaysprite in der Schleife ausführen lasse
zeigt er mir das Sprite -> scheint also dazu sein hmmmm...
das bmp ist 512*512
Re: Wie funktioniert Grabsprite heutzutage ?
Verfasst: 07.06.2015 16:46
von kutta
Hier nochmal mit Createsprite,
Das Sprite bleibt schwarz ??
Code: Alles auswählen
InitKeyboard()
InitSprite()
OpenScreen(800,600,32,"5_31 Test")
CreateSprite(1,512,512)
LoadFont(1, "comic sans ms", 45)
StartDrawing(SpriteOutput(1))
Box(0, 0, 512, 512,RGB(0,0,255))
DrawingFont(FontID(1))
DrawingMode(#PB_2DDrawing_Transparent)
DrawText(0,10," TEST", RGB(0, 0, 134))
StopDrawing()
DisplaySprite(1, 0, 0)
GrabSprite(2, 0, 0, 150, 150 )
Repeat
ExamineKeyboard()
ClearScreen(RGB(255,255,255))
DisplaySprite(1, 0, 0)
DisplaySprite(2, 400, 400)
FlipBuffers()
Until KeyboardPushed(#PB_Key_Escape)
Re: Wie funktioniert Grabsprite heutzutage ?
Verfasst: 07.06.2015 17:06
von ts-soft
Mit Deinem Code unter Linux:
Hier noch ein Snapschuss in einer VM unter Windows 7:
Funktioniert also, ausser bei Dir. Keine Ahnung warum. Vielleicht mal DirectX 9 installieren:
http://www.chip.de/downloads/DirectX_13002926.html
Re: Wie funktioniert Grabsprite heutzutage ?
Verfasst: 07.06.2015 17:09
von kutta
sch.. bei mir bleibt das kästchen schwarz hab win 8.1 drauf
werd wohl mal n reinstall wagen oder x32 probieren.
Danke dir

Re: Wie funktioniert Grabsprite heutzutage ?
Verfasst: 07.06.2015 17:14
von ts-soft
Funktioniert mit 64-Bit auch unter Windows 8.1, brauchst Dir also die 32-Bit Version nicht antun!
PB 5.31 und PB 5.24 getested.
Re: Wie funktioniert Grabsprite heutzutage ?
Verfasst: 07.06.2015 17:24
von kutta
Tjo alles nochmal weggeputzt,
nochmal x64 installiert, leider keine Änderung.
Hab ne 970 gtx drin und dx11 drauf. Denk mal dx9 brauch ich nicht nochmal installieren, da dx9 Games auch laufen.
Liegts vielleicht an den Nvidia treibersettings

Re: Wie funktioniert Grabsprite heutzutage ?
Verfasst: 07.06.2015 18:07
von kutta
So hab mal meine Interne Grafikarte vom i7
laufen lassen, da geht das ganze, liegt also an den neuen NV treibern

Re: Wie funktioniert Grabsprite heutzutage ?
Verfasst: 07.06.2015 18:10
von ts-soft
kutta hat geschrieben:Denk mal dx9 brauch ich nicht nochmal installieren, da dx9 Games auch laufen.
Das ist ein Irrtum, DirectX 9 sollte man unbedingt installieren! Nimm den Webinstaller bei microsoft:
https://www.microsoft.com/de-de/downloa ... aspx?id=35
Aber ich denke mal, das ist nicht unbedingt das Problem.
//Nachtrag:
Vielleicht ein MultiMonitor-Problem? Am NVidia Treiber wirds kaum liegen.