Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > Ускорение и оптимизация графики OpenGL


Автор: Wolf 3.7.2006, 15:06
Постепенно создавая серьёзные проекты работающие с графикой DirectX или OpenGL часто многие сталкиваются с проблемой оптимизации. В области графики мне кажется нет предела по теме оптимизации.

Я предлагаю обсуждать свои идеи, свои решения конкретных задач, либо предлагать оптимальные пути по скоростным характеристикам, делиться знаниями. Я же по ходу дела, буду тоже искать различные решения и постить их... Почему именно OpenGL, наверно потому, что по сравнению с DirectX многие вопросы приходится решать вручную.

С чего вобще начинать оптимизацию?
Как НЕ надо писать программы на основе OpenGL?
Основные моменты снижающие производительность.

Может есть ссылки на какую нибуть литературу, вему рады! 

Автор: Wolf 5.7.2006, 21:24
Вот я нашёл несколько статеек:

http://namehome.km.ru/sections.php?op=viewarticle&artid=13
http://nvworld.ru/docs/intellisample.html

по существу мало чего, тем не менее...  

Автор: Arks 13.7.2006, 16:12
Оптимизация приложений OpenGL с помощью Display Lists, Vertex Buffer Object и Шейдеров:
http://www.ati.com/developer/gdc/PerformanceTuning.pdf

Весит 150 Кб. 

Автор: cipher 3.11.2006, 17:30
http://games.cnews.ru/articles/2/381_1.html - весьма занятная штука. Кроме того советую глянуть первую статью этого цикла, масса идей. Мне только компилятор дайте, я их реализую

Автор: Rickert 4.11.2006, 08:18
Для разгона: начиная работу с OGL, забудте о glBegin() и glEnd, а также о списках отображения. Это самые медленные способы. Всё должно выводиться через DrawArray функции.
Обрабатывать графически надо лишь только то, что видим, а то, что не попадает в кадр - не надо обрабатывать ГРАФИЧЕСКИ, при этом не забывайте обрабатывать аналитически.

Автор: Arks 16.11.2006, 10:03
Интересная и информативная статья на gamedev.ru: http://www.gamedev.ru/articles/?id=20124

Автор: Arks 12.12.2006, 16:54
Ещё информация на тему оптимизации для pre-Tnl и post-Tnl кэша видеокарт: http://www.gamedev.ru/community/gamedev_lecture/articles/?id=24

Автор: AssassinFX 9.1.2007, 01:39
Делаем так:Все GUI элементы что есть рисуем с помощью списков отображения,всё остально с помощью VBO(Vertex_Buffer_Object),если совсем хочем оптимизировать(для математики),используем асм вставки и SSE расширения(это для процов,непутать с видюхой smile )

Автор: Rickert 9.1.2007, 08:02
AssassinFX, врядли с помощью списков добьёшься амой большой скорости. Это вроде воторой по скорости, с конца вариант smile

Автор: AssassinFX 9.1.2007, 16:09
Rickert,А для GUI и ненадо большой скорости.VBo самый оптимальный вариант,но на сильно старых видюхах непопрёт тк как через разрешения (ARB_VERTEX_BUFFER_OBJECT).

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)