Probleme SPRITES entre PURE 5.71 et 6.21
Re: Probleme SPRITES entre PURE 5.71 et 6.21
bah c'est un .PNG classique...
Mais bon il faudrait peut etre que je donne l'ensemble du code.... sauf que c'est bordelique
Ou faire un vrai petit programme qui presente le meme probleme
Mais bon il faudrait peut etre que je donne l'ensemble du code.... sauf que c'est bordelique
Ou faire un vrai petit programme qui presente le meme probleme
- threedslider
- Messages : 452
- Inscription : dim. 01/juil./2018 22:38
Re: Probleme SPRITES entre PURE 5.71 et 6.21
Comme dit SPH sans ton image png on ne le saura pas de quoi est le problème....
j'ai testé ton code sur une autre image il marche donc je vois pas où le problème
j'ai testé ton code sur une autre image il marche donc je vois pas où le problème

Re: Probleme SPRITES entre PURE 5.71 et 6.21
Ou ça tombe, une de tes couleurs est transparente... ou pas ! Et paf, ça fait une erreur.
... QUOI QUE : si tu dis que ça marche avec PB 5, c'est que c'est l'Upgrade de PB 6.21 qui bloque.
Mais bon, pour tester ta routine, j'ai besoin de ton PNG. Sinon, on en reste là


!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
Re: Probleme SPRITES entre PURE 5.71 et 6.21
Désolé pour la réponse tardive...
Bon, j'ai essayé et je ne comprend pas pourquoi le code ne fonctionne pas sur PB 6.21
Quelqu'un pourrait dire ce que veux dire ce debuggage :
Bon, j'ai essayé et je ne comprend pas pourquoi le code ne fonctionne pas sur PB 6.21
Quelqu'un pourrait dire ce que veux dire ce debuggage :

