APPRENDRE LA SDL

unionx Messages postés 190 Date d'inscription dimanche 17 avril 2005 Statut Membre Dernière intervention 18 mars 2009 - 11 août 2008 à 03:53
snpier wolf Messages postés 216 Date d'inscription samedi 11 août 2007 Statut Membre Dernière intervention 30 mai 2011 - 18 août 2008 à 16:01
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/47560-apprendre-la-sdl

snpier wolf Messages postés 216 Date d'inscription samedi 11 août 2007 Statut Membre Dernière intervention 30 mai 2011
18 août 2008 à 16:01
merci bien je vais regarder ça.
medACK Messages postés 30 Date d'inscription dimanche 20 juillet 2008 Statut Membre Dernière intervention 7 octobre 2009 1
18 août 2008 à 15:39
DirectX, c'est un loin à ma porter la 3D, je préfere rester avec la SDL, et puis quand je passera à la 3D je pensrai plutot à OpenGL (elle est portable, DirectX ne fonctionne que sous WINDOWS).
Si tu pense que ton ordi est infecté et que ton anti-virus ne détecte rien (c'est ce qui m'arrive souvent) je te conseille "ComboFix".
snpier wolf Messages postés 216 Date d'inscription samedi 11 août 2007 Statut Membre Dernière intervention 30 mai 2011
18 août 2008 à 15:29
un virus j'en ais bien peur mais mon pc fait des truc louche de puis quelque temps enfin.
pour améliorés si tu veux que ça sois portable je vois que avoir des image de haut qualité et de grand taille pour avoir un meilleur rendu sinon, directx est (sous windows) plus performant.
medACK Messages postés 30 Date d'inscription dimanche 20 juillet 2008 Statut Membre Dernière intervention 7 octobre 2009 1
18 août 2008 à 15:19
c'est bien 2Go, mais je pensse que t'as un probleme de mémoire, soit à cause de Vista (car il demande trop de memoire pour le beau affichage qu'il donne), ou bien à cause d'un virus (j'éspere que ça sera pas le cas!).
tiens moi au courant si ça marche.
sinon j'aimerai savoir qu'elle sont les autres bibliotheques disponibles pour améliorés mon jeu de 2D ( SxDL,....).
snpier wolf Messages postés 216 Date d'inscription samedi 11 août 2007 Statut Membre Dernière intervention 30 mai 2011
18 août 2008 à 15:03
2Go
ok je le laisse un moment pour voir
medACK Messages postés 30 Date d'inscription dimanche 20 juillet 2008 Statut Membre Dernière intervention 7 octobre 2009 1
18 août 2008 à 15:00
Ta combien de mémoire sur ta RAM?
quelle est la capacité de ta carte graphique?
lance le jeu est laisse le, et je sûr que ça va s'afficher...
snpier wolf Messages postés 216 Date d'inscription samedi 11 août 2007 Statut Membre Dernière intervention 30 mai 2011
18 août 2008 à 14:34
effectivement les images ne se charge pas.
snpier wolf Messages postés 216 Date d'inscription samedi 11 août 2007 Statut Membre Dernière intervention 30 mai 2011
18 août 2008 à 14:29
sa ne change pas, et j'ai remarquer que j'étais quand même dans la boucle on dirai qu'il ne charge pas les images je vais faire un ou deux teste et je te redis ça.
medACK Messages postés 30 Date d'inscription dimanche 20 juillet 2008 Statut Membre Dernière intervention 7 octobre 2009 1
18 août 2008 à 14:22
moi je sous XP, et quand je le lance ça s'ouvre et reste 3secondes en noire puis vient le jeu, il charge 6 images avant la boucle principale, ça doit être la cause.
le OS n'est pas le problème ça c'est sûr, essaye cela:

efface cette ligne :

screen = SDL_SetVideoMode( SCREEN_WIDTH, SCREEN_HEIGHT, SCREEN_BPP, SDL_HWSURFACE);

et met cella:

screen = SDL_SetVideoMode( SCREEN_WIDTH, SCREEN_HEIGHT, SCREEN_BPP, SDL_SWSURFACE);

tiens moi au courant ;).
snpier wolf Messages postés 216 Date d'inscription samedi 11 août 2007 Statut Membre Dernière intervention 30 mai 2011
18 août 2008 à 14:06
non j'ai bien toute les dll je suis aussi sous dev-cpp il n'y a pas d'erreur de compilation ni d'avertissement la fenêtre reste toute noir et prend 50% de pross,
je suis sous vista es que ça peut faire un truc je ne sais pas.
medACK Messages postés 30 Date d'inscription dimanche 20 juillet 2008 Statut Membre Dernière intervention 7 octobre 2009 1
18 août 2008 à 13:28
"SNIPER" j'ai moi même télécharger le ZIP pour voir et ça marcher chez moi, tu as essayé de le compiler?, sinon contacte moi, mon e-mail est citer en haut, peut être que tu as besoin d'une "dll"!.
medACK Messages postés 30 Date d'inscription dimanche 20 juillet 2008 Statut Membre Dernière intervention 7 octobre 2009 1
18 août 2008 à 13:24
Merci "ZENOBIUSZ".
zenobiusz Messages postés 6 Date d'inscription dimanche 27 mai 2007 Statut Membre Dernière intervention 22 septembre 2008
18 août 2008 à 11:43
Good job ;) 10/10
snpier wolf Messages postés 216 Date d'inscription samedi 11 août 2007 Statut Membre Dernière intervention 30 mai 2011
18 août 2008 à 03:50
Salut,
ton programme ne fonctionne pas chez moi.
la fenêtre reste noir.
medACK Messages postés 30 Date d'inscription dimanche 20 juillet 2008 Statut Membre Dernière intervention 7 octobre 2009 1
12 août 2008 à 16:06
UNIONX j'aime pas lésser des questions sans réponses, donc voilà une solution complete à ton probleme:

