传给glutMouseFunc()的(x,y)是左上至右下的坐标:x表示离屏幕左边缘的像素数,y表示离屏幕上边缘的像素数,如图:
而glReadPixels()采用的坐标系统则与此不同,它是从左下到右上的。也就是说,x表示离屏幕左边缘的像素数,y表示离屏幕下边缘的像素数,如图:
所以,如果想把glutMouseFunc()取得的坐标传给glReadPixels(),就需要做一个变换:
y=Height-y-1
渺渺苍天,星光烁烁,美丽家园球外乡
传给glutMouseFunc()的(x,y)是左上至右下的坐标:x表示离屏幕左边缘的像素数,y表示离屏幕上边缘的像素数,如图:
而glReadPixels()采用的坐标系统则与此不同,它是从左下到右上的。也就是说,x表示离屏幕左边缘的像素数,y表示离屏幕下边缘的像素数,如图:
所以,如果想把glutMouseFunc()取得的坐标传给glReadPixels(),就需要做一个变换:
y=Height-y-1