我正在尝试用鼠标旋转相机。移动它不是问题,但我需要把它放在一个地方。我已经尝试过glutWarpPointer()但它会严重减慢程序的速度。我正在尝试为某些东西编写引擎而不想使用和添加。
int diff = x - oldx;
oldx = x; rx += diff;
if (rx > 360)
rx = 0;
if (rx < 0)
rx = 360;
NSLog(@"%f",rx);
back = YES;
glutWarpPointer(0, 0);
glutPostRedisplay();
答案 0 :(得分:0)
glutWarpPointer
应该非常快;你在哪个地方打电话给你?
有时也可以强制调用glutPassiveMotionFunc
,所以要小心。
答案 1 :(得分:0)
它需要逐步退出GLUT,但您可以使用CGAssociateMouseAndMouseCursorPosition(false);
进行操作,以便鼠标移动不会移动光标(视觉光标和事件中报告的绝对位置等)。随后的鼠标事件具有不变的绝对位置,但包括适当的增量以提供移动。我不知道这些增量是否可以从GLUT访问。