Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.08.13;
Скачать: CL | DM;

Вниз

OpenGL и много объектов   Найти похожие ветки 

 
Chuvak ©   (2005-11-26 00:23) [0]

Допустим я хочу нарисовать 100*100 кубиков...Делаю это в цикле, вызывая процедуру рисования DrawCube(x, y)...
Естественно при таком цикле производительность ужасно низкая...Есть ли ещё какие-то способы отрисовки большого кол-ва объектов?


 
XProger ©   (2005-11-26 00:39) [1]

1 кубик - 12 полигонов
100*100 кубиков - 120 000 полигонов

Берём эти кубики и пихаем в VBO!

P.S.
Неясно что с текстурами, цветом, светом и т.п. вещами...


 
Chuvak ©   (2005-11-26 01:07) [2]

XProger ©   (26.11.05 0:39) [1]
VBO

хм...что такое VBO?
Ведь как-то обрабатывают все объекты на карте...в некоторых играх их кол-во очень велико...Неужели всё в цикле тупым перебором?


 
Da Stranger ©   (2005-11-26 02:56) [3]

Вся фишка как раз в том, чтобы не рисовать такое огромное число объектов, а заменять их на 1 спрайт, например; или уменьшать качество объекта при удалении от него, или вообще убирать, когда камера повёрнута в другую сторону.
В современных стратегиях на один юнит приходится 150-500 полигонов когда далеко и 300- 500 когда близко. А 120 000 полигонов будет тормозить у всех!


 
XProger ©   (2005-11-26 05:15) [4]

Da Stranger, я рисую 1 млн. полигонов в кадре и ничё, свои 25 фпс получаю :)
Chuvak, тупой перебор включает в себя Frustum Culling, QuadTree (или OctTree), Face Culling? Если нет, то реализуй. Информацию по VBO и алгоритмах найдёшь в яндексе (привыкнуть пора).



Страницы: 1 вся ветка

Текущий архив: 2006.08.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.1 c
2-1153655595
susergey
2006-07-23 15:53
2006.08.13
Запуск с параметрами


2-1153752574
VitV
2006-07-24 18:49
2006.08.13
Delphi+Interbase - организация таблиц


15-1152793731
Yeg
2006-07-13 16:28
2006.08.13
Siemens AT Commands


3-1149559566
Muzzy
2006-06-06 06:06
2006.08.13
Что писать в свойстве Filter компонента IBTable ?


6-1139988013
maep
2006-02-15 10:20
2006.08.13
SOAP, вызов метода веб сервиса