使って描いたたくさんの点からなるシーンがあります
glBegin(GL_POINTS);
glVertex3f(x[i],y[i],z[i]); // the points are displayed properly ..
glEnd();
私がやりたいことは、マウスを使用してシーン上のポイントの 1 つをクリックし、その 3 次元座標を取得できるようにすることです。
私は使用する他のスレッドを見てきました:
glReadPixels((GLdouble)mouse_x,
(GLdouble) (rect.Height()-mouse_y-1),1, 1,GL_DEPTH_COMPONENT, GL_FLOAT, &Z);
z の値を使用します
gluUnProject(mouse_x, mouse_y, 0, modelview, projection, viewport, out posX, out posY, out posZ);
しかし、私は常にz=0
出力として取得します.これは、これらがポリゴンではなくポイントであるためですか?zの座標を取得する方法はありますか?