Форумы на Наша-Life
Home user CP  
Календарь событий Найти других пользователей Часто задаваемые Вопросы Поиск  
Автор
Тема
Создать Новую Тему    Ответить
sorter
(Senior Member)

Зарегистрирован: Oct 2007
Проживает: Russia/Moscow
Написал: 699 сообщений

Оценка: 23 Votes 23 чел.

Сообщение #716284
Цитата:
Оригинальное сообщение от Magnus Moty
Севрев знает что у игрока там не стена должна быть а враг. И по возможности засчитывает попадания, хотя на других клиентах это отображается как стрельба в стену с нанесением повреждений.





Это ты про какой фпс говоришь? если на сервере 150 фпс- он не сможет обрабатывать ситуацию более 150 раз в секунду...






Ты прав кстати. Количество исходящий пакетов зависит от клиентких кадров. так что, да имеет смысл иметь 100 фпс+ на 100 тиковом сервере.


ты не учитываешь, что интерполяция - дорисовка модели на стороне клиента!, на сервере идет только расчет по тикам, если твой комп тебе нарисует модельку интерполяционную в одном месте, ты в нее стреляешь, пакеты стрельбы идут на сервер (на сервер не идут пакеты попал/не попал, это забота сервера просчитать), но на сервере модель противника в др. месте и попадания нет.

Я уже писал про какой фпс я говорю, прочитай посты 2 страницы в теме. 150 фпс у клиента, на серваке фпс может держаться на 900 при игре 12 человек.

Имеет смысл иметь его большим везде (тебе же не будет комфортно играть на 33 или 66 тиковом серваке с соостветствующим фпс, на последнем еще ничего, но 30 фпс уже нет того комфорта), так как хоть пакеты и фпс взаимосвязаны, но фпс отрисует более точную картинку у тебя, он просчитает ту же интерполяцию более точно, за счет увеличения числа уравнений, значит выдаст наболее вероятное положение противника, и ты не будешь выбивать камни из стены.

Вообще спор уходит от темы. В итоге мы выяснили, что фпс и рейты игрока взаимосвязаны, что на самом деле можно внести такой пункт в программу, где пользователь будет указывать свой фпс. Конечно идеально бы было рассчитывать его от заполнености сервера, но это уже индивидуально для сервера, с его тикрейтом, шириной канала и т.п.
Old Post 30-04-2008 11:26
sorter отсутствует Посмотреть данные 'sorter' Отправить Приватное Сообщение для 'sorter' Найти другие сообщения 'sorter' Добавить sorter в Список Друзей
Править/Удалить Сообщение Ответить с Цитированием
Magnus Moty
(Senior Member)

Зарегистрирован: Feb 2006
Проживает: /
Написал: 2036 сообщений

Оценка: 58 Votes 58 чел.

Сообщение #716286
Цитата:
но на сервере модель противника в др. месте и попадания нет.



Нет. на сервере действтельно там пустое место, но он знает что на клиенте оно не такое и засчитывает попадания. http://www.cs-s.ru/index.php?id=225


Цитата:
что на самом деле можно внести такой пункт в программу, где пользователь будет указывать свой фпс.


бессполезно. Если он ниже ста то он будет менятся слишком значительно.
Old Post 30-04-2008 11:30
Magnus Moty отсутствует Посмотреть данные 'Magnus Moty' Отправить Приватное Сообщение для 'Magnus Moty' Найти другие сообщения 'Magnus Moty' Добавить Magnus Moty в Список Друзей
Править/Удалить Сообщение Ответить с Цитированием
sorter
(Senior Member)

Зарегистрирован: Oct 2007
Проживает: Russia/Moscow
Написал: 699 сообщений

Оценка: 23 Votes 23 чел.

Сообщение #716287
Цитата:
Оригинальное сообщение от Magnus Moty
Неа. Сервер учитывает в т.ч. уровень интерполяции на клиенте. И рассчитывает попадания так как они должны были выйти на клиенте

