Масштаб в OpenGL
1) есть обычное окно в котором с помощью OpenGL рисуется некая кривая (типа графика), ну и соответственно по разному масштабируется. Масштаб может меняться в пределах от 0.9 до 10000.0 по каждой оси. Так вот при установке значений масштаба близких к верхнему пределу наблюдается одна "непонятность": если кривая попадает в отображаемую область то все нармально, а если не попадает - начинаются тормоза, причем чем ближе значение масштаба к 10000, тем сильнее тормоз. Че это он?
2) И вообще при размере окна 400х300 загрузка проца составляет 3-5%, а уже при размере 600х400 пикселов - 100%. Странно, код-то одинаковый... и так резко меняется загрузка процессора при небольшом изменении размеров окна?! Никаких супер-мега-пупер вычислений я не выполняю. В чем может быть проблема???
У меня P4-1800, Riva TNT2 M64 bios 2.05.13, драйвера от nVidia v.5.3.0.3, Win2k
Заранее благодарен!
Цитата:
Originally posted by kelz
2) И вообще при размере окна 400х300 загрузка проца составляет 3-5%, а уже при размере 600х400 пикселов - 100%. Странно, код-то одинаковый... и так резко меняется загрузка процессора при небольшом изменении размеров окна?! Никаких супер-мега-пупер вычислений я не выполняю. В чем может быть проблема???
2) И вообще при размере окна 400х300 загрузка проца составляет 3-5%, а уже при размере 600х400 пикселов - 100%. Странно, код-то одинаковый... и так резко меняется загрузка процессора при небольшом изменении размеров окна?! Никаких супер-мега-пупер вычислений я не выполняю. В чем может быть проблема???
Проверь наличие вызова glViewport в функции обработки сообщения о изменении размера окна. Вполне возможно, что OpenGL рисует в фоновый буфер 400x300, а при смене буферов она масштабирует фоновый буфер до 600x400, отсюда и загрузка. Внимательно посмотри на размеры пикселов в окне 600x400. Если они больше чем в окне 400x300, то масштабирование осуществляется.
Нет, проблема не в этом, я проверил, все нормально. Кстати, хоть загрузка и 100 процентов, но тормозов никаких не наблюдается, винда и приложения работают как ни в чем не бывало. Может это особенность какая, или библиотека подглючивает. Коснусь первого моего вопроса: там тормоз идет в модуле nvoglnt.dll (версия 6.14.10.5303), может и здесь он виноват?