![]() |
Модераторы: Rickert, Alexeis, BorisVorontsov |
![]() ![]() ![]() |
|
sgi1981 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 284 Регистрация: 16.3.2006 Репутация: нет Всего: 10 |
Недавно купил новую видеокарту (NVIDIA GeForce 9600 GT). Рисует быстро.
Вот только функции OpenGL типа glIsEnabled, glGetIntegerv, glGetFloatv, в общем все те функции которые возвращают значения параметров режимов, выполняются удивительно долго, и при этом загружается центральный процессор. Ошибок OpenGL нет. И что главное, я использую эти функции для управления камерой (перемещение, поворот камеры), и когда я вожу мышь для того чтобы повернуть камеру, я вижу что камера даже не успевает за мышью. На всех предыдущих версиях карт и драйверов этого тормоза не было. Но теперь у меня стоит Windows 64-bit, ну и соответственно драйвер подходящий. Я даже пробовал ставить драйвер и тот что был на диске вместе с видеокартой, и тот что скачал из интернета, сейчас стоит драйвер скачанный из интернета, результат - те же тормоза при выполнении функций OpenGL возвращающих значения рабочих параметров настроек. -------------------- Тело в нашем пространстве - есть часть пространства, в которой пространство обладает дисторсией относительно внешнего пространства. |
|||
|
||||
sgi1981 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 284 Регистрация: 16.3.2006 Репутация: нет Всего: 10 |
Сейчас я вообще обнаружил нечто интересное. Оказывается, что функции типа glIsEnabled, glGetIntegerv, glGetFloatv, вообще не тормозят, а тормозят какие-то другие функции выполняющиеся после вызовов этих. Для того, чтобы в этом убедиться, я добавил цикл, в котором последовательно вызывалась функция glIsEnabled с разными параметрами. Причем этот цикл в первом эксперименте я встроил до вызова SwapBuffers, а во втором эксперименте - после него.
В 1 эксперименте. Если в результате выполнения всех итераций цикла функция glIsEnabled вызывалась не менее 150 раз, то тормоза исчезают вообще ! Причем и процессор не загружен также. Если же менее 150 раз, то и процессор загружен и тормоза. Во 2 эксперименте. Если в результате выполнения всех итераций цикла функция glIsEnabled вызывалась не менее 150 раз, то камера не тормозит, и процессор не загружен. Если же менее 150 раз, то камера не тормозит, но процессор загружен. Это сообщение отредактировал(а) sgi1981 - 12.12.2008, 13:57 -------------------- Тело в нашем пространстве - есть часть пространства, в которой пространство обладает дисторсией относительно внешнего пространства. |
|||
|
||||
![]() ![]() ![]() |
Вы можете найти полезным что... | |
|
|
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |