Auteur Sujet: Intro 4K sous Windows Seven  (Lu 865 fois)

0 Membres et 2 Invités sur ce sujet

Hors ligne powergoo

    • Voir le profil
  • Rôle: code
  • Ville: Meaux
Re : Intro 4K sous Windows Seven
« Réponse #15 le: 28 Novembre 2011 à 00:26:02 »
en fait les bandes noires je l'ai ai plus depuis que j'ai changé le drivers, mais quand je clique avec le bouton de la souris une ou 2 fois elles reviennent et ça plante. message d'erreur et ecran blanc.

j'ai essayer aussi sur un pc Seven avec une vielle carte nvidia pareil !

ca pourrais venir de mon visual ?

Re : Intro 4K sous Windows Seven
« Réponse #16 le: 28 Novembre 2011 à 11:46:26 »
Salut Maracuja

effectivement ta solution fonctionne mais me pose 2 problèmes.

déjà dans une 4k c'est la norme de quitter avec échappement, la il faut faire un cltrl+f4 (je suis pas en mode fenêtré mais en plein écran donc je peut pas cliquer sur la croix.

et puis ça prend un tout petit peut plus d'octets déjà que j'en perdais  :-\ mais c'est certainement plus propre de faire le TranslateMessage(&msg); sauf que comme moi je voulais rien écouter ça me sert pas normalement (encre une fois je suis nul en system Windows j'ai surement tord)

ce que je comprend toujours pas c'est pourquoi vous n'avez pas les mêmes problèmes quand vous faite une intro 4k

je suis sous seven 64bits professionnel et en bi-écran ça peut jouer ?
je vais tester sur d'autres machines c'est trop zarb.


Salut,

J'ai compris finalement.
Sais-tu que TranslateMessage te permet de capturer les événements de type WM_KEYDOWN (au sein d'une fonction de "callback" type DLGPROC ou WNDPROC) et tu pourrais a ce moment la faire un PostQuitMessage(0); return TRUE; qui lui appellerai le message WM_QUIT. Autrement,
//en global
DWORD end = FALSE;

// ds une fonction qui va traiter la boucle de msg
MSG msg;
ZeroMemory(&msg,sizeof(MSG));

do
{
    // le 0x8000 permet de savoir si tu as eu un keydown ou keyup.
    // ici le end sera vrai si keydown d'echap.
    end = GetAsyncKeyState(VK_ESCAPE) & 0x8000;
    if ( PeekMessage(&msg, 0, 0, 0, PM_REMOVE) )
                DispatchMessage(&msg);
    Intro4k();
    SwapBuffers(hdc);

} while(!end)

Dis moi si cela fonctionne toujours. (Grosse curiosité)  8)

Hors ligne MsK`

    • Pouet.net
    • Voir le profil
  • Rôle: Code
  • Ville: Paris/RP
Re : Intro 4K sous Windows Seven
« Réponse #17 le: 28 Novembre 2011 à 13:04:53 »
static MSG msg;pour un ZeroMemory gratuit !

Hors ligne powergoo

    • Voir le profil
  • Rôle: code
  • Ville: Meaux
Re : Intro 4K sous Windows Seven
« Réponse #18 le: 28 Novembre 2011 à 13:16:26 »
maracuja : oui ça fonctionne aussi mais ça prend encore plus d'octets  :-\.

MsK : yep  :D

dailleurs autre question toute bête à t' on intérêt à mettre toutes nos variables en static dans une 4k même celles ou on as pas besoin quelles soit à 0 à l' init ?

Hors ligne nystep

    • Pouet.net
    • Voir le profil
    • lostgarden
  • Ancienneté: 1995
  • Rôle: code
  • Ville: Jyväskylä
Re : Intro 4K sous Windows Seven
« Réponse #19 le: 28 Novembre 2011 à 13:33:25 »
powergoo, mais tu as essayé la modification que j'ai indiquée ou pas? :)
à mon avis, c'est pas un problème de driver ou d'OS, mais un bug dans le framework.
sinon bin c'est pas grave. amusez vous bien, je vois que je suis inutile. :)
"L'être humain met 2 ans a apprendre le langage mais toute une vie pour apprendre à se taire."

Hors ligne powergoo

    • Voir le profil
  • Rôle: code
  • Ville: Meaux
Re : Intro 4K sous Windows Seven
« Réponse #20 le: 28 Novembre 2011 à 13:37:36 »
mais non tu est pas inutile , je t'ai répondu que ça faisait exactement la même chose.


Hors ligne MsK`

    • Pouet.net
    • Voir le profil
  • Rôle: Code
  • Ville: Paris/RP
