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

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Xash3D (https://hlfx.ru/forum/forumdisplay.php?forumid=14)
-- getEntityIllum (https://hlfx.ru/forum/showthread.php?threadid=1340)


Отправлено Дядя Миша 09-06-2008 в 08:54:

getEntityIllum

Делаю функцию getEntityIllum для Xash и собственно столкнулся с дилеммой.
Функция берет уровень освещения для конкретной энтити (читай: точки её нахождения).
Свет у нас есть на клиенте-рендере, который грузит лайтмапы.
Способ первый - уровень освещения присутствует в структуре самой энтити, а клиент его регулярно обновляет. Однако этот способ перестает работать для dedicated серверов.
К тому же имеются известные трудности с созданием обратной
связи между клиентом и сервером.
Способ второй - грузим лайтмапы на серверную копию карты (таковая имеется для корректной работы физики)
и бегаем по ним при помощи RecursiveLightPoint
Из недостатков можно отметить увеличение времени загрузки
уровня и полный игнор динамического освещения.
Что лучше, на ваш взгляд?

__________________
My Projects: download page

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

Цитата:

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


Отправлено FiEctro 09-06-2008 в 09:13:

>> Из недостатков можно отметить увеличение времени загрузки

На сколько ?

Думаю все же второе будет лучше .

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Дядя Миша 09-06-2008 в 10:13:

В зависимости от размера карты 0.01 - 0.3 секунды.
Все это особо не критично, карта в любом случае подгружается вся целиком два раза (клиентская и серверная),
время уходит лишь на сортировку лумпов (если она конечно требуется).
Но смущает отсутствие учета динамического освещения.
Поясню почему - в хл getEntityIllum использовалось тараканами, для определения уровня освещенности.
Т.е. посветил на него фонариком - таракан и спрятался куда-нибудь, а поскольку фонарик это и есть динамический свет, нетрудно догадаться, что самый смысл функции теряется в таком случае.

__________________
My Projects: download page

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

Цитата:

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


Отправлено Scrama 09-06-2008 в 10:19:

Дядя Миша А если второй способ, а динамику по первому? Или скрестить нельзя?
Собственно, на дедикэйтед серверы пока что плевать.

__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran


Отправлено FiEctro 09-06-2008 в 11:03:

Scrama как же ? Ксаш помоему предназначен для мультиплеера ...

>> Но смущает отсутствие учета динамического освещения.

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

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено XaeroX 09-06-2008 в 11:12:

Цитата:
Дядя Миша писал:
Способ первый - уровень освещения присутствует в структуре самой энтити, а клиент его регулярно обновляет. Однако этот способ перестает работать для dedicated серверов.

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

__________________

xaerox on Vivino


Отправлено Дядя Миша 09-06-2008 в 16:10:

Scrama да можно и скрестить конечно.
Раздражает тупой копипаст прежде всего.

Цитата:
Хочешь в ксаше тараканов реализовать

в теории, хочется чтобы любую энтить из хл1 можно было бы перенести на QC.

__________________
My Projects: download page

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

Цитата:

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


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

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