//si tout se passe bien on aura 0
int chargement()
{
//tu met ici le nbr de choses que tu veux charger
int NBR = .... ;
//on déclare un compteur
int i = 0;
//on declare une variable pour le calcul du taux
int x = 0;
//charger la 1ere image
premiere = load_image( "1ere.png" );
//on test si le chargement s'est bien éffectuer
if ( premier!=NULL )
x = (i / NBR)*100; //ici tu ora "0 %"
//sinon on renvoi 1 est on sort
else
return 1;
//charger la 2eme image
deuxieme = load_image( "2eme.png" );
if ( deuxieme!=NULL )
x = (i++ / NBR)*100; //ici tu ora exemple "10%"
else
return 1;
.....
//et tu répete cette drniere ligne
.....
//si tout c'est bien se passé on renvois 0
return 0;
}

Quand tu test tes surfaces et tu les trouveras differentes de NULL
ça voudra dire que le chargement c'est effectuer;
voilà voisin et merci pour l'encouragement.
unionx Messages postés 190 Date d'inscription dimanche 17 avril 2005 Statut Membre Dernière intervention 18 mars 2009
12 août 2008 à 15:49
merci, j'ai dejà fais presque la meme chose mais j'avais eu un probleme !!!

le chargement va ce passé meme si les surfaces n'est pas charger au mémoire.

bon zappe ce que je dis, car sa fait 2ans que je n'est pas touché la Lib SDL, je veux juste avoir une idée a ce que j'avais pas réalisé avant, mais bon merci et bonne continuation.
medACK Messages postés 30 Date d'inscription dimanche 20 juillet 2008 Statut Membre Dernière intervention 7 octobre 2009 1
11 août 2008 à 20:46
Ecoute si ça t'intéresse vraiment, tu peux maitre ceci dans ta fonction par exemple :

void chargement()
{
//tu met ici le nbr de choses que tu veux charger
int NBR = .... ;
//on déclare un compteur
int i = 0;
//on declare une variable pour le calcul du taux
int x = 0;
//charger la 1ere image
premiere = load_image( "1ere.png" );
x = (i / NBR)*100; //ici tu ora "0 %"
//charger la 2eme image
deuxieme = load_image( "2eme.png" );
x = (i++ / NBR)*100; //ici tu ora exemple "10%"
.....
//et tu répete cette drniere ligne
.....

}

n'hésite pas si ça te convient pas.
unionx Messages postés 190 Date d'inscription dimanche 17 avril 2005 Statut Membre Dernière intervention 18 mars 2009
11 août 2008 à 20:06
hmm essaye de charger 12 bitmaps a la fois et une chanson mp3 et tu vas voir qu'il a un délai important , ce délai change du pc a l'autre ( ca dépendant de la ram ).

baaah je pense a tout le monde ;-)
pour avoir un bon projet !!! il faut surement pense au configuration minimum de la ram.

bonne continuation.
medACK Messages postés 30 Date d'inscription dimanche 20 juillet 2008 Statut Membre Dernière intervention 7 octobre 2009 1
11 août 2008 à 11:53
salut UNIONX,
d'abord merci pour le commentaire, et en se qui concerne ta question, j'ai jamais pensé à faire se que tu demande, car le chargement des surfaces est rapide et se fait avant le début de la boucle du jeu, donc c'est pas important de savoir le temps du chargement, et en plus si tu veut plus de rapidité il te faux agrandir la RAM,j'éspere t'avoir répondu, sinon n'hésite pas à demander
unionx Messages postés 190 Date d'inscription dimanche 17 avril 2005 Statut Membre Dernière intervention 18 mars 2009
11 août 2008 à 03:53
trop facile a faire ces trucs en SDL, mais dis moi tu sais comment faire pour créer une barre de progresse( une barre de chargement des surfaces )?

j'aimerai connaitre si il a une fonction qui mesure le chargement de la surface dans la RAM.
Rejoignez-nous