opengl i obracanie sceny myszką

0

mam taki mały programik i obracanie sceny napisałem sam(nie ufam funkcjom obcych ludzi) i mam trzy zmienne-statek[0].r_x,statek[0].r_y,statek[0].r_z. mam taki kodzik na ustawianie kursora myszy na środku okna

            if(active==1)
            {
                GetClientRect(hwnd,&windowsize);
                windowdistance.x=(windowsize.left+windowsize.right)/2;
                windowdistance.y=(windowsize.top+windowsize.bottom)/2;
                MapWindowPoints(hwnd,NULL,&windowdistance,1);

                gamemouse_x+=mouse_x-lmouse_x;
                gamemouse_y+=mouse_y-lmouse_y;
                if (gamemouse_x>90)
                {
                    gamemouse_x=90;
                }
                if (gamemouse_x<-90)
                {
                    gamemouse_x=-90;
                }
                statek[0].r_y=gamemouse_x;
                statek[0].r_x=gamemouse_y;
                SetCursorPos(windowdistance.x,windowdistance.y);
                ShowCursor(0);
            }
            else
            {
                ShowCursor(1);
            } 

oraz takie coś dopisałem w winproc by obliczać przesunięcie myszki

         case WM_MOUSEMOVE:
        {
            lmouse_x=mouse_x;
            lmouse_y=mouse_y;
            mouse_x=LOWORD( lParam );
            mouse_y=HIWORD( lParam );
        }

niestety, program oblicza przesunięcie, potem przesuwa i znowu oblicza przesunięcie... wychodzi na 0... próbowałem zrobić blokadę, która po przesunięciu kursora na środek okna blokowała obliczanie przesunięcia (stare dane zastępowała nowymi nie licząc różnicy)ale to nie działało... jak to zrobić?

0

o i muszę to mieć na jutro

0

Nikt nie zdąży odpowiedzieć?

0

http://msdn.microsoft.com/en-us/library/windows/desktop/ms648390%28v=vs.85%29.aspx, potem sprawdzasz przesunięcie, a na końcu ustawiasz myszkę na środek.

1 użytkowników online, w tym zalogowanych: 0, gości: 1