приведи док-во или факт, я читал (только не спрашивать где, я не собираюсь перерыть все подобные ресурсы в поисках), что интерполяция - это клиентская переменная, сервер знает, что она включена, но от кол-ва внесенных поправок точность просчетов не особо увеличивается. Эта переменная, можно сказать, для красоты, чтобы у тебя противники не бегали телепортами, интерполяция расчитает положение модели между двумя присланными тиками. Поскольку интерполяция нудный процесс, в связи с большим числом рассчетов, то отсылание на сервер всех интерполяционных тиков ВСЕХ! клиентов просто не разумно. Но если ты мне приведешь факты или строки кода, то я соглашусь в своей неправоте, пока мы оперируем только словами и теориями.
Old Post 30-04-2008 11:34
sorter отсутствует Посмотреть данные 'sorter' Отправить Приватное Сообщение для 'sorter' Найти другие сообщения 'sorter' Добавить sorter в Список Друзей
Править/Удалить Сообщение Ответить с Цитированием
Magnus Moty
(Senior Member)

Зарегистрирован: Feb 2006
Проживает: /
Написал: 2036 сообщений

Оценка: 58 Votes 58 чел.

Сообщение #716288
Цитата:
Оригинальное сообщение от sorter
[B]приведи док-во или факт,




А интерполяция это именно то что ты сказал, к лагокомпенсации она отношения почти не имеет.
О том что сервер знает о клиентсокой интерполяции это отсюда:
https://www.hl-inside.ru/articles/m...yer-networking/

Это-перевод официальной статьи валв,





Цитата:
Интерполяция вызывает непрерывную задержку отображения в 100 миллисекунд даже, если вы играете на невыделенном сервере (сервер и клиент расположены на одном и том же компьютере и сервер запущен прямо из игры). Так что если вы включите команду sv_showhitboxes, то хитбоксы игроков будут отрисовываться по времени сервера, то есть будут на 100 миллисекунд опережать модель игрока. Это однако не означает, что вам необходимо целиться впереди противника, так как лаго-компенсация на стороне сервер знает об интерполяции клиента и учитывает ее при подсчете попаданий.




Сервер должен знать об интерполяции клиента что-бы её использование не давало отрицательного эффекта.

помимо этого происходит коррекция попаданий от пинга. как в предидущей статье.
Old Post 30-04-2008 11:46
Magnus Moty отсутствует Посмотреть данные 'Magnus Moty' Отправить Приватное Сообщение для 'Magnus Moty' Найти другие сообщения 'Magnus Moty' Добавить Magnus Moty в Список Друзей
Править/Удалить Сообщение Ответить с Цитированием
sorter
(Senior Member)

Зарегистрирован: Oct 2007
Проживает: Russia/Moscow
Написал: 699 сообщений

Оценка: 23 Votes 23 чел.

Сообщение #716359
дело в том, что знать об интерполяции это одно, а использовать ее, так это другое. Клиент не отправляет сведений о попаданиях, просчитывать интерполяцию каждого клиента на сервере, думаю это просто приведет к лагам. Не знаю по какому принципу они вели интерполцию, но в любом случае, либо это сложные уравнения и их мало, либо простые, но многочисленные. По твоим словам получается, что клиент отправляет серверу свою интеполяционную картину, но это идет в разрез с заявлением валв, что все просчеты положения игроков, попаданий и др. важных сведений идут на сервере(иначе любой чит, может перехватить или напрямую отправлять нужные пакеты). Опять же в статье я не увидел, что серверу отправляется картинка, которую видит клиент, то есть серверу нужно просчитать интерполяцию для каждлого клиента. Просто описание это одно, но почему все кто знает про интерполяцию стремятся ее отключить, даже со всеми примерами валв, что код просчитает попадание с учетом пинга, интерполяции, потерь пакетов, на самом деле на сервере лишь знают, что интеполяция вкл., пинг такой то и т.п., но просчеты он ведет лишьна основе своих тиков и их истории, а не как не строит интерполяционную картину, да еще с учетом пинга каждого. Лагокампенсацию я привел только для того, чтобы показать, как сглаживаются углы в сетевых играх, где лучшее соединение и железо дают сильное преимущество.
Позвольте мне быть несовершенным...

Поправил sorter 30-04-2008 в 14:25

