Есть ли у gluLookAt () ограничение на наименьший размер аргумента?

У меня есть программа OpenGL, которая работает, когда я вызываю это:

gluLookAt(0.1,0.1,0.1, 0,0,0, 0,0.1,0);

… но не когда я называю это:

gluLookAt(0.01,0.01,0.01, 0,0,0, 0,0.01,0);

(В последнем случае появляется пустой экран.)

Есть ли у gluLookAt минимальный / максимальный размер аргумента с плавающей запятой?

Рисование делается около начала координат, в радиусе ~ 10-6.

1

Решение

Проверьте ваше значение минимального расстояния прорисовки gluPerspective:

gluPerspective(45.0, (double)window.GetWidth() / (double)window.GetHeight(), 0.1d, 2000.0d);

Это не будет работать, потому что все перед 0.1.

0

Другие решения

gluLookAt должно хорошо работать с вашими аргументами. Однако вы меняете положение камеры (как говорит @sftrabbit). Ваша новая позиция может быть слишком близко к объекту, чтобы увидеть его.

Вы должны проверить, каково расстояние около плоскости в вашей матрице перспективы (возможно, ваш gluPerspective() вызов?).

0

По вопросам рекламы [email protected]