[15 :18 :16] Attente du démarrage du programme...
[15 :18 :16] Type d'exécutable: Windows - x64 (64bit, Unicode)
[15 :18 :16] Exécutable démarré.
[15 :18 :17] [ERREUR] sprite_png_6_21.pb (Ligne: 17)
[15 :18 :17] [ERREUR] DisplayTransparentSprite(): A sprite should be created with the flag #PB_Sprite_AlphaBlending to use this command.
Code : Tout sélectionner
; INIT
InitSprite():InitKeyboard():UsePNGImageDecoder() :InitSound() :InitMouse()
; CREATION FENETRE JEU
OpenWindow(0, 0, 0, 640, 400, "",#PB_Window_BorderLess|#PB_Window_ScreenCentered) ;#PB_Window_TitleBar | #PB_Window_ScreenCentered|#PB_Window_SystemMenu
OpenWindowedScreen(WindowID(0), 0, 0, 640, 400, 1, 0, 0)
; DECOUPE DES SPRITES
ClearScreen(RGB(0,0,0))
CatchSprite(9999,?sprite9999,#PB_Sprite_AlphaBlending)
DisplayTransparentSprite (9999,0,0,255)
GrabSprite(0,0,0,32,32,#PB_Sprite_PixelCollision)
dessinmaria=0
; AFFICHAGE
Repeat
ClearScreen(RGB(0,0,0))
DisplayTransparentSprite (dessinmaria,150,60,200,255)
FlipBuffers()
ExamineKeyboard()
Until KeyboardPushed(#PB_Key_Escape)
; FICHIERS
DataSection
sprite9999:
IncludeBinary "d:/td00110.png"
EndDataSection
!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
Re: Probleme SPRITES entre PURE 5.71 et 6.21
Code : Tout sélectionner
GrabSprite(0,0,0,32,32,#PB_Sprite_PixelCollision|#PB_Sprite_AlphaBlending)

Re: Probleme SPRITES entre PURE 5.71 et 6.21
Grand merci à toi !case a écrit : mer. 09/juil./2025 1:19Code : Tout sélectionner
GrabSprite(0,0,0,32,32,#PB_Sprite_PixelCollision|#PB_Sprite_AlphaBlending)
![]()
Jamais je n'aurais pensé à le fourrer la-bas !

Code : Tout sélectionner
; INIT
InitSprite():InitKeyboard():UsePNGImageDecoder() :InitSound() :InitMouse()
; CREATION FENETRE JEU
OpenWindow(0, 0, 0, 640, 400, "",#PB_Window_BorderLess|#PB_Window_ScreenCentered) ;#PB_Window_TitleBar | #PB_Window_ScreenCentered|#PB_Window_SystemMenu
OpenWindowedScreen(WindowID(0), 0, 0, 640, 400, 1, 0, 0)
; DECOUPE DES SPRITES
ClearScreen(RGB(0,0,0))
CatchSprite(9999,?sprite9999,#PB_Sprite_AlphaBlending)
DisplayTransparentSprite (9999,0,0,255)
GrabSprite(0,0,0,32,32,#PB_Sprite_PixelCollision|#PB_Sprite_AlphaBlending)
dessinmaria=0
; AFFICHAGE
Repeat
ClearScreen(RGB(0,0,0))
DisplayTransparentSprite (dessinmaria,150,60,200)
FlipBuffers()
ExamineKeyboard()
Until KeyboardPushed(#PB_Key_Escape)
; FICHIERS
DataSection
sprite9999:
IncludeBinary "d:/td00110.png"
EndDataSection
!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
Re: Probleme SPRITES entre PURE 5.71 et 6.21
bon moi j'ai toujours le probleme : les sprites ne s'affichent pas.
Du coup, pas grave, je code en 5.71, là tout va bien.
Du coup, pas grave, je code en 5.71, là tout va bien.
Re: Probleme SPRITES entre PURE 5.71 et 6.21
Chez moi, mon code fonctionne sur 6.21drfloyd a écrit : jeu. 10/juil./2025 13:43 bon moi j'ai toujours le probleme : les sprites ne s'affichent pas.
Mais bon, je préfère bosser sur PB 6.12

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
Re: Probleme SPRITES entre PURE 5.71 et 6.21
est ce que le fait de coder en 5.71 est un probleme ????
Pas en terme de nombre de commandes dispo, je suis tres heureux avec 5.71, mais plutot :
En terme de compatibilité avec Windows 11 par exemple ?
En terme de bugs ?
d'optimisation de la compilation ?
Pas en terme de nombre de commandes dispo, je suis tres heureux avec 5.71, mais plutot :
En terme de compatibilité avec Windows 11 par exemple ?
En terme de bugs ?
d'optimisation de la compilation ?
Re: Probleme SPRITES entre PURE 5.71 et 6.21
Non, aucun problème

!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
Re: Probleme SPRITES entre PURE 5.71 et 6.21
D'ailleurs, les "vieux" PB (genre 5.x) compilent des codes en fichier EXE moins lourds.
Donc, c'est utile d'en avoir un ancien !
Donc, c'est utile d'en avoir un ancien !
!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
- threedslider
- Messages : 452
- Inscription : dim. 01/juil./2018 22:38
Re: Probleme SPRITES entre PURE 5.71 et 6.21
@drfloyd : J'ai fixé ton truc mais c'est bizarre quand même
Est ce que cela marche pour toi sinon ?

Code : Tout sélectionner
; INIT
InitSprite():InitKeyboard():UsePNGImageDecoder() :InitSound() :InitMouse()
; CREATION FENETRE JEU
OpenWindow(0, 0, 0, 640, 400, "",#PB_Window_BorderLess|#PB_Window_ScreenCentered) ;#PB_Window_TitleBar | #PB_Window_ScreenCentered|#PB_Window_SystemMenu
OpenWindowedScreen(WindowID(0), 0, 0, 640, 400, 1, 0, 0)
; DECOUPE DES SPRITES
ClearScreen(RGB(0,0,0))
CatchSprite(9999,?sprite9999,#PB_Sprite_AlphaBlending)
DisplayTransparentSprite (9999,0,0,255)
GrabSprite(0,-5,-210,58,58, #PB_Sprite_PixelCollision|#PB_Sprite_AlphaBlending)
dessinmaria=0
; AFFICHAGE
Repeat
ClearScreen(RGB(0,0,0))
DisplayTransparentSprite (dessinmaria,150,60,200)
FlipBuffers()
ExamineKeyboard()
Until KeyboardPushed(#PB_Key_Escape)
; FICHIERS
DataSection
sprite9999:
IncludeBinary "DATA/td00110.png"
EndDataSection
- Itsy Bitsy
- Messages : 13
- Inscription : lun. 24/juin/2019 12:19
Re: Probleme SPRITES entre PURE 5.71 et 6.21
Tout d'abord, félicitation à tous les heureux possesseurs d'ordinateurs quantiques, à base de mémoire sans limites.
En attendant aussi ce jour, chez moi l'image apparait bien avant que la fenêtre fige, pour finir par proposer de fermer le programme ou bien d'attendre la réponse du programme.
On peut deviner dans ce cas, d'un problème d'empilement d'évènements non traités.
Un simple While WindowEvent():Wend dans la boucle, semble avoir résolu le problème.
Exemple pour le visionner en mode debug :
En ce qui concerne les versions PB, je les vois comme ça :

En attendant aussi ce jour, chez moi l'image apparait bien avant que la fenêtre fige, pour finir par proposer de fermer le programme ou bien d'attendre la réponse du programme.
On peut deviner dans ce cas, d'un problème d'empilement d'évènements non traités.
Un simple While WindowEvent():Wend dans la boucle, semble avoir résolu le problème.
Code : Tout sélectionner
; INIT
InitSprite():InitKeyboard():UsePNGImageDecoder() :InitSound() :InitMouse()
; CREATION FENETRE JEU
OpenWindow(0, 0, 0, 640, 400, "",#PB_Window_BorderLess|#PB_Window_ScreenCentered) ;#PB_Window_TitleBar | #PB_Window_ScreenCentered|#PB_Window_SystemMenu
OpenWindowedScreen(WindowID(0), 0, 0, 640, 400, 1, 0, 0)
; DECOUPE DES SPRITES
ClearScreen(RGB(0,0,0))
CatchSprite(9999,?sprite9999,#PB_Sprite_AlphaBlending)
DisplayTransparentSprite (9999,0,0,255)
GrabSprite(0,0,0,32,32,#PB_Sprite_PixelCollision|#PB_Sprite_AlphaBlending)
dessinmaria=0
; AFFICHAGE
Repeat
While WindowEvent() ; modif
Wend
ClearScreen(RGB(0,0,0))
DisplayTransparentSprite (dessinmaria,150,60,200)
FlipBuffers()
ExamineKeyboard()
Until KeyboardPushed(#PB_Key_Escape)
; FICHIERS
DataSection
sprite9999:
IncludeBinary "d:/td00110.png"
EndDataSection
Code : Tout sélectionner
; INIT
InitSprite():InitKeyboard():UsePNGImageDecoder() :InitSound() :InitMouse()
; CREATION FENETRE JEU
OpenWindow(0, 0, 0, 640, 400, "",#PB_Window_BorderLess|#PB_Window_ScreenCentered) ;#PB_Window_TitleBar | #PB_Window_ScreenCentered|#PB_Window_SystemMenu
OpenWindowedScreen(WindowID(0), 0, 0, 640, 400, 1, 0, 0)
; DECOUPE DES SPRITES
ClearScreen(RGB(0,0,0))
CatchSprite(9999,?sprite9999,#PB_Sprite_AlphaBlending)
DisplayTransparentSprite (9999,0,0,255)
GrabSprite(0,0,0,32,32,#PB_Sprite_PixelCollision|#PB_Sprite_AlphaBlending)
dessinmaria=0
; AFFICHAGE
Repeat
While WindowEvent() ; modif
u+1
Debug u
Wend
ClearScreen(RGB(0,0,0))
DisplayTransparentSprite (dessinmaria,150+u,60,200) ; modif +u
FlipBuffers()
ExamineKeyboard()
Until KeyboardPushed(#PB_Key_Escape)
; FICHIERS
DataSection
sprite9999:
IncludeBinary "d:/td00110.png"
EndDataSection
Code : Tout sélectionner
- 5.42 dernière version ASCII/UNICODE
- 5.73 dernière version Mac X86
- 4.00 dernière version Amiga
- 3.94 dernière version Mac PPC ?
- threedslider
- Messages : 452
- Inscription : dim. 01/juil./2018 22:38
Re: Probleme SPRITES entre PURE 5.71 et 6.21
@drfloyd: Avec ton code si tu veux faire marcher avec PB 6.21, je crois avoir trouver où est le problème, c'est à cause de DPI que tu vois pas, donc va sur menu compiler -> compiler options -> desactive le "Enable DPI..." et là paf tu vois ton perso comme si c'etait en PB 5.71 !
Voilà c'est résolu



Voilà c'est résolu
