![]() |
Модераторы: Rickert |
![]() ![]() ![]() |
|
inkognitum |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 125 Регистрация: 11.8.2006 Где: г. Набережные Чел ны Репутация: нет Всего: 1 |
Добрый день.
Вот столкнулся с такой проблемой. Рисую множество геометрических фигур с помощью OpenGL. Сама считалка геометрических фигур выполняется достаточно быстро. Раньше все рисовал с помощью GDI+, сейчас переписал все на OpenGL, результат понравился все рисуется быстро, но на некоторых тачках у которых встроеная видяха все рисуется медленней чем на GDI+, и опять же на некоторых тоже со встроенными видяхами все нормально.. в чем может быть проблема?! Все проверяемые компы были довольно современны скажем так офисного класса.. и опять же другие программы аналогичные и даже мощнее на тех же компах где моя программа тормозила летали без тормозов. в чем может быть проблема? может существуют какие ускорители рисования?! Заранее спасибо. P.S. Пишу на C#, использую для работы OpenGL интегрированную с помощью вот этой статьи: http://www.rsdn.ru/article/files/dotnet/openglbase.xml Это сообщение отредактировал(а) inkognitum - 23.8.2008, 18:27 --------------------
"Убить всех людей!" (с) Bender |
|||
|
||||
Rickert |
|
|||
![]() Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 6 Всего: 52 |
inkognitum
0) Когда вы работаете с C# на максимальную производительность и отдачу от железа можете забыть. 1) Есть тонны методов отбрасывать обработку тех фигру, которые не видны. bsp-tree, octree, порталы, frustum culling. 2) Всё зависит от того как вы рисуете объекты. Используете ли список, пользуетесь ли индексами. 3) Вы говорите о том, что сама считалка фигур работает быстро: во-первых всё в мире относительно и что значит ваше быстро? Во-вторых: а зачем при каждом отображении их просчитывать? Я так понял что вы их постоянно расчитываете, раз говорите о скорости их просчёта? Надо сначала просчитать, записать, и выводить потом уже. Если конечно не нужно постоянно менять параметры их геометрических просчётов. -------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
Rpahut |
|
|||
![]() 0xdeadbeef ![]() Профиль Группа: Участник Сообщений: 243 Регистрация: 9.4.2006 Репутация: 5 Всего: 7 |
Скорее всего где-то в коде ошибка. У мну такое было когда я неправильных размеров текстуру запихивал - не знаю как другие видеокарты, моя в таком случае рисует, но оч-чень медленно, вроде на программную эмуляцию слетает.
--------------------
C/C++ GameDevRSS Раздела программирования игрOpenGL - уроки от NeHeКак продать идею? |
|||
|
||||
Rickert |
|
|||
![]() Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 6 Всего: 52 |
Rpahut, текстура должна быть квадратной и размер кратен 2
-------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
Rpahut |
|
|||
![]() 0xdeadbeef ![]() Профиль Группа: Участник Сообщений: 243 Регистрация: 9.4.2006 Репутация: 5 Всего: 7 |
Rickert
![]() Но политика OGL - терпеть ошибки и по возможности продолжать работу. Хотя бы и с черепашьей скоростью. --------------------
C/C++ GameDevRSS Раздела программирования игрOpenGL - уроки от NeHeКак продать идею? |
|||
|
||||
Rickert |
|
|||
![]() Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 6 Всего: 52 |
Rpahut, если ты будешь использовать mipmapping - то OpenGL сгенерирует текстуры всё равно квадратными, но естественно деформированными. Если не будет использован mimapping - то, насколько мне помнится, OGL просто не загрузит текстуру. Но это не точно, я не проверял.
-------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
$tatic |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 651 Регистрация: 28.1.2005 Репутация: 7 Всего: 22 |
Насколько я понял из разговора с автором топика, то видеокарта Интел.
|
|||
|
||||
Rpahut |
|
|||
![]() 0xdeadbeef ![]() Профиль Группа: Участник Сообщений: 243 Регистрация: 9.4.2006 Репутация: 5 Всего: 7 |
Кстате, inkognitum, есть новости?
Rickert, я вобще для примера про текстуры сказал, но [offtop]огл должен возвращать ошибку, если текстура неправильных размеров, все остальное зависит от реализации.[/offtop] Если ошибку проглядеть, она на разных машинах может по разному проявляться. И это касается уже не только текстур. --------------------
C/C++ GameDevRSS Раздела программирования игрOpenGL - уроки от NeHeКак продать идею? |
|||
|
||||
inkognitum |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 125 Регистрация: 11.8.2006 Где: г. Набережные Чел ны Репутация: нет Всего: 1 |
Извиняюсь за простой.
На самом деле все оказалось гораздо проще. Я перевел все на библиотеку Tao и все стало работать на удивление быстро. Даже на слабых тачках. На счет того что надо все прерисовывать. Просто у меня десятки тысяч объектов, и каждый раз их надо просчитывать, просчитывать в зависимости от зума камеры от положения камеры и т.д. все это может менятся за доли секунды и перезаписывать это все смысла нет. я просто просчитываю где камера, какой зум и какая область попадает в область видимости, потом обризаю все ненужно и вывожу. Ну вопрос можно считать решенным, спасибо всем кто помогал. переход на библиотеку Tao помогла. --------------------
"Убить всех людей!" (с) Bender |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Программирование игр, графики и искуственного интеллекта" | |
|
НА ЗЛОБУ ДНЯ: Дорогие посетители, прошу обратить внимание что новые темы касающиеся новых вопросов создаются кнопкой "Новая тема" а не "Ответить"! Любые оффтопиковые вопросы, заданные в текущих тематических темах будут удалены а их авторы, при рецедиве, забанены.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rickert. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Программирование игр, графики и искусственного интеллекта | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |