Я пытаюсь использовать функцию gluProject
, чтобы получить координаты точки в 2d окне после «рендеринга».Проблема в том, что я получаю странные результаты.Например: у меня есть точка с х = 16,5.Когда я использую gluProject
, я получаю x = -6200.0.
Если я понимаю gluProject
ОК, я должен получить положение пикселя этой точки на моем экране после «рендеринга» - я прав?Как я могу преобразовать этот странный результат в пиксельные координаты на экране?
Спасибо за любую помощь!
Код, который я использую (от "sum1stolemyname"):
GLdouble modelview[16], projection[16]
GLint viewport[4];
glGetDoublev(GL_MODELVIEW_MATRIX, *modelView);
glGetDoublev(GL_PROJECTION_MATRIX, *projection);
glGetIntegerv(GL_VIEWPORT, *viewport);
double tx, ty, tz;
for(i = 0; i < VertexCount; i++)
{
gluProject(vertices[i].x, vertices[i].y, vertices[i].z,
modelview, projection, viewport,
&tx, &ty, &tz)
}