Probleme resolution SDL c++
ayor
-
ayor -
ayor -
Bonjour,
J'ai un soucis au niveau de la resolution de mon ecran en utilisant la SDL,mon problème est le suivant,je definis la taille de ma fenetre avec
ecran = SDL_SetVideoMode(800,640,32, SDL_HWSURFACE);
jusque la tout va bien
Mais au moment ou ensuite je veux Placer une image sur cet écran les coordonnées ne semble pas respectées.
SDL_Rect Pslayer;
Pslayer.x = 400;
Pslayer.y = 450;
img = SDL_LoadBMP("persodroite.bmp");
SDL_BlitSurface(img,NULL,ecran,&Pslayer);
SDL_Flip(ecran);
Si je definit y a 450 mon image sera tout en bas de mon cadre,qui logiquement devrait faire 640px(dans le cas ou je mais plus mon image disparait peu a peu...).Je precise que je n'est pas saisie les declarations des pointeurs etc pour ne pas surcharcher d'infos inutiles ce post.Tout fonctionne,le seul problème est cette divergence.
Merci d'avance
J'ai un soucis au niveau de la resolution de mon ecran en utilisant la SDL,mon problème est le suivant,je definis la taille de ma fenetre avec
ecran = SDL_SetVideoMode(800,640,32, SDL_HWSURFACE);
jusque la tout va bien
Mais au moment ou ensuite je veux Placer une image sur cet écran les coordonnées ne semble pas respectées.
SDL_Rect Pslayer;
Pslayer.x = 400;
Pslayer.y = 450;
img = SDL_LoadBMP("persodroite.bmp");
SDL_BlitSurface(img,NULL,ecran,&Pslayer);
SDL_Flip(ecran);
Si je definit y a 450 mon image sera tout en bas de mon cadre,qui logiquement devrait faire 640px(dans le cas ou je mais plus mon image disparait peu a peu...).Je precise que je n'est pas saisie les declarations des pointeurs etc pour ne pas surcharcher d'infos inutiles ce post.Tout fonctionne,le seul problème est cette divergence.
Merci d'avance
A voir également:
- Probleme resolution SDL c++
- Réduire résolution image - Guide
- Erreur temporaire de résolution de « deb.debian.org » ✓ - Forum Debian
- Resolution changer pc - Télécharger - Divers Utilitaires
- Résolution native ✓ - Forum Ecran
- Cette resolution n'est pas prise en charge par cette tv modifiez la ✓ - Forum Format et connectique vidéo
2 réponses
Salut.
regarde la doc de SDL_SetVideoMode
Il me semble que c'est un mode plain écran. En général un affichage ne fonctionne qu'en certain modes, par exemple, 640*480, tous les couples ne sont pas possible (il y a toujours sur les OS une liste des modes supporté). Et 800*640 ne me semble pas standard, en général c'est 800*600.
Donc, si la fonction se comporte comme je le pense, elle utilise le mode video le plus proche, mais semble conservé la valeur que tu lui donnes. D'où une différence de 40 pixels entre ce que tu penses et l'affichage.
Enfin, ce n'est qu'une théorie, test 800*600.
regarde la doc de SDL_SetVideoMode
Il me semble que c'est un mode plain écran. En général un affichage ne fonctionne qu'en certain modes, par exemple, 640*480, tous les couples ne sont pas possible (il y a toujours sur les OS une liste des modes supporté). Et 800*640 ne me semble pas standard, en général c'est 800*600.
Donc, si la fonction se comporte comme je le pense, elle utilise le mode video le plus proche, mais semble conservé la valeur que tu lui donnes. D'où une différence de 40 pixels entre ce que tu penses et l'affichage.
Enfin, ce n'est qu'une théorie, test 800*600.
MErci de ta reponse,
Mais je ne pense pas que se soit le fait que certains couple ne sont pas valides,pour en avoir le coeur net j'en est testé plusieurs(800*600 ...),le résultat est le même.
Quand je définis ma fenêtre pour y=600 si je met mon image au coordonnées y=600 elle est beaucoup trop basse.
Merci si quelqu'un a des suggestions...
Mais je ne pense pas que se soit le fait que certains couple ne sont pas valides,pour en avoir le coeur net j'en est testé plusieurs(800*600 ...),le résultat est le même.
Quand je définis ma fenêtre pour y=600 si je met mon image au coordonnées y=600 elle est beaucoup trop basse.
Merci si quelqu'un a des suggestions...