что такое lerp в css

Что такое lerp в css

Небольшой ликбез

Настройки клиентской части по умолчанию: cl_updaterate 20; cl_interp_ratio 2; cl_interp 0.1.

Как это работает

По сути, значение lerp определяет пропорцию между пакетами, пришедшими от сервера, и пакетами, сгенерированными на клиенте. Чем меньше значение lerp, тем меньше пакетов будет «придумано» на клиентской стороне, тем точнее то, что вы видите, будет соответствовать тому, что происходит на сервере. Чем больше значение lerp, тем большую долю в вашей картинке будет играть интерполяция.

После теории перейдем к практике. С самого начала кажется, что в идеале lerp должен быть равен 0, ведь при таком значении lerp нет интерполяции и клиент видит то же, что видит сервер. Вы НЕ можете себе позволить lerp = 0 по двум причинам.

1) Ваш интернет канал оставляет желать лучшего.
Предположим, что вы счастливый обладатель модема или в вашем городе широкополосный интернет пока по карману только избранным, или ваш сосед по общежитию по вечерам заливает на торрент пачку свежих немецких фильмов. Это значит, что вы можете себе позволить исключительно скромные сетевые настройки. Скорее всего те, что стоят по умолчанию, а быть может ваши дела ещё хуже. При cl_updaterate 20, даже если все пакеты благополучно приходят от сервера к клиенту, вы видите 20 кадров в секунду (не имеет значения, какой у вас компьютер). Человеческий глаз воспринимает эту картинку как дёрганную. Если же, не дай бог, потери (choke) есть, то играть вы просто не сможете, так как будете видеть слайдшоу.

2) Настройки серверов не позволяют клиентской части выставлять необходимые значения некоторых переменных.
Главная проблема тут безусловно cl_interp_ratio, на данный момент ни один европейский серверный конфиг не позволяет играть с этой переменной равной нулю. Сейчас добавление sv_client_min_interp_ratio 0 (эта команда отвечает за минимальное значение cl_inerp_ratio, которое может иметь клиент находясь на этом сервере) в евроконфиге скорее всего вопрос времени, и я пологаю, ждать осталось не долго. Но факт остается фактом: значение этой серверной переменной по умолчанию равно 1, а это значит, что клиент не может сделать lerp меньше, чем 10 мс.

1) Напишите в консоли cl_updaterate и запомните значение этой переменной
2) Напишите в консоли cl_interp_ratio 1
3) Разделите 1 на значение cl_updaterate
4) Напишите в консоли cl_interp и присвойте ему то что получили в пункте 3

Например:
Я играю с cl_updaterate 66, это значит что в 3 пункте я получу 0.0152, следовательно мне нужно написать cl_interp 0.0152. Это даст мне lerp = 15. Что уже довольно неплохо. Так как интерполяция таких временных промежутков не слишком сильно добавляет неточности вашим действиям.
Если вы пишите значение cl_interp меньшее, чем cl_interp_ratio/cl_updaterate, то на net_graph lerp будет отображаться оранжевым цветом. Если же lerp окрашен в желтый, то значит значение lerp больше промежутка времени между отсылаемыми пакетами на этом сервере. В обоих случаях lerp (а значит cl_interp) нужно увеличивать пока тот не станет белым. Если вы будете пытаться играть с НЕ БЕЛЫМ lerp, то вы обрекаете часть своих выстрелов застревать в промежутке клиент-сервер.

Вывод

Добивайтесь минимального значения lerp, оставляя его белым на каждом сервере, на котором играете. Это позволит вам снизить к минимуму все проблемы, связанные с вашим соединением с интернетом.

Ещё совет

Чтобы не париться с математикой, можно забиндить клавиши так:

bind «INS» «lerpa+»
bind «DEL» «lerpa-«
bind «HOME» «lerpb+»
bind «END» «lerpb-«
bind «PGUP» «lerpc+»
bind «PGDN» «lerpc-«

Источник

Форум проекта sourceplay.ru

Часовой пояс: UTC+03:00

