Sidebar

Скрытие энтитей на расстоянии

KorteZZ

Возрождение...
18.10.2009
892
33
  • Золотая медаль 113
Ну, если это небольшие модели, которые не дают теней, то ничего страшного. А таким критическим энтитям можно не ставить такую настройку
 

Next Day

New member
23.12.2019
26
10
3
Можно задать расстояние исчезновения энтити
;)
 

Aynekko

Маппер
Команда форума
Супер Модератор
07.06.2010
3 629
28
  • Золотая медаль RC
  • Бронзовая медаль 216
Если есть динамическое освещение с тенями, то при таком подходе будут пропадать тени от объектов, когда игрок от них отворачивается.
В ксашмоде их нет, кроме фонарика... Ну и еще можно настроить дистанцию - то есть энтитя не просто должна быть сзади, а еще и на удалении сколько-то юнитов. На картах с огромным открытым пространством, думаю, сыграет роль - там почти все энтити в PVS попадают.
 
  • Like
Reactions: Next Day

ncuxonaT

Well-known member
05.05.2013
1 196
46
48
Я не очень знаком с принципами клиент-серверной архитектуры ксаша/хл, но объясните, зачем вообще передавать каждый раз инфу о статичных объектах с сервера на клиент?
 

Aynekko

Маппер
Команда форума
Супер Модератор
07.06.2010
3 629
28
  • Золотая медаль RC
  • Бронзовая медаль 216
Я не очень знаком с принципами клиент-серверной архитектуры ксаша/хл, но объясните, зачем вообще передавать каждый раз инфу о статичных объектах с сервера на клиент?
А я вот тоже не особо понимаю. Лучше расскажу, как я это обнаружил.
Если особо не читал здесь тутор, то вот принцип работы вкратце - на определенном (заданном в энтити) расстоянии ренедермод модели меняется на текстурный и начинает отниматься renderamt. Через 255 юнитов проп исчезнет. Это я делаю все на клиенте. В хл2 абсолютно точно такая же система, к слову.
Потом уже не помню как, но я обнаружил, что в AddToFullPack сервер отправляет всю информацию энтитей, которые в одном PVS с игроком. Я логично рассудил, что стоит сделать проверку и здесь, только на дистанцию "длина + 255" - если на клиенте энтитя полностью исчезла, то и сервер ее больше не будет посылать. И к моему удивлению, фпс прилично так вырос. И это в сингле!
То есть, несмотря на то, что на клиенте рендер энтити не рисует вообще, инфа от них сильно тормозит движок. И вот почему - не ясно. Теперь, проделав тоже самое с энтитями, которые сзади игрока, прирост еще больше стал. Визуально различий я не нашел, пока что. Нужно перепройти мод и проверить, не сломалось ли чего. Но блин, в некоторых локациях с кучей моделей фпс вырастает почти в 2 раза.
 
Команда форума
VIP
28.03.2010
15 337
261
83
Кубань
  • Золотая медаль 215
  • Серебряная медаль 214
  • Золотая медаль 221
  • Cat
Невидимые энтити шлются на клиент, просто потому что у них может быть коллизия, что необходимо для предиктинга, ну и не только. То есть несолидные статичные энтити с renderamt == 0 действительно можно не слать на клиент. Хотя, может кастомная трасса несолидных объектов перестать работать. Иногда эта штука нужна.
 

Aynekko

Маппер
Команда форума
Супер Модератор
07.06.2010
3 629
28
  • Золотая медаль RC
  • Бронзовая медаль 216
Вот как, ну понятно, все там неспроста делалось. Может в мультиплеере действительно что-то сломается, в теории. В сингле маловероятно. Если мы хотим что-то скрыть, то вряд ли мы собираемся с этим взаимодействовать.
 

Aynekko

Маппер
Команда форума
Супер Модератор
07.06.2010
3 629
28
  • Золотая медаль RC
  • Бронзовая медаль 216
Отредактировал тутор, теперь манипуляции с движком не требуются. Так что можно и в голдсурс прикрутить. Но есть проблема, что будет использоваться iuser4. Его больше нигде нельзя будет использовать, т.к. по нему будет считаться дистанция.
 

Донат - Хостинг

Итого
200.00 $
Цель
600.00 $

Доноры Красавчики

Пользователи онлайн

Нет пользователей онлайн.