Cool
PucKmAn 1.1u
Je viens juste de corriger un autre bug, quand ExamineKeyboard() n'etait utilisé du tout dans le code, la touche ESC pouvait interferer sur l'écran. Les nouvelles libraries sont toujours la: www.purebasic.com/markus/ Tous mes tests se passent maintenant parfaitement (XP SP 2). Si certains d'entre vous pouvaient tester sur une autre configuration...
J'ai testé avec un de mes codes , et ça fonctionne plutôt bien , sauf que parfois le personnage disparait .Mais je soupçonne que le problème vient de mon code , j'ai repris le code tel qu'il était, je ne teste pas IsScreenActive().
Par contre si je place le personnage au bord d'une plateforme , et que je fais ALT TAB , quand je relance le jeu, je retrouve mon personnage accroché au rebord de la plateforme (c'est normal , c'est prévu dans le code , mais bon , normalement , je devrais retrouver mon personnage à la même position non ? ).
http://perso.wanadoo.fr/comtois/sources/plateforme6.zip
Je suis sous XP SP2 .
Je peux fournir le source si c'est nécessaire.
Par contre si je place le personnage au bord d'une plateforme , et que je fais ALT TAB , quand je relance le jeu, je retrouve mon personnage accroché au rebord de la plateforme (c'est normal , c'est prévu dans le code , mais bon , normalement , je devrais retrouver mon personnage à la même position non ? ).
http://perso.wanadoo.fr/comtois/sources/plateforme6.zip
Je suis sous XP SP2 .
Je peux fournir le source si c'est nécessaire.
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Le bug concerne seulement la corruption des sprites (image corrompue). Je ne sais pas pourquoi le perso disparait mais à mon avis c'est un test dans ton code non ? J'ai fait de plus amples tests avec 100 Mo de sprites video et ca marche nickel (ca met 2-3 secondes pour switcher du ALT-TAB mais bon au moins ca marche..). Si tu ne teste pas IsScreenActive(), alors ton jeux continue à se derouler de maniere hyperrapide (car FlipBuffers() n'attends plus la synchro verticale). Quelqu'un est encore sous Win98/ME/2000 avec DX7 ?
Je viens d'ajouter un test dans le programme , juste après le FlipBuffers()
Et maintenant ,ça fonctionne parfaitement .
Je n'avais pas prévu mon programme pour ça , mais maintenant que ça devient simple à faire , je ne vais pas m'en priver , merci Fred
Code : Tout sélectionner
If IsScreenActive()=0
Repeat
FlipBuffers()
Until IsScreenActive()
EndIfJe n'avais pas prévu mon programme pour ça , mais maintenant que ça devient simple à faire , je ne vais pas m'en priver , merci Fred
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
je viens de faire un essai avec un prog qui utilise la 3D , et là j'ai un beau plantage
Je réalise que ce post est hors sujet , le correctif ne concerne que les sprites .
[EDIT]---------------------------
Microsoft Visual C++ Runtime Library
---------------------------
Runtime Error!
Program: D:\PureBasic3_92\Compilers\PureBasic8532453.exe
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
---------------------------
OK
---------------------------
Je réalise que ce post est hors sujet , le correctif ne concerne que les sprites .
Dernière modification par comtois le sam. 11/déc./2004 11:19, modifié 2 fois.
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
-
Le Soldat Inconnu
- Messages : 4312
- Inscription : mer. 28/janv./2004 20:58
- Localisation : Clermont ferrand OU Olsztyn
- Contact :
Fonctionne nickel (avec une GeForce2)
J'ai testé avec mon jeu de stratégie, 215 sprites.
ça mets un peu de temps à revenir sous windows 2-3 secondes mais je n'ai eu aucun problème avec les sprites au retour sous le jeu.
J'ai testé avec mon jeu de stratégie, 215 sprites.
ça mets un peu de temps à revenir sous windows 2-3 secondes mais je n'ai eu aucun problème avec les sprites au retour sous le jeu.
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Je conseille de mettre un Delay(20) à la place du FlipBuffers() pour liberer completement le temps CPU, comme dans Waponez.comtois a écrit :Je viens d'ajouter un test dans le programme , juste après le FlipBuffers()
Et maintenant ,ça fonctionne parfaitement .Code : Tout sélectionner
If IsScreenActive()=0 Repeat FlipBuffers() Until IsScreenActive() EndIf
Je n'avais pas prévu mon programme pour ça , mais maintenant que ça devient simple à faire , je ne vais pas m'en priver , merci Fred
Régis: merci pour tes tests. Je vais voir si je peux pas optimiser le temps de transfert.
j'ai remplacé le flipbuffers() par un delay(20) , mais c'était impossible de relancer le jeu .
Finalement , en faisant
je peux relancer le jeu, et la CPU n'est plus à 100% ( merci de me l'avoir signalé , je n'avais pas fait attention à ça ).
J'ai regardé Waponez , il faudra peut-être que dans mes prochains codes , je fasse le test de IsScreenActive() de la même façon .Mais là c'était juste pour faire un essai avec un code existant , qui n'était pas prévu pour ça.
Finalement , en faisant
Code : Tout sélectionner
If IsScreenActive()=0
Repeat
Delay(20)
FlipBuffers()
Until IsScreenActive()
EndIfJ'ai regardé Waponez , il faudra peut-être que dans mes prochains codes , je fasse le test de IsScreenActive() de la même façon .Mais là c'était juste pour faire un essai avec un code existant , qui n'était pas prévu pour ça.
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
-
Le Soldat Inconnu
- Messages : 4312
- Inscription : mer. 28/janv./2004 20:58
- Localisation : Clermont ferrand OU Olsztyn
- Contact :
Merci Fred de te pencher sur le sujet
Mes tests:
http://perso.wanadoo.fr/marcus.zone/fic ... s_fred.zip
juste un truc qui affiche un sprite 2d en mouvement et un 3d en rotation zoumé avec musique mod ou midi . (Super nana
)
Sous Xp sp2 :
les graphismes ne sont pas altérés , exellent
( jolis tétons
)
par contre le jeu ne se met pas en pause , bouffe 100% du cpu étant replié dans les taches . la zik en mod effectue une pause , mais la midi continue .
Sous 2000 sp4 :
les graphismes bugent encores
surtout si l'on ne relache pas assez vite le alt apres alt+tab.
reste hidem qu'avec xp.
Je répète que le jeu replié dans la bare des taches ne crée pas d'icone dans le menu deroulant alt+tab qui s'affiche au millieu du bureau ( il faut bien sur plusieurs fenetres ouvertes pour que ce menu aparaisse).
Soit :
Encore Merci FRed .
perso ne m'en fou que sous 2K sa marche pas vu que seulement 2% des pc tournent dessus.
le problemes du cpu bouffé peut etre résolu comme le dis Comtois en remplacant le FlipBuffers() par une boucle du style
on peu eventuellemnt inclure dans cette boucle un test movie pour mettre en pause les midi .
Ma conclusion :
Bravo Fred
t'as fais un grand pas . la mise en pause auto serait le top , et l'icone dans le menu deroulant ferait plus PRO
Et pour 2k ---, pas grave c'est Xp qui rêgne en maître .
Mes tests:
http://perso.wanadoo.fr/marcus.zone/fic ... s_fred.zip
juste un truc qui affiche un sprite 2d en mouvement et un 3d en rotation zoumé avec musique mod ou midi . (Super nana
Sous Xp sp2 :
les graphismes ne sont pas altérés , exellent
par contre le jeu ne se met pas en pause , bouffe 100% du cpu étant replié dans les taches . la zik en mod effectue une pause , mais la midi continue .
Sous 2000 sp4 :
les graphismes bugent encores
surtout si l'on ne relache pas assez vite le alt apres alt+tab.
reste hidem qu'avec xp.
Je répète que le jeu replié dans la bare des taches ne crée pas d'icone dans le menu deroulant alt+tab qui s'affiche au millieu du bureau ( il faut bien sur plusieurs fenetres ouvertes pour que ce menu aparaisse).
Soit :
Encore Merci FRed .
perso ne m'en fou que sous 2K sa marche pas vu que seulement 2% des pc tournent dessus.
le problemes du cpu bouffé peut etre résolu comme le dis Comtois en remplacant le FlipBuffers() par une boucle du style
Code : Tout sélectionner
If IsScreenActive()=0
Repeat
Delay(20)
FlipBuffers()
Until IsScreenActive()
EndIfMa conclusion :
Bravo Fred
Et pour 2k ---, pas grave c'est Xp qui rêgne en maître .