HLFX.Ru Forum Страницы (2): [1] 2 »
Показать все 21 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Компьютерные игры (https://hlfx.ru/forum/forumdisplay.php?forumid=19)
-- Как стреляет шутер (https://hlfx.ru/forum/showthread.php?threadid=3163)


Отправлено qpAHToMAS 27-12-2011 в 03:55:

Thumbs up Как стреляет шутер

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

Link:
http://habrahabr.ru/blogs/gdev/135306/
Да, этот тот самый *your_mind* ресурс!


Отправлено Scrama 27-12-2011 в 04:33:

Статья очень интересная, хоть и перевод чуть ли не машинный. Жаль, что поверхностная - так-то очень интересны методы расчета коллизий на клиенте с последующей синхронизацией на сервере.
Рагдолл так вообще очевидно, что считать надо на клиенте. По-хорошему, алгоритм физики один - конечное положение тоже должно быть одинаково, но, судя по тому, что иногда положение тела может отличатся в серверной и клиентской модели, где-то есть зависимость от реального времени, а не от игровых "тиков"

__________________
"Злобным гениям не нужна харизма." © 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


Отправлено qpAHToMAS 27-12-2011 в 05:14:

В идеале наверное надо центр рэгдолла считать на сервере, а конечности и всю его остальную физику — на клиенте, получится что трупы лежат таки у каждого по-разному, но в одинаковых местах, можно без проблем за медика шокером ударять в грудь трупа для оживления товарища.
В любом случае это лучше, чем полная рассинхронизация в Source. Порой играешь в CS:S, тебя спрашивают: "Вау! Ты видел как его труп классно упал с крыши?", ты вздыхаешь, и вытягиваешь из себя что-то типа: "Да, видел, получилось круто" .

В CS играю с ex_interp 0, по другому просто невозможно. Больше всего бесит, когда ты стреляешь в игрока, пули "как бы попадают" в игрока, даже проигрывается соответствующий звук "попадания в плоть", но попадания нет, мало того, пули буд-то исчезают, потому что за целью нету никаких следов от попадания пули в карту (декалька, искры).
Еще бывает интересный эффект от гранаты, когда на клиенте видно, как какой-нибудь игрок попадает под ее радиус и проигрывается анимация урона (грудь назад, открывается рот), но ни одной единицы здоровья у этого игрока не отнимается .
Да что тут говорить, порой декалям от пуль верить нельзя, взять тот же фастзум у AWP, клевая кстати штука, и точка на мониторе вывозит.


Отправлено Scrama 27-12-2011 в 06:53:

qpAHToMAS, возможно, в сорсе привязка к реальному времени компа или к кадрам, а не к "тикам", которых в секунде фиксированное число. Вот и получается, что компы с разной производительностью считают физику по-разному, это как старый баг фпс-зависимой физики ку3. Если привязать физику к конкретным "тикам", то на клиентах будут в одинаковое время одинаковые формулы с одинаковыми параметрами, и результат будет одинаковый.

__________________
"Злобным гениям не нужна харизма." © 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


Отправлено Дядя Миша 27-12-2011 в 09:39:

Цитата:
Scrama писал:
Вот и получается, что компы с разной производительностью считают физику по-разному

нет. В сорсе рагдоллы чисто клиентские.
Ну что, написать вам статью про предиктинг? Чтоб не было фейспальмовых домыслов?

Добавлено 27-12-2011 в 13:39:

Цитата:
В основном из-за того, что эта игра одну вещь делает совсем не так, как все из того, во что я играл раньше — каждая выстрелившая тут пуля имеет ускорение и вполне подвержена воздействию гравитации

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

__________________
My Projects: download page

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

Цитата:

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


Отправлено XaeroX 27-12-2011 в 09:41:

А у меня рог нолл чисто серверный. Правда, так ни разу и не тестил его по сети

Добавлено 27-12-2011 в 16:41:

Цитата:
Дядя Миша писал:
Ну что, написать вам статью про предиктинг? Чтоб не было фейспальмовых домыслов?

А что фейспальмового сказал Скрама? Это действительно так. На мощном компе при высоком фпс физика в том же ку3 превращается в физику непоймичего, проверь сам. Оно и в дум3 так наверняка, и в волатиле - просто там 500 фпс получить проблематично)

__________________

xaerox on Vivino


Отправлено Дядя Миша 27-12-2011 в 10:07:

Цитата:
XaeroX писал:
Оно и в дум3 так наверняка, и в волатиле - просто там 500 фпс получить проблематично)

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

__________________
My Projects: download page

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

Цитата:

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


Отправлено thambs 27-12-2011 в 14:07:

>чем полная рассинхронизация в Source.

в l4d игрок с шотганом мог запросто ранить игрока, стоящего в метре за его спиной.

__________________
http://www.moddb.com/mods/monorail-quest


Отправлено Дядя Миша 27-12-2011 в 15:21:

Цитата:
thambs писал:
в l4d игрок с шотганом мог запросто ранить игрока, стоящего в метре за его спиной.

ну так в СА давно известен трюк с пушкой, положив которую набок можно было стрелять за угол. Время идет, вот и братья наши меньшие - американтсы освоили дробовик с радиусом поражения 360 градусов.
Скоро и нашу пушку заветную делать научатся.

__________________
My Projects: download page

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

Цитата:

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


Отправлено Government-Man 28-12-2011 в 19:49:

Цитата:
Дядя Миша писал:
Ну что, написать вам статью про предиктинг? Чтоб не было фейспальмовых домыслов?


Дык Yahn W. Bernier уже написал такую статью - на VDC лежыд.


Отправлено Дядя Миша 29-12-2011 в 06:59:

а Government-Man нам её переведет на русскиый езыг!
на наш великий-могучий-русский-езыг!

__________________
My Projects: download page

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

Цитата:

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


Отправлено qpAHToMAS 30-12-2011 в 08:55:

Цитата:
Дядя Миша писал:
Ну что, написать вам статью про предиктинг? Чтоб не было фейспальмовых домыслов?

Ачобынетта?

С Xash 3D я вообще ситуации не понимаю. Даже если играешь на выделенном сервере-localhost'е, то имеешь "покадровое" передвижение самого себя (от первого лица). Почему? Передвижение ведь идет на клиенте, а данные о игроке отсылаются серверу каждые N по cl_cmdrate.
В GoldSource хоть самый низкий cl_cmdrate поставь — ситуация передвижения на экране не изменится, а тут наоборот.


Отправлено VXP 30-12-2011 в 17:57:

Цитата:
Дядя Миша писал:
Ну что, написать вам статью про предиктинг?

Была бы неплохо, хочется ещё больше познать познать глубины движков от Valve.
PS: Или же в Gold Source и Source разный предиктинг?


Отправлено Government-Man 30-12-2011 в 18:09:

https://developer.valvesoftware.com...r_Networking:ru


Отправлено Дядя Миша 30-12-2011 в 18:14:

Цитата:
VXP писал:
PS: Или же в Gold Source и Source разный предиктинг?

Пока я не прикрутил предиктинг к ксашу, я воздержусь от ответа.

__________________
My Projects: download page

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

Цитата:

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


Временная зона GMT. Текущее время 07:55. Страницы (2): [1] 2 »
Показать все 21 сообщений этой темы на одной странице

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