Начать новую тему Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней. Страница 1 из 1 [ 14 сообщений ]
Версия для печати Пред. тема | След. тема
Автор Сообщение
qwist
Не в сети
Младший сержант

Зарегистрирован: 06:33 Суббота, 24 Сентябрь 2011
Сообщения: 66
Steam_id: STEAM_0:0:66688666

(1) Стандартный net-config.
По умолчанию в tf2 стоят такие значения(вроде бы ибо наизусть не помню):

cl_updaterate 20
cl_cmdrate 33
cl_interp_ratio 1
cl_interp 0.1
rate 20000

Расскажу обо всём по-порядку. В данном конфиге на ВАШЕМ компьютере игровой мир обновляется со скоростью 20 кадров в секунду(cl_updaterate), другими словами вы скачиваете 20 пакетов в секунду.
То есть модельки игроков меняют место-положения 20 раз в секунду. Вы в этом мире обновляетесь 33 раза(cl_cmdrate), другими словами вы обновляетесь на сервере 33 раз в секунду.
Разберёмся с командой rate:
Объясню на примере.
Допустим rate равен 20000. Это означает, что в секунду с сервера скачивается 20000 байт информации. Ну грубо 20 кбайт.(Грубо потому что в килобайте 1024 байта=)).
Но если сервер обновляется всего лишь 20 раз в секунду, то мы должны видеть дёрганное изображение, ибо наш глаз воспринимает 24 кадра в секунду, а не 20. Но мы, как нистранно его видем плавным. Разберёмся, почему же))

(3) Лоссы и чоки
(loss & choke)

(4) Pro-config
Дефолтный конфиг очень даже хорош, но вот киберспортсмены ведь крутые, им надо всего да побольше.

cl_updaterate 66 // сервер посылает 66 пакетов в секунду
cl_cmdrate 66 // вы посылаете серверу 66 пакетов в секунду
cl_interp_ratio 1
rate 30000
cl_interp 0.0152

По сути очеь даже хороший конфиг, но вот от лоссов и чоков он не защищает, потому что лерпа минимальна, а не удвоена (1/66 = 0.152). Лерпа всегда оранжевая как раз поэтому(предупреждает о возможных лагах), а когда происходит потеря пакета, она жёлтая.
Ну вот, то что я могу посоветовать чтобы избавиться от лоссов и чоков.

cl_updaterate 66
cl_cmdrate 66
cl_interp_ratio 1
rate 30000
cl_interp 0.0304

Спасает от loss+choke = 10. Ну примерно по теории вероятности.

Мягко говоря немного по-сложнее. Теряются пакеты? Значит уменьшим их количество, на случай если это происходит из-за слабости сервера-машины; и уменьшим общий размер отправляемого и принимаемого уга на случай, если не хватает канала.

cl_updaterate 50 //минимальное значение по конфигу etf2l.cfg
cl_cmdrate 50 //так же
cl_interp_ratio 1
rate 26000
cl_interp 0.02 // 1/50=0.02

Спасает от loss+choke=15

(5) Гей-про конфиг (gay-pro)
Вам что-то не нравится в названии?

Вот как он выглядел раньше:

Но сейчас etf2l.cfg ограничивает ваше «лагание на сервере». Минимальный cmdrate = 50, минимальный rate = 20000. От таких рэйтов нет никакого смысла, поэтому оставляем плавность и стрельбу через стены.

cl_updaterate 66
cl_interp_ratio 1
cl_interp 0.1

Незабывайте говорить спасибо кому помогла эта информация=)

Не в сети
Старшина

Зарегистрирован: 06:25 Суббота, 20 Март 2010
Сообщения: 174
Steam_id: STEAM_0:1:9833809
Откуда: Томск

cl_cmdrate 66
cl_updaterate 66
rate 30000
cl_interp 0.015152
cl_inerp_ratio 1

самые хорошие рейты

Не в сети
Старшина

Зарегистрирован: 06:25 Суббота, 20 Март 2010
Сообщения: 174
Steam_id: STEAM_0:1:9833809
Откуда: Томск

Не в сети
Адмирал