Re : Intro 4K sous Windows Seven
« Réponse #21 le: 28 Novembre 2011 à 13:38:55 »
Tu devrais pas te préoccuper du nombre d'octets que prend ce truc, c'est peanuts à côté du reste de la démo. En plus, quand tout le reste de la démo sera la, ce code sera compressé totalement différemment. Fait quelque chose qui marche, ensuite réduit ce que t'as à 4K. L'inverse, c'est juste se prendre encore plus la tête :)

Re : Intro 4K sous Windows Seven
« Réponse #22 le: 28 Novembre 2011 à 13:43:32 »
static MSG msg;pour un ZeroMemory gratuit !
tout juste :)

Hors ligne nystep

    • Pouet.net
    • Voir le profil
    • lostgarden
  • Ancienneté: 1995
  • Rôle: code
  • Ville: Jyväskylä
Re : Intro 4K sous Windows Seven
« Réponse #23 le: 28 Novembre 2011 à 13:45:51 »
Le problème vient peut être de la boucle de message: l'intro ne vérifie pas les messages qui viennent en cas de click sur la fenêtre et l'OS en déduit que l'application ne répond pas. Il affiche donc un message d'erreur (que je connais bien aussi sous win7) en arrière plan et on se fait chier à trouver le bouton ok à l'aveuglette quand la fenêtre est en topmost. ( familier? ) :)

Dans ce cas, tu peux essayer la version de MsK` qui vérifie les messages avec une procédure de dialogue correcte. :)
"L'être humain met 2 ans a apprendre le langage mais toute une vie pour apprendre à se taire."

Re : Intro 4K sous Windows Seven
« Réponse #24 le: 28 Novembre 2011 à 14:03:08 »
maracuja : oui ça fonctionne aussi mais ça prend encore plus d'octets  :-\.

MsK : yep  :D

dailleurs autre question toute bête à t' on intérêt à mettre toutes nos variables en static dans une 4k même celles ou on as pas besoin quelles soit à 0 à l' init ?

Ah ok, je n'aurai pas cru car a vu de nez, j'aurai pensé qu'il aurait généré ca ou ds le genre (au pif):
.data?
end DD ?
.code
// blablabal les inits

_do:
   push VK_ESCAPE
   call GetAsyncKeyState
   and eax, 0x8000
   cmove dword ptr[end],eax
   xor ebx,ebx
   push PM_REMOVE
   push ebx
   push ebx
   push ebx
   push offset msg
   call PeekMessage
   jnz follow
   push offset msg
   call DispatchMessage
follow:
    Call Intro4k
    push hdc
    Call SwapBuffers
    test dword ptr[end], 1
    jne _do
« Modifié: 28 Novembre 2011 à 14:09:05 par maracuja »

Hors ligne LittleWhite

Re : Intro 4K sous Windows Seven
« Réponse #25 le: 28 Novembre 2011 à 20:47:36 »
Je voudrais juste dire que la réponse de nystep est totalement cohérente et même très probable. (Ok, je sers pas à grand chose).
MsK a aussi raison en disant de ne pas optimiser trop top (ça devrait vous rappeler quelque chose :whistle:) notamment si vous avez un compresseur qui passe derrière.

 

Dans la Réponse Rapide, vous pouvez utiliser du BBCode et des smileys comme sur un message normal, mais à partir d'une interface plus rapide d'accès.

Attention, il n'y a pas eu de réponse à ce sujet depuis au moins 30 jours.
À moins que vous ne soyez sûr de vouloir répondre, pensez éventuellement à créer un nouveau sujet.

Nom: E-mail:
Vérification:
Quel est la couleur du cheval rouge d'Henri IV ?: