Что такое эксперимент Либета: в большинстве экспериментов у человека время принятия решения типа 0.1 сек, но EEG датчик на башке показывает, что сигнал появляется ДО того, как человек сам поймет, что он собирается сделать
( Read more... )
>>Лагокомпенсатор должен рендерить оба варианта. То есть начинать виньетировать экран в стиле "мы дохнем" не тогда, когда "ой всё" - а тогда, когда пересекаются конусы неопределенности тушки игрока и очереди пуль другого игрока.
Что ты подразумеваешь под термином "конус неопределенности"?
Если я правильно понял, пробежавшись по очень резкой диагонали - то ты имеешь в виду что надо расчитывать не пересечение игрока и пули в отдельных позициях, в текущий момент времени, а производить расчет пересечений отрезка луча пули и фигуры игрока состоящей из фигуры в начальной позиции, конечной позиции, и интерполированного промежутка между ними. Ну да - так в хороших играх, насколько я знаю и делают: я сверял свою задумку перед реализацией, и оказалось что примерно так в контр-страйке было сделано.
В CS совсем не так. В Q3 гораздо точнее рассчитывается.
Как побочный эффект, в Q3 можно убить друг друга из рейлганов, а в CS в случаях, когда "кто кого убил раньше - непонятно" всегда срабатывает tiebreaker, лотерея по сути. Это крайне уныло.
Я не смотрел в коды CS или Q3: мне времени своего жалко. Я чисто прочел абзац описания от Вальве, что-бы в общих чертах убедится что я смотрю в правильную сторону, учитывая что я не игродел.
В Q3 вроде как нет никакой особо хитрости - оно предельно понятно и честно работает. В частности поэтому я считаю что вариант организации сети в Q3 - единственный приемлимый вариант чтобы FPS мог на роль киберспортивной претендовать. Все эти современные контерстрайки на джойстиках - это лулз же, в том числе и из-за черезмерно хитрых лаг-компенсаторов.
> В Q3 вроде как нет никакой особо хитрости - оно предельно понятно и честно работает.
Бггггг. Лучший лагкомпенсатор - незаметный лагкомпенсатор. Он там *сложный*. И да, там в сорцах вполне документированно написано, что "до 50 мс это работает отлично, выше - гавно". Это главное.
А, и там все оружия задизайнены с учетом конкретного лагкомпенсатора. Кроме, разве что, молнии. На ней бывает заметно.
Ну т.е. люди четко очертили себе скоуп и его решили.
То что там думали над этим всем, в т.ч. и в дизайне пушек - это да. И то что там всё сделано очень мудро, в том числе что сознательно решали узкую, но решаемую задачу - это тоже верно.
Насчет сложного - это я может чего не знаю, но вроде там всё просто. Мир показывается с задержкой в cl_timeNudge + 50, положения игроков интерполируются по снепшотам с сервера. Если нет по чему интерполировать - врубается весьма тупая экстраполяция, которая скорее для галки - это не играбельный режим совсем.
Выстрелы там абсолютно честно считаются на сервере, без всяких "вася увидел что попал в диму, поэтому несмотря на то что дима от этого выстрела увернулся - мы ему засчитаем фраг по егойной экстраполяционной картине".
Если вертеть башкой и стрять рельсой - будет видно что след от рельсы рисуется только после того как факт выстрела пролетит через сервер. Шафт "гнется" по той же причине - направление получается с задержкой в пинг, но начало молнии рисуется всегда из "дула" пушки.
В смысле еще и предикшен того, где пуля может находится через некоторое время? А конус - за счет разброса выпущенных пуль? Ну разброс - это штука необходимая конечно, да только лучше ж для пули изначально, один раз, вектор вычислить в пределах конуса - а дальше отрезки расчитывать. Точнее, и ресурсов меньше жрется на вычисления. А вот предикшен - это уже дело вкуса и используемого алгоритма.
> В смысле еще и предикшен того, где пуля может находится через некоторое время? Да
> конус - за счет разброса выпущенных пуль? Нет. Это совсем не про разброс.
У Хокинга этот конус называется "горизонт событий", что технически более верно, но все остальные называют его конусом неопределенности.
> Точнее, и ресурсов меньше жрется на вычисления Ресурсов-то меньше. Только результаты не то что "неточные", а *неверные* :)
> А вот предикшен - это уже дело вкуса и используемого алгоритма. Верно, дело вкуса. Обычно игроки не любят предикшен а-ля CS при пинге более 25-30 мс, т.к. успевают заметить, насколько сильно различаются картинки у них на экране :)
Что ты подразумеваешь под термином "конус неопределенности"?
Reply
Reply
Reply
Как побочный эффект, в Q3 можно убить друг друга из рейлганов, а в CS в случаях, когда "кто кого убил раньше - непонятно" всегда срабатывает tiebreaker, лотерея по сути. Это крайне уныло.
Reply
Reply
Reply
Reply
Бггггг. Лучший лагкомпенсатор - незаметный лагкомпенсатор. Он там *сложный*.
И да, там в сорцах вполне документированно написано, что "до 50 мс это работает отлично, выше - гавно". Это главное.
А, и там все оружия задизайнены с учетом конкретного лагкомпенсатора. Кроме, разве что, молнии. На ней бывает заметно.
Ну т.е. люди четко очертили себе скоуп и его решили.
Reply
Насчет сложного - это я может чего не знаю, но вроде там всё просто. Мир показывается с задержкой в cl_timeNudge + 50, положения игроков интерполируются по снепшотам с сервера. Если нет по чему интерполировать - врубается весьма тупая экстраполяция, которая скорее для галки - это не играбельный режим совсем.
Выстрелы там абсолютно честно считаются на сервере, без всяких "вася увидел что попал в диму, поэтому несмотря на то что дима от этого выстрела увернулся - мы ему засчитаем фраг по егойной экстраполяционной картине".
Если вертеть башкой и стрять рельсой - будет видно что след от рельсы рисуется только после того как факт выстрела пролетит через сервер. Шафт "гнется" по той же причине - направление получается с задержкой в пинг, но начало молнии рисуется всегда из "дула" пушки.
Reply
Лол. Кому оно надо кроме кучки киберспортсменов? Никому :))
Reply
Reply
Reply
Да
> конус - за счет разброса выпущенных пуль?
Нет. Это совсем не про разброс.
У Хокинга этот конус называется "горизонт событий", что технически более верно, но все остальные называют его конусом неопределенности.
> Точнее, и ресурсов меньше жрется на вычисления
Ресурсов-то меньше. Только результаты не то что "неточные", а *неверные* :)
> А вот предикшен - это уже дело вкуса и используемого алгоритма.
Верно, дело вкуса. Обычно игроки не любят предикшен а-ля CS при пинге более 25-30 мс, т.к. успевают заметить, насколько сильно различаются картинки у них на экране :)
Reply
Leave a comment