Old Post 30-04-2008 14:18
sorter отсутствует Посмотреть данные 'sorter' Отправить Приватное Сообщение для 'sorter' Найти другие сообщения 'sorter' Добавить sorter в Список Друзей
Править/Удалить Сообщение Ответить с Цитированием
Magnus Moty
(Senior Member)

Зарегистрирован: Feb 2006
Проживает: /
Написал: 2036 сообщений

Оценка: 58 Votes 58 чел.

Сообщение #716365
Цитата:
По твоим словам получается, что клиент отправляет серверу свою интеполяционную картину




Зачем отправлять интерполяционную картину? я такого не писал. Клиент просто передаёт значение интерполяции и сервер знает какое оно у клиента, просто подстраивая время...
Old Post 30-04-2008 14:45
Magnus Moty отсутствует Посмотреть данные 'Magnus Moty' Отправить Приватное Сообщение для 'Magnus Moty' Найти другие сообщения 'Magnus Moty' Добавить Magnus Moty в Список Друзей
Править/Удалить Сообщение Ответить с Цитированием
 
sorter
(Senior Member)

Зарегистрирован: Oct 2007
Проживает: Russia/Moscow
Написал: 699 сообщений

Оценка: 23 Votes 23 чел.

Сообщение #716383
Цитата:
Оригинальное сообщение от Magnus Moty
Зачем отправлять интерполяционную картину? я такого не писал. Клиент просто передаёт значение интерполяции и сервер знает какое оно у клиента, просто подстраивая время...

это и есть отправлять интерполяционную картину, значение интерполяции может меняться, вследствии хаотичности движения игрока, потери пакетов, это ведь не график прямой, где интерполяция везде по одну принципу просчитывается.
Old Post 30-04-2008 15:46
sorter отсутствует Посмотреть данные 'sorter' Отправить Приватное Сообщение для 'sorter' Найти другие сообщения 'sorter' Добавить sorter в Список Друзей
Править/Удалить Сообщение Ответить с Цитированием
Magnus Moty
(Senior Member)

Зарегистрирован: Feb 2006
Проживает: /
Написал: 2036 сообщений

Оценка: 58 Votes 58 чел.

Сообщение #716401
Цитата:
Оригинальное сообщение от sorter
это и есть отправлять интерполяционную картину, значение интерполяции может меняться, вследствии хаотичности движения игрока, потери пакетов, это ведь не график прямой, где интерполяция везде по одну принципу просчитывается.



Интерполяция просчитывается всегда с одним параметром interp ratio.
Old Post 30-04-2008 16:55
Magnus Moty отсутствует Посмотреть данные 'Magnus Moty' Отправить Приватное Сообщение для 'Magnus Moty' Найти другие сообщения 'Magnus Moty' Добавить Magnus Moty в Список Друзей
Править/Удалить Сообщение Ответить с Цитированием
Lord Sith
(Guest)
Пользователь не зарегестрирован в форуме
Сообщение #716668
Считаю, что значения результатов интерполяции на клиентской стороне сервер не использует для расчетов попал/не попал, потому что если у всех игроков значение интерполяции будет одинаковым - то смысла опрашивать всех игроков нет, а если картинка у всех будет разная, как сказал sorter, то как сервер решит какому клиенту отдать предпочтение?
Скорей всего интерполяция на клиенте служит исключительно для удобства восприятия картинки. На ряду с клиентской, интерполяция, по тем же формулам, происходит на сервере, но уже для расчетов попадания. Это происходит потому, что, как опять сказал sorter, клиенту нельзя доверять. Забирая эти значения у клиента, уж очень легко сделать чит.
К тому же представим, что на сервере с тиком 66 играет паренек с updaterate 10, утрируя. Это значит, у него все игроки будут передвигаться более грубо, чем на самом деле.
Я вот тут прикинул схемку. На неё отображены передвижения цели, справа её истинные движения (как то обрабатывает сервер), слева только 10 точек (т.е. только 10 пакетов, которые получил клиент). По этим 10 точкам можно построить линию передвижения, но без остальных 50-и, она не будет соответствовать оригиналу. И соотвественно все попытки попать в цель будут бесполезны.
Конечно в реале за секунду игрок не совершает столько движений, но так легче понять почему происходит стрельба в стену.
Если бы сервер для расчета попадания брал данные от клиента, то тем самым сводил на ноль все старания цели (т.е. игрока-цели) маневрировать. А как известно контра всегда отдает предпочтение игрокам с высоким показателем рейтов.
Old Post 01-05-2008 09:55 Править/Удалить Сообщение Ответить с Цитированием
Magnus Moty
(Senior Member)

