![]() |
Страницы (3): [1] 2 3 » Показать все 40 сообщений этой темы на одной странице |
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Технические вопросы (https://hlfx.ru/forum/forumdisplay.php?forumid=20)
-- Чему на самом деле равно ускорение в хл1? (https://hlfx.ru/forum/showthread.php?threadid=5144)
Чему на самом деле равно ускорение в хл1?
Работаю над движением игрока в небольшом личном проекте. Чтобы было от чего отталкиваться, решил для начала реализовать физику как в хл1 с теми же настройками. В хл1 по дефолту:
sv_friction = 4
sv_accelerate = 10
Сделал у себя так же. С трением все замечательно - игрок тормозит и скользит с разбегу очень похоже на то, как это происходит в хл1. А вот с ускорением проблема - оно слишком резкое: чуть дотронешься до клавиши, а игрок уже отлетает на приличное расстояние. И на поворотах его заносит.
Реализация ускорения у меня такая же как в PM_Accelerate, поэтому у меня две версии происходящего:
1. Значение sv_accelerate прежде чем попасть в PM_Accelerate домножается на какое-то другое значение, которое делает его меньше.
2. cmd.forwardmove и cmd.sidemove изменяются при нажатии клавиш не резко, а плавно.
Есть кто-нибудь, кто разбирается?
__________________
XaeroX
PM_FlyMove скопирована почти один в один, PM_Friction тоже работает как в хл1, включая влияние sv_stopspeed, только edge friction не учитывается. PM_WalkMove я не копировал - у меня своя реализация, но делает она по сути то же самое, с двумя отличиями: игрок ускоряется вдоль пола а не вдоль плоскости XY, и пока не реализовано хождение по ступенькам.
В целом игрок двигается очень похоже, только вот с ускорением проблемы.
Личный проект на Unity?
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Дядя Миша нет, на уе4.
В общем, разобрался - я дурак и перепутал pmove->friction и pmove->movevars->friction. В результате я перемножал sv_accelerate и sv_friction - при ускорении 40 неудивительно, что игрок был резким как понос...
Теперь все отлично работает
ЗЫ. Я же правильно понимаю, что pmove->friction это внешнее влияние, типа скользкости пола?
Government-Man модификатор. по умолчанию еденица там.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Government-Man а разве в УЕЧ СДК нет физики? o_O Или это эксперимент просто?
ЗЫ: в PM_Friction я год назад что-то фиксил. Но уже не помню. В ХЛ что-то было не доделано.
__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: half-life@conference.jabber.ru
__________________
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Удивительное дело с этими Эпиками, написали аж 10 тысяч строчек кода - а людям не нравится. Вот КАК они это делают?
__________________
XaeroX эмм, ну в халфе pm_shared 3300 строчек кода. Всего в три раза меньше. Но нашему другу с ними отчего-то разбираться не лень.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
Секрет в том, что в pm_shared далеко не вся "физика"
А я вспомнил, что мы с Царём пилили год назад - скольжение. Т.е. чтоб нельзя было стоять неподвижно на скользкой наклонной поверхности. Кстати, это есть в Unreal, но нет в HL. Теперь есть в XDM. И ещё теперь есть разное трение у разных материалов.
__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: half-life@conference.jabber.ru
__________________
Временная зона GMT. Текущее время 11:10. | Страницы (3): [1] 2 3 » Показать все 40 сообщений этой темы на одной странице |
На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024