Skip to main content
gamedev.net
🔒 Locked

camera rotation

Started by neonoblivion 0 replies 200+ views
Original Post
neonoblivion
neonoblivion
I''m trying to make my camera move based on my frame rate, but this current code I''m working on make it rotate at the right speed but my framerate droped by about 7 times .
  	
   ticks=(clock()-lasttime)/CLK_TCK;
   lasttime=(float)clock();
   	
	if (KEY_DOWN(VK_ESCAPE) || KEY_DOWN(VK_SPACE)){
		PostMessage(hwnd, WM_DESTROY,0,0);
		return(0);
	}
	if(KEY_DOWN(VK_UP)){
		if(rx<45)
		rx+=ticks*33;
	}

	if(KEY_DOWN(VK_DOWN)){
		if(rx>-20)
		rx-=ticks*33;
	}
	
	if(KEY_DOWN(VK_LEFT)){
		ry+=ticks*33;
	}

	if(KEY_DOWN(VK_RIGHT)){
		ry-=ticks*33;
	}
	
	
	glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
	glLoadIdentity();
	glTranslatef(0.0f,10.0f,0.0f);
	glRotatef(-190,1.0f,0.0f,0.0f);
	glRotatef(rx,1.0f,0.0f,0.0f);
	glRotatef(ry,0.0f,1.0f,0.0f);
  
links to tutorials would be cool. thanks, Klaus
weasalmongler
weasalmongler
That is the way you usually make framerate independant camera movement. I don''t see why your framerate should drop by 7 times by using it. Maybe you could optimise it by doing less float to int or int to float conversions. They can be a nasty bottleneck. Also I''d check your clock routine for speed, because I don''t think that that code should cause a framerate drop of that much. What is the framerate that you are getting anyway?

Also, this isn''t directly related to your question, but don''t you usually rotate and THEN translate, rather than translate and rotate? Thats the way my engine works.

- Weasalmongler

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.