Зарегистрирован: Feb 2006
Проживает: /
Написал: 2036 сообщений

Оценка: 58 Votes 58 чел.

Сообщение #717351
Цитата:
Оригинальное сообщение от Lord Sith
[B]Считаю, что значения результатов интерполяции на клиентской стороне сервер не использует для расчетов попал/не попал, потому что если у всех игроков значение интерполяции будет одинаковым - то смысла опрашивать всех игроков нет, а если картинка у всех будет разная, как сказал sorter, то как сервер решит какому клиенту отдать предпочтение?



Не может не учитывать после того видео с cl_showhitboxes
Old Post 03-05-2008 15:38
Magnus Moty отсутствует Посмотреть данные 'Magnus Moty' Отправить Приватное Сообщение для 'Magnus Moty' Найти другие сообщения 'Magnus Moty' Добавить Magnus Moty в Список Друзей
Править/Удалить Сообщение Ответить с Цитированием
Lord Sith
(Guest)
Пользователь не зарегестрирован в форуме
Сообщение #717583
Цитата:
Оригинальное сообщение от Magnus Moty
Не может не учитывать после того видео с cl_showhitboxes

Я что то пропустил... Какого видео с cl_showhitboxes?
Old Post 04-05-2008 08:58 Править/Удалить Сообщение Ответить с Цитированием
sorter
(Senior Member)

Зарегистрирован: Oct 2007
Проживает: Russia/Moscow
Написал: 699 сообщений

Оценка: 23 Votes 23 чел.

Сообщение #717764
скорее не видео, а статья с картинками. Просто статье той уже больше 1,5 лет точно, движок конечно не кардинально изменился, но точности в рассчетах данных переменных в него внесли. Насчет интерполяции, лично мне она только визуальный эффект прибавляла. На новом движке, в частности на ТФ2, я в консоли не нашел cl_interpolate, поэтому либо она вшита в движок с вкл. сосотоянием, либо ее полностью выбросили за ненадобностью. Вообще, тема интерполяции косвенно относится к рейтам, и может воздействовать только через фпс, поэтому глупо тратить время на споры о ней и лучше глубже разобраться в настройках сети и рейтах.
Позвольте мне быть несовершенным...
Old Post 04-05-2008 15:39
sorter отсутствует Посмотреть данные 'sorter' Отправить Приватное Сообщение для 'sorter' Найти другие сообщения 'sorter' Добавить sorter в Список Друзей
Править/Удалить Сообщение Ответить с Цитированием
Magnus Moty
(Senior Member)

Зарегистрирован: Feb 2006
Проживает: /
Написал: 2036 сообщений

Оценка: 58 Votes 58 чел.

Сообщение #719054
Old Post 07-05-2008 21:23
Magnus Moty отсутствует Посмотреть данные 'Magnus Moty' Отправить Приватное Сообщение для 'Magnus Moty' Найти другие сообщения 'Magnus Moty' Добавить Magnus Moty в Список Друзей
Править/Удалить Сообщение Ответить с Цитированием
Все время в GMT . Сейчас 13:24.
Создать Новую Тему    Ответить

Быстрый ответ
Ваше Имя:
Хотите Зарегистрироваться?
Ваш Пароль:
Забыли свой Пароль?
Вы можете оставлять свои комментарии анонимно, просто введя свои имя и оставив пустым поле пароля.
Ваш ответ:

[проверить размер]
[транслит в win] | [?]
[русская клавиатура]

Дополнительно: Подтверждение по E-Mail


Быстрый переход:
 
Оцените эту Тему:
 

Правила форума:
Создание Тем не разрешено
Создание Сообщений разрешено
Создавать Вложения не разрешено
Редактирование Сообщений не разрешено
Коды HTML запрещены
Коды форума разрешены
Смайлики разрешены
Коды [IMG] запрещены