Зарегистрирован: 12:56 Понедельник, 22 Сентябрь 2008
Сообщения: 1310
Steam_id: STEAM_0:0:34594781

Не в сети
Лейтенант

Зарегистрирован: 05:30 Четверг, 21 Январь 2010
Сообщения: 297
Steam_id: STEAM_0:0:66688666
Откуда: Белый Яр

Не в сети
Контр-адмирал

Зарегистрирован: 11:54 Пятница, 20 Ноябрь 2009
Сообщения: 943
Steam_id: STEAM_0:0:66688666
Откуда: Северск

Не в сети
Майор

Зарегистрирован: 19:45 Понедельник, 03 Январь 2011
Сообщения: 370
Steam_id: STEAM_0:130995.
Откуда: Стрежевой

Не в сети
Адмирал

Зарегистрирован: 12:56 Понедельник, 22 Сентябрь 2008
Сообщения: 1310
Steam_id: STEAM_0:0:34594781

Не в сети
Лейтенант

Зарегистрирован: 05:30 Четверг, 21 Январь 2010
Сообщения: 297
Steam_id: STEAM_0:0:66688666
Откуда: Белый Яр

Саша BachMann I*

насчет ланов ты не прав смотрел, посмотри видео с MAXLAN там у всех игроков рейты 66 стоят, хотя может ты и прав в чем то загляну завтра в клуб посмотрю как разница ощущается

Начать новую тему Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней. Страница 1 из 1 [ 14 сообщений ]

Часовой пояс: UTC+03:00

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей

Источник

lerp и его особенности

По сути, значение lerp определяет пропорцию между пакетами, пришедшими от сервера, и пакетами, сгенерированными на клиенте. Чем меньше значение lerp, тем меньше пакетов будет «придумано» на клиентской стороне, тем точнее то, что вы видите, будет соответствовать тому, что происходит на сервере. Чем больше значение lerp, тем большую долю в вашей картинке будет играть интерполяция.

1) Ваш интернет канал оставляет желать лучшего.
Предположим, что вы счастливый обладатель модема или в вашем городе широкополосный интернет пока по карману только избранным или ваш сосед по общежитию по вечерам заливает на торрент пачку свежих немецких фильмов. Это значит, что вы можете себе позволить исключительно скромные сетевые настройки. Скорее всего те, что стоят по умолчанию, а быть может ваши дела еще хуже. При cl_updaterate 20, даже если все пакеты благополучно приходят от сервера к клиенту, вы видите 20 кадров в секунду (не имеет значения, какой у вас компьютер). Человеческий глаз воспринимает эту картинку как дерганую. Если же, не дай бог, потери (choke) есть, то играть вы просто не сможете, так как будете видеть слайдшоу.

2) Настройки серверов непозволяют клиентской части выставлять необходимые значения некоторых переменных.
Главная проблема тут безусловно cl_interp_ratio, на данный момент ни один европейский серверный конфиг не позволяет играть с этой переменной равной нулю. На данный момент я не знаю ни одного паблика с такими настройками. Только несколько КВ-серверов позволяют отключать интерполяцию. Сейчас добавление sv_client_min_interp_ratio 0 (эта команда отвечает за минимальное значение cl_inerp_ratio, которое может иметь клиент находясь на этом сервере) в евроконфиге скорее всего вопрос времени, и я пологаю, ждать осталось не долго. Но факт остается фактом: значение этой серверной переменной по умолчанию равно 1, а это значит, что клиент не может сделать lerp меньше, чем 10 мс.

1) Напишите в консоли cl_updaterate и запомните значение этой переменной
2) Напишите в консоли cl_interp_ratio 1
3) Разделите 1 на значение cl_updaterate
4) Напишите в консоли cl_interp и присвойте ему то что получили в пункте 3

