@zeekе
Половину информации в Пикабу не нашёл, кроме пояснений социальных групп и реднеки. Да, и к тому же, облегчил задачу. Чтобы не лазить по сайтам, зашёл, посмотрел и всё
Я хочу быть краток, но тогда тема не будет охвачена полностью, потому начну издалека, я с 2017 года нахожусь на проекте, и с того же времени изучаю SIMFPHYS - движок внутри игры который симулирует транспорт, и использует нас с вами люби-имый сервер.
Так же являюсь основателем самого крупного автодвижения сервера - STREET INSIDERS
Кто хоть немного осведомлен о сервере и происходящем на нем, слышали о мне и знают как одного из лучших, или лучшего водителя сервера. И это все не спроста, я транслирую правильную идеологию отношения к вождению и предлагаю наиболее оптимальные решения задач возникающих на пути улучшения управления автомобилем.
Для кого это руководство? - Для всех - каждый из вас получит новый опыт и банально станет образование в вопросе, что сможет поднять средний уровень вождения на simfphys и сервере.
Кому оно точно полезно? - Для людей у которых комплектующие компьютера собраны актуальностью после 2013 года
У кого оно может вызвать недопонимание? - У людей чьи комплектующие старше 2010 года выпуска. Но не стоит расстраиваться и не читать тему, вы ознакомитесь с материалом, попробуете его, пощупаете плюсы и минусы и оставите фитбек, исходя из которого я смогу в дальнейшем вам помочь.
Мой старый сетап это пентиум-бич какого-то поколения на 2.1 герц, гтх240 нвидия и мертвая память с живыми 3 гигами оперативки, и на тот момент я уже делал очень сложные элементы управления благодаря руководству.
Что из себя представляет оптимизация и откуда мы будем черпать великий скилл управления?
Начнем с базы - net_graph - консольная команда что позволяет мониторить данные на клиенте и сервере, обратимся к тому что мы будем редактировать ради достижения своих целей.
Lerp - искусственно созданная задержка на клиенте. Задается вопрос, а зачем она вообще нужна если делает только хуже исходя из ее названия? Все просто, движок игры очень старый, как и компьютеры для которых он разрабатывался, и эта задержка служила инструментом оптимизации и сглаживания разрывов на клиенте, из-за чего на данный момент на модифицированных серверах лишь размазывает лаги по вашим кадрам.
Lerp - или же интерполяция кадров служит неким сглаживанием, на клиенте, которое убирает разрывы и дерганность движения, технология довольно хорошо показывает себя в тепличных условиях, но в случае гаррис-мода и его нагруженности, это делает картинку плачевной, и мы получаем продолжительные подвисания, от которых бы стоило избавиться, тут сможете подробнее ознакомиться с системой и ее работой. https://steamcommunity.com/sharedfiles/filedetails/?id=864504043
Собственно, когда вы в первой заходите в игру и на сервер, то видите лерп в районе 62-120, что звучит ну очень вызывающе на фоне того что вам нужно управлять машиной, держим в голове что это ДОПОЛНИТЕЛЬНАЯ задержка на ваше нажатие, - input lag.
Плавно переходим к фиксированию нажатия сервером - TickRate
Доброград выдает в районе 16 фпс в секунду, это значит что он может регистрировать в секунду лишь 16 ваших действий, на самом деле это не плохо для вождения, и плохо для стрельбы, но не забываем что у нас есть задержка на клиенте, соответственно часть тех нажатий что мы совершаем попросту исчезает, ведь наш клиент съедает их из-за того что занят оптимизацией нашей картинки для игры.
И последнее - UPDATERATE
Это значение отвечает на то сколько максимально возможных “фпс” - тиков, мы можем отправить серверу, на деле есть идеальные значения для каждого сервера, но в случае гаррисмода, лучше отдать все ресурсы, и пускай сервер выборочно берет те, что сочтет наиболее нужными, из-за чего все наши нажатия будут регистрироваться.
Выдохнем и приступим к оптимизации.
gmod_mcore_test 1
mat_queue_mode 2
cl_threaded_bone_setup 1
cl_threaded_client_leaf_system 1
r_threaded_client_shadow_manager 1
r_threaded_particles 1
r_threaded_renderables 1
r_queued_ropes 1
studio_queue_mode 1
Эти консольные команды, нагрузят нашу систему и дадут игре больше дышать, обрабатывать больше данных на единицу времени, что ну очень важно для нас, это буквально снимает оковы с рук игры.
cl_interp 0
cl_interp_ratio 0
cl_updaterate 1000
cl_lagcompensation 1
“steamapps\common\GarrysMod\garrysmod\cfg”
команды будут вводиться автоматически при заходе в игру, удаляются простым сносом файла, игра сама создаст чистый бланк при следующем презаходе
Эти команды, работают с интерполяцией и рейтами, проще говоря завышают рейты - обновления, и убирают сглаживание - интерполяцию, что сводит задержки к их отсутствию, так словно вы играете в синглплеере.
Какие подводные?
Для слабых ПК - могут возникнуть проблемы с изображением и разрывами визуального контента сервера. Дергаются люди, пропы, колеса уходят вперед машины, видите неактуальную информацию сервера.
Как фиксить? Перебором и удалением каждой из команд, поиском актуальных именно для вас наборов данных.
Для сильных пк - повышенная нагрузка на виртуальную память вашего устройства, из-за чего как в большинстве онлайн проектов аля тарков, арех и подобные начинаются несвойственные лаги спустя несколько часов сессии, помогает перезаход.
Преимущества - Отсутствие задержки как таковой, обзор актуальной информации сервера - Вы видите лишь микролаги, и лерп не растягивает их более чем на один кадр, к этому ощущению стоит привыкнуть, в сравнении лишь как постоянно играть с пингом 200 а потом пересесть на 50, это непривычное ощущение от которого изначально может выйти недопонимание происходящего, придется учиться все делать по другому, но после вас ждет высокая эффективность этих действий, стрельбы - вождения.
P.s Просьба оставлять как можно больше фитбека, делиться с друзьями и спрашивать их мнения, ведь если не работает как кажется у вас, возможно будет работать у вашего знакомого, который поймет все преимущества этого метода, пишите фитбек, просьбы и вопросы, только вместе мы сможем поднять средний уровень игроков.
Похожие темы