在C&GLUT中获取用户鼠标单击的位置

我想将用户的鼠标点击位置存储在两个变量上

float x,y;

我正在使用openGL和c

我已经使用过剩的鼠标功能了

但是当我尝试打印x和y时,它给出了x = 134 y = 150的值

而我的屏幕ortho介于0和1之间

我想得到确切的要点,在那里画一点

最佳答案 你需要注册一个鼠标回调函数它有以下签名:

void glutMouseFunc(void (*func)(int button, int state,
                                int x, int y));

有一个教程涵盖了一些基础知识here

编辑:如果您希望将位置标准化(0.0 – 1.0)除以宽度和高度:

float x1 = x /(float) width;
float y1 = y /(float) height;
点赞