Войти
ПрограммированиеФорумГрафика

попадание точки внутрь трёхмерного симплекса (6 стр)

Страницы: 1 2 3 4 5 6 7 Следующая »
#75
15:33, 21 ноя. 2012

DOOM's texture mappers aren't described there. Many still believe that DOOM is a raycaster. It is not.


#76
15:44, 21 ноя. 2012

Dag
Стены рисуются рэйкастингом, промежутки заполняются визплейнами
Что за понт писать на инглише, если вы знаете русский?

#77
15:49, 21 ноя. 2012

No raycasting (that was Wolfenstein 3-D). DOOM has a column wall filler & a horizontal spans visplane filler. It exploits constant z.
Catacombs 3-D didn't use raycasting either: line rasterization. Nor did the build engine raycast. Even Ken's Labyrinth wasn't quite a raycaster.

#78
15:56, 21 ноя. 2012

Dag
Сначала рэйкастом вдоль BSP для каждой колонки находит видимые стены и тут же рисует методом горизонта. Потом для промежутков какой-то магией строятся visplanes и заполняются горизонтальными отрезками

#79
16:00, 21 ноя. 2012

This is a widely held prejudice. DOOM is a (wall & visplane) rasterizer.
How raycasting would take place anyway? To intersect arbritrary lines/segments is too costly. Wolfenstein's walls are grid-like for this reason.

#80
16:01, 21 ноя. 2012

Dag
http://www.gamedev.ru/code/forum/?id=169174&page=5#m63
Если без рэйкаста, то рисовать придется ВЕСЬ уровень
> To intersect arbritrary lines/segments is too costly
Ничего не дорого, проход вдоль BSP, пересекать далеко не со всеми сегментами
А если без рэйкаста, как вы определите что какой-то сегмент вообще не виден? Все  будете прогонять через линии горизонта?

#81
16:09, 21 ноя. 2012

I assure you, there's no raycasting. There was not even a BSP in the early DOOM: it was added afterwards, because of a certain very slow scene.

#82
16:12, 21 ноя. 2012

Dag
Я затрудняюсь найти вам нужную статью, я это читал 10 лет назад
Я думаю, что без рэйкаста и без BSP (и сортировки), да на 386 компютере вы бы смотрели меееедленое слайд-шоу

#83
16:14, 21 ноя. 2012

Here: http://www.gamers.org/dEngine/doom/papers/textps.ps.gz
One of the most interesting 3-D engines is the one driving Chasm: The Rift.

#84
16:16, 21 ноя. 2012

I played DOOM on a 386SX: rather slow. A DX would have been of little use (fixed-points, no FPU needed).

#85
16:36, 21 ноя. 2012

Dag
> There was not even a BSP in the early DOOM: it was added afterwards
В версии 1.2 и видимость (P_CheckSight) проверялась через blockmap, но обнаружился глюк и вместо того чтобы тупо исправить его, Кармак полностью переписал алгоритм на BSP, который заметно медленнее.

В несовместимых (по демкам) портах, например в ZDoom, вернули старый быстрый алгоритм.

Вот тут смешная статистика по этому поводу на тяжелом, специфическом уровне:
http://www.doomworld.com/vb/source-ports/56441-sunder-wad-map11-fps/

Суть в том, что монстров на уровне очень много, но с точка старта их НЕ ВИДНО, следовательно каждый тик каждый монстр вызывают P_CheckSight, чтобы узнать видит/слышит он тебя или нет и из-за тормознотого нового алгоритма fps очень низкий. Смешно еще то, что после выстрела монстры оживают, P_CheckSight перестает вызываться, монстр тупо идет на сближение и fps увеличивается в разы.

#86
16:51, 21 ноя. 2012

Aslan
Я не особо разбираюсь в деталях. Просто скопипастил старый P_CheckSight с исходников heretic, так как он основан на doom 1.2. Мне это было нужно для совместимости с демками в режиме эмуляции 1.2. При желании можешь сравнить P_CheckSight_12 и P_CheckSight тут

#87
17:13, 21 ноя. 2012

entryway
> В версии 1.2 и видимость (P_CheckSight) проверялась через blockmap

А там в чём суть? Порталы-секторы? 1-мерный z-buffer?

entryway
> но обнаружился глюк

Какой?

#88
17:23, 21 ноя. 2012

TarasB
> > но обнаружился глюк
> Какой?
Иногда алгоритм не выполнял своей основной функции (LineOfSight/Visibility checks). Чинилось причем оно вроде как элементарно, парой строчек, но Кармак не ищет легких путей. Написал алгоритм — работает иногда с ошибками. Не беда, написал полностью новый! По ссылке которую я привел, мне даже выложили исправленную версию старого алгоритма. Другое дело, что я её не могу использовать из-за совместимости.

#89
17:38, 21 ноя. 2012

> А там в чём суть? Порталы-секторы? 1-мерный z-buffer?
Sorted sector list...
http://www.youtube.com/watch?v=-2Pf9J9y2bc#t=6m
entryway
Respect for your working on old-style rendering: this is the future.

Страницы: 1 2 3 4 5 6 7 Следующая »
ПрограммированиеФорумГрафика

Тема в архиве.