53Fermer55
GoldenCrystalLe 18/04/2010 à 02:00
Kevin Kofler (./52) :
En principe, la solution propre pour la boucle d'évènements, c'est d'utiliser SDL_WaitEvent à la place de SDL_PollEvent.
Heu excuse moi mais le principe d'un « Wait » quelconque n'est il pas d'attendre que quelque chose se produise ?
Serais-tu en train de supposer qu'un événement doit forcément se produire à chaque frame ? Car si tel est le cas je t'arrête tout de suite: tu rêves.
Le seul cas où une fonction comme ça pourrait être utile, c'est quand le jeu est en pause. Là oui, tu ne veux probablement pas vérifier les événements en boucle, ni redessiner le jeu en permanence. Et encore, y'a plein de jeux ou tu veux qu'il se passe des trucs quand le jeu est en pause (si tu joues en réseau, que tu as un menu de pause avec des animations, etc.)
Cela dit, l'implémentation n'est pas optimale non plus. sad Normalement, il faudrait utiliser des sémaphores ou des attentes de type select pour gérer ça proprement, eux, ils se contentent de bloquer avec SDL_Delay(10); dans une boucle. sad
Peut-être qu'il n'y a pas de façon simple de gérer ça de manière unifiée sur toutes les plate-formes ?
Il me semble que le modèle de fonctionnement entre les plate-formes est assez hétérogène. Et même hétérogène entre Linux A et Linux B (remplacez Linux A et B par n'importe quels assemblages de logiciels type DirectFB, X.org, fbdev, …).

./53 > Ah oui exact, le support des .zip n'est pas directement dans zlib, mais minizip est fourni avec… Erreur de ma part sad
Sinon j'avais oublié mais il y a aussi LZMA SDK oui (Mais il faut bien garder en tête de ne pas utiliser des archives solides pour un jeu par contre ! ZIP ne gère pas ça donc ça évite le problème)