I have windows.h included. But i still have problems.
Hers some code for the glutPassiveFunc call back function
Code:
void mouse(int iX, int iY)
{
if(iX<(SCREEN_WIDTH/2))
iX=-((SCREEN_WIDTH/2)-iX);
else
iX=(iX-(SCREEN_WIDTH/2)); // used to convert from top left origin to middle
cCamera.MouseAngleX=180.0*iX/SCREEN_WIDTH;
MouseMoveView();
glutPostRedisplay();
}
and the camera function
Code:
void MouseMoveView(void)
{
float fMouseX=cCamera.MouseAngleX, fAngleY=0.0f;
int iMidPointX=SCREEN_WIDTH/2, iMidPointY=SCREEN_HEIGHT/2;
if(fMouseX==iMidPointX)
return;
// GetCursorPos(&MousePos); //get current position. not currently needed as cCamera.MouseAngleX gets it
SetCursorPos(iMidPointX, iMidPointY);
cCamera.MouseAngleX=iMidPointX; // Set the mouse to the middle
if(fMouseX>cCamera.MouseAngleX) // Get the direction from the mouse
fAngleY=-(fMouseX-iMidPointX)/1000;
if(fMouseX<=cCamera.MouseAngleX)
fAngleY=(fMouseX-iMidPointX)/1000;
//printf("\n%.2f %.2f", fAngleY, fMouseX);
RotateView(&cCamera.vView, fAngleY, 0, 1, 0);
}