HLFX.Ru Forum
Показать все 6 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Технические вопросы (https://hlfx.ru/forum/forumdisplay.php?forumid=20)
-- отображение энтитей в q2 (https://hlfx.ru/forum/showthread.php?threadid=5407)


Отправлено Дикс 22-11-2019 в 15:33:

отображение энтитей в q2

Поставил на карту 900 жилетов: https://i.imgur.com/kDwlS8T.png

При запуске q2 (движок Yamagi), первые пару рядов ссыпались вниз, большинство просто не отрисовывается (но физически есть, их можно поднять): https://i.imgur.com/CzrDoSZ.png

Причем этот рисунок из трёх столбцов одинаковый при каждой загрузке карты. Первые 2 ряда ссыпаются друг на друга у меня на глазах, остальные остаются висеть.

Хочу найти ответы на следующие вопросы:

- почему даже модифиц движок не отрисовывает бОльшую часть энтить? Можно ли это как-то решить без модификации движка?
- почему одни жилеты висят в воздухе, а другие падают?

Это все не из праздности, а потому что я уперся в реальную проблему при построении большой карты - новые энтити на ней попросту невидимые. Они появляются лишь если я удалю что-то из размещенного ранее.

Понятно, что надо разбивать на маленькие карты, но хочется углубить понимание этого ограничения.

__________________
igroprom.d3.ru


Отправлено Дядя Миша 22-11-2019 в 15:52:

Цитата:
Дикс писал:
почему даже модифиц движок не отрисовывает бОльшую часть энтить?

там PVS-лист циркуляр-буффер на 64 одновременно видимых объекта. И апдейт-бэкап на 16. Итого в сумме 1024 энтити в визбл листе, но тут уж как повизёт. Обычно меньше. А то что он не отрисовывает, ну так абсолютно все, т.н. "модификации" затрагивают только рендерер - тени там добавить или бамп. В сетевой код никто не лезет, никто в нем не соображает.
До смешного доходит, у ОверДоза сетевой код это копипаста с ку2.

А в оригинале ку2 очень детские лимиты, они даже меньше чем в халфе, я постоянно в это упирался, то msg overflow, то вот это. И во всех старых движках припасено вот таких вот проблем, которые никто решать не собирается.

Цитата:
Дикс писал:
почему одни жилеты висят в воздухе, а другие падают?

DropToFloor так устроен, может пропускать энтити. Он же писался для мировой геометрии, а не DropToAnotherItem. И даже не для DropCowToRiver.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Дикс 22-11-2019 в 17:31:

Во, спасибо.

Как я и думал, виноват "qvis3 -fast" - с ним все энтити на карте видимые одновременно.
Без -fast компилилось часов 8, но зато на карте всё находится где надо, ][вала Алла][у!

Цитата:
Итого в сумме 1024 энтити в визбл листе

У меня их 218 (судя по кол-ву classname в .map-файле)

Откуда цифра 1024? Почему не 80 (64+16)? Это как раз все объясняет.
На карте с жилетами одновременно видно 60 штук (но может как раз 64 или 80, они там один-в-одном лежат)

Цитата:
так абсолютно все, т.н. "модификации" затрагивают только рендерер - тени там добавить или бамп

Вот кокрастоке не все. За что я люблю Ямаги - он ничего своего вообще не добавляет, только исправляет ошибки оригинального движка (over 1500).
Ну, ещё заменили OpenGL 1.4 -> 3.2, добавили widescreen, заменили звуковую систему и переписали систему сейвов.

__________________
igroprom.d3.ru


Отправлено Дядя Миша 23-11-2019 в 07:58:

В ку2 виз конечно самый неспешный, но зачем он нужен на карте-коробке?

Добавлено 23-11-2019 в 10:58:

Сомнительно что они там исправили. Первой же фичей идёт переписанный рендерер. А сейв-рестор в ку2 имеет милую особенность отвергать родные сейвы, если пересобрать бинарники, что твой сталкер. Вот это они и исправляли. Навряд ли там сделано что-то еще.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Дядя Миша 23-11-2019 в 13:50:

Поглядел я сорцы этого Ямаги. Нихрена они там не сделали. Ну рендер переписали да, почти все форки именно этим и заняты. А лимиты никто не трогал, сеть никто не трогал и всё остальное тоже из оригинала.
Да и модерновый рендерер, ну что с него толку, если обновляемые лайтстили по прежнему подгружаются 10 раз в секунду через glTexImage.
То есть на интерполяцию лайтстилей там забили, ума расположить эти стили на одной странице атласа тоже нехватило. Ну вот и смысл говорить про модерн-рендерер, если его возможностями не воспользовались?

Ну вот что это за порнография опять

C++ Source Code:
1
uniform sampler2D lightmap0;
2
uniform sampler2D lightmap1;
3
uniform sampler2D lightmap2;
4
uniform sampler2D lightmap3;

Ниочём.

Добавлено 23-11-2019 в 16:50:

Исправленный сейв-рестор, к слову реализован максимально похабным образом, он базируется на каких-то древних идеях, как это говно по быстрому исправить, т.е. предполагается, что никаких новых энтить и функций в игру добавлено больше не будет. А так - те же самые километровые таблички, в которых чёрт ногу сломит. Ну для автора форка нормально, а то выкатил свежий апдейт и опять все сейвы поломались. Это конечно трагедия

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Дикс 23-11-2019 в 14:30:

Цитата:
Дядя Миша писал:
В ку2 виз конечно самый неспешный, но зачем он нужен на карте-коробке?


Ну, моя коробка уже едва помещается на координатную сетку Джека.
Буду разделять ее на несколько карт, выйдет полноценный юнит.

__________________
igroprom.d3.ru


Временная зона GMT. Текущее время 21:07.
Показать все 6 сообщений этой темы на одной странице

На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024