Например:
Я играю с cl_updaterate 66, это значит что в 3 пункте я получу 0.0152, следовательно мне нужно написать cl_interp 0.0152. Это даст мне lerp = 15. Что уже довольно неплохо. Так как интерполяция таких временных промежутков не слишком сильно добавляет неточности вашим действиям.
Если вы пишите значение cl_interp меньшее, чем cl_interp_ratio/cl_updaterate, то на net_graph lerp будет отображаться оранжевым цветом. Если же lerp окрашен в желтый, то значит значение lerp больше промежутка времени между отсылаемыми пакетами на этом сервере. В обоих случаях lerp (а значит cl_interp) нужно увеличивать пока тот не станет белым. Если вы будете пытаться играть с НЕ БЕЛЫМ lerp, то вы обрекаете часть своих выстрелов застревать в промежутке клиент-сервер.

Вывод:
Добивайтесь минимального значения lerp, оставляя его белым на каждом сервере, на котором играете. Это позволит вам снизить к минимуму все проблемы, связанные с вашим соединением с интернетом.

Чтобы не париться с математикой, можно забиндить клавиши так:

bind «INS» «lerpa+»
bind «DEL» «lerpa-«
bind «HOME» «lerpb+»
bind «END» «lerpb-«
bind «PGUP» «lerpc+»
bind «PGDN» «lerpc-«

Источник

Что такое lerp в css

Настройки клиентской части по умолчанию: cl_updaterate 20; cl_interp_ratio 2; cl_interp 0.1.

По сути, значение lerp определяет пропорцию между пакетами, пришедшими от сервера, и пакетами, сгенерированными на клиенте. Чем меньше значение lerp, тем меньше пакетов будет «придумано» на клиентской стороне, тем точнее то, что вы видите, будет соответствовать тому, что происходит на сервере. Чем больше значение lerp, тем большую долю в вашей картинке будет играть интерполяция.

После теории перейдем к практике. С самого начала кажется, что в идеале lerp должен быть равен 0, ведь при таком значении lerp нет интерполяции и клиент видит то же, что видит сервер. Вы НЕ можете себе позволить lerp = 0 по двум причинам.

1) Ваш интернет канал оставляет желать лучшего.
Предположим, что вы счастливый обладатель модема или в вашем городе широкополосный интернет пока по карману только избранным, или ваш сосед по общежитию по вечерам заливает на торрент пачку свежих немецких фильмов. Это значит, что вы можете себе позволить исключительно скромные сетевые настройки. Скорее всего те, что стоят по умолчанию, а быть может ваши дела ещё хуже. При cl_updaterate 20, даже если все пакеты благополучно приходят от сервера к клиенту, вы видите 20 кадров в секунду (не имеет значения, какой у вас компьютер). Человеческий глаз воспринимает эту картинку как дёрганную. Если же, не дай бог, потери (choke) есть, то играть вы просто не сможете, так как будете видеть слайдшоу.

2) Настройки серверов не позволяют клиентской части выставлять необходимые значения некоторых переменных.
Главная проблема тут безусловно cl_interp_ratio, на данный момент ни один европейский серверный конфиг не позволяет играть с этой переменной равной нулю. Сейчас добавление sv_client_min_interp_ratio 0 (эта команда отвечает за минимальное значение cl_inerp_ratio, которое может иметь клиент находясь на этом сервере) в евроконфиге скорее всего вопрос времени, и я пологаю, ждать осталось не долго. Но факт остается фактом: значение этой серверной переменной по умолчанию равно 1, а это значит, что клиент не может сделать lerp меньше, чем 10 мс.

1) Напишите в консоли cl_updaterate и запомните значение этой переменной
2) Напишите в консоли cl_interp_ratio 1
3) Разделите 1 на значение cl_updaterate
4) Напишите в консоли cl_interp и присвойте ему то что получили в пункте 3

Например:
Я играю с cl_updaterate 66, это значит что в 3 пункте я получу 0.0152, следовательно мне нужно написать cl_interp 0.0152. Это даст мне lerp = 15. Что уже довольно неплохо. Так как интерполяция таких временных промежутков не слишком сильно добавляет неточности вашим действиям.
Если вы пишите значение cl_interp меньшее, чем cl_interp_ratio/cl_updaterate, то на net_graph lerp будет отображаться оранжевым цветом. Если же lerp окрашен в желтый, то значит значение lerp больше промежутка времени между отсылаемыми пакетами на этом сервере. В обоих случаях lerp (а значит cl_interp) нужно увеличивать пока тот не станет белым. Если вы будете пытаться играть с НЕ БЕЛЫМ lerp, то вы обрекаете часть своих выстрелов застревать в промежутке клиент-сервер.

