Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Итоги быстрой прорисовки [D5, Win2k]


Yaro ©   (2002-04-11 21:23:00) 

Люди! Давайте подитожим.
Задача: Сделать софтварный 3D движок.
Проблема: Медленный вывод на экран из сформированного массива (Z-Buffer) в среде Windows.
Решение?...


Ketmar   (2002-04-18 02:18:00) [1]

2Yaro:
у меня когда-то проблемы решались так: portal engine, software rendering using s-buffer for static geometry, z-buffer rendering for dynamic geometry. ничего быстрее я не выдумал. с s-буферами я получил zero overdraw - куда уж шустрее-то :)
проще говоря:
рендерим уровень, используя s-buffer (об этом чудесно написал The Phantom, см. на flipcode и его движок Focus), параллельно заполняем z-buffer (понадобится для актеров), может быть bump-buffer.
рендерим актеров, используя уже нормальный z-buffering.
для уровня - zero overdraw, для актеров... ну, тут увы :(
теперь проблема решается проще: "эй, OpenGL, я тут тебе сцену приготовил", "шо?.. а, сцена! дык это мы щаз, это мы мигом!" :)

Satanas Nobiscum!
18/IV/XXXVII A.S.


Yaro   (2002-04-16 03:12:00) [2]

отсечение - можешь меня не учить, а вот прорисовка - это головная боль!


wicked   (2002-04-12 10:42:00) [3]

ну если еще и z-буффер, то решений нету... попустись... тебе уже насоветовали кучу способов прорисовки, всяких и разных, а тебе всё не то...
скачай исходники q2 с ихнего сайта - 1.4 Мб zip-файл и смотри себе... для удаления невидимых поверхностей там используются bsp-деревья и pvs (potentially visible set - потенциально-видимые наборы граней)... инфы на эту тему в интернете просто моря... для прорисовки на экран используется directx и всё прекрасно бегает... не на 1024x768, а на 640x480, но в общем то разница не особенно заметна, если рубиться по-чёрному... :)


Наверх

Титульная страница Поиск, карта сайта Написать письмо