SnOOpss
Messages postés571Date d'inscriptionsamedi 3 avril 2004StatutMembreDernière intervention 5 décembre 2013
-
25 mai 2006 à 16:37
ericTTT
Messages postés1Date d'inscriptionjeudi 28 février 2008StatutMembreDernière intervention28 février 2008
-
28 févr. 2008 à 19:22
Bonjour je suis en train de programmer un jeu en directDrawn en mode fenetré qui se joue a la souris et j'ai eu quelques problemes. En fait a cause du mode fenetré je garde la souris presente sous XP.
1 essai: Souris gerée avec DirectInput en mode absolu, compliqué et les
coordonnées obtenue n'on rien a voir avec les pixels a l'ecran.
2 eme essai : Souris gérée avec les api Windows GetCursorPos(),
enfantin mais les coordonnées obtenue n'ont toujours rien a voir avec
les pixels de l'ecran (ce n'est pas un simple decalage constant).
J'ai essayé de faire une fenetre aux meme dimension que l'ecran DD mais ca n'arrange pas grand chose.
Je sait pas trop quoi mettre par comme code pour expliquer.
//-- Create the back buffer
ddsd.dwFlags = DDSD_WIDTH | DDSD_HEIGHT | DDSD_CAPS;
// Make our off-screen surface 320x240
ddsd.dwWidth = 320;
ddsd.dwHeight = 240;
// Create an offscreen surface
ddsd.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN;
hr = g_pDD->CreateSurface(&ddsd, &g_pDDSBack, NULL);
Mais c'est plus qu'un simple decalage, aux coordonnées (0,0) c'est bon
pas de problemes mais plus on s'eloigne, plus c'est décalé.
Sinon un autre truc bizarre, j'ai desactivé la fonction pour effacer
l'ecran et je m'apercoit que a chaque fois que je relance mon
application elle me ressort la derniere image faite. La commande
release ne fait que liberer la memoire mais c'est marrant qu'au
lancement suivant tout se remette comme avant non ??
ericTTT
Messages postés1Date d'inscriptionjeudi 28 février 2008StatutMembreDernière intervention28 février 2008 28 févr. 2008 à 19:22
Allo,
Quelqu'un peut m'envoyer un exemple de code ou je peut DETECTER un
clic (ou un double-clic) de souris avec Visual C++ 6.0 ?
Merci de votre aide
Eric