Добивайтесь минимального значения lerp, оставляя его белым на каждом сервере, на котором играете. Это позволит вам снизить к минимуму все проблемы, связанные с вашим соединением с интернетом.

Чтобы не париться с математикой, можно забиндить клавиши так:

bind «INS» «lerpa+»
bind «DEL» «lerpa-«
bind «HOME» «lerpb+»
bind «END» «lerpb-«
bind «PGUP» «lerpc+»
bind «PGDN» «lerpc-«

Источник

Что такое lerp в css

Если Вы заметили, после последнего обновления сетевой код CS:S был изменен. Появилось несколько новых переменных и одна из основных это LERP.

По сути, значение lerp определяет пропорцию между пакетами, пришедшими от сервера, и пакетами, с генерированными на клиенте. Чем меньше значение lerp, тем меньше пакетов будет «придумано» на клиентской стороне, тем точнее то, что вы видите, будет соответствовать тому, что происходит на сервере. Чем больше значение lerp, тем большую долю в вашей картинке будет играть интерполяция.

С самого начала кажется, что в идеале lerp должен быть равен 0, ведь при таком значении lerp нет интерполяции и клиент видит то же, что видит сервер. Вы НЕ можете себе позволить lerp = 0 по двум причинам.

1) Ваш интернет канал оставляет желать лучшего.
Предположим, что вы счастливый обладатель модема или в вашем городе широкополосный интернет пока по карману только избранным или ваш сосед по общежитию по вечерам заливает на торрент пачку свежих немецких фильмов. Это значит, что вы можете себе позволить исключительно скромные сетевые настройки. Скорее всего те, что стоят по умолчанию, а быть может ваши дела еще хуже. При cl_updaterate 20, даже если все пакеты благополучно приходят от сервера к клиенту, вы видите 20 кадров в секунду (не имеет значения, какой у вас компьютер). Человеческий глаз воспринимает эту картинку как дерганую. Если же, не дай бог, потери (choke) есть, то играть вы просто не сможете, так как будете видеть слайдшоу.
2) Настройки серверов не позволяют клиентской части выставлять необходимые значения некоторых переменных.

И так, как настроить?

1) Напишите в консоли cl_updaterate и запомните значение этой переменной
2) Напишите в консоли cl_interp_ratio 1
3) Разделите 1 на значение cl_updaterate
4) Напишите в консоли cl_interp и присвойте ему то что получили в пункте 3
Например:
Я играю с cl_updaterate 66, это значит что в 3 пункте я получу 0.0152, следовательно мне нужно написать cl_interp 0.0152. Это даст мне lerp = 15. Что уже довольно неплохо. Так как интерполяция таких временных промежутков не слишком сильно добавляет неточности вашим действиям.
Если вы пишите значение cl_interp меньшее, чем cl_interp_ratio/cl_updaterate, то на net_graph lerp будет отображаться оранжевым цветом. Если же lerp окрашен в желтый, то значит значение lerp больше промежутка времени между отсылаемыми пакетами на этом сервере. В обоих случаях lerp (а значит cl_interp) нужно увеличивать пока тот не станет белым. Если вы будете пытаться играть с НЕ БЕЛЫМ lerp, то вы обрекаете часть своих выстрелов застревать в промежутке клиент-сервер.

Чтобы не париться с математикой, можно добавить в autoexec.cfg:

напомню, autoexec.cfg находится: ваш путь:/Steam/steamapps/ИМЯ АККАУНТА/counter-strike source/cstrike/cfg/. если такого файла нет, то его нужно создать используя любой текстовый редактор.

значение LERP вовремя игры можно посмотреть включив net_grah 1

Источник

Читайте также:  код 0400400017 описание декларация расчет содержит ошибки и не принята к обработке рсв
Строительный портал