Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Все о физике
GAMEINATOR forums > S.T.A.L.K.E.R. > Мастерская: создание модов для S.T.A.L.K.E.R.
hack.pavlov
Все привет! Давай поговорим о физике в сталкере! Кто что знает про физику в сталкере?!Как она работает?! И самое главное, как ее настроить правильно? Жду ваших комментарий.
OlegatoR
Можно начать с изучения физ. движка http://ode.org/wiki/index.php?title=Manual
hack.pavlov
Мне кажется лучше уже билд 1844 изучить! Там все таки можно посмотреть как настроины модели.
dPlayer
Цитата(hack.pavlov @ 20.01.2019, 22:45) *
Кто что знает про физику в сталкере?!

Она в теории очень годная, возможностей физ.движка достаточно для задач игрового мира сталкера, но на практике она нереально косячная, при чём на самом базовом уровне - параметров/значений и т.п. Куда ни ткни, в ЛЮБОЙ параметр, будь то хит или масса вылезет то, что есть условия, при которых этот параметр не подходит. А начнёшь его менять - по цепочке рушишь другое. Вспоминается как тут не так давно кто-то бился с тряпошными занавесками в медблоке агропрома, которые дико летали от пули (которая их должна простреливать, почти не шевеля). Попытка это исправить прямыми параметрами, приводила к или к каменной занавеске, которую ГГ сдвинуть не мог, или к пуле, которая консервную банку не могла сдвинуть с места. Апогей этого всего конечно транспорт, который как ни бьются не могут довести до ума.
Цитата(hack.pavlov @ 20.01.2019, 22:45) *
как ее настроить правильно?

С полного нуля, перебирая все параметры игрового мира, завязанные или связанные с физикой.
Цитата(hack.pavlov @ 20.01.2019, 22:45) *
Как она работает?!

См. документацию. Ничего такого там нет.
Diesel
Цитата(dPlayer @ 21.01.2019, 00:30) *
Апогей этого всего конечно транспорт, который как ни бьются не могут довести до ума.

Для ЗП актуально. Увеличь массу в три раза, подправь кофиги и помчались.
Cossack-HD
Цитата(dPlayer @ 21.01.2019, 00:30) *
Вспоминается как тут не так давно кто-то бился с тряпошными занавесками в медблоке агропрома, которые дико летали от пули (которая их должна простреливать, почти не шевеля). Попытка это исправить прямыми параметрами, приводила к или к каменной занавеске, которую ГГ сдвинуть не мог, или к пуле, которая консервную банку не могла сдвинуть с места.

А в баллистических рассчётах есть фича, которая рассчитывает передаваемый предмету импульс и хит? Если пуля пролетает, потеряв 2% энергии, то только 2% импульса передаётся предмету.
NanoBot-AMK
Физика не очень реалистична, формулах используется пропорциональное сопротивление, хотя должно быть проц. квадрату, короче много всяких упрощений. Да же максимальная скорость объектов ограничена 150 м/с, что не даёт в оригинале использовать снаряды на классе ракеты. И т.д. В правленых движках это можно конечно под править, но на это надо некоторые усилия.
Trollz0r
Цитата(NanoBot-AMK @ 20.01.2019, 20:51) *
Да же
Побойся Макрона, ирод lol.gif
Цитата(NanoBot-AMK @ 20.01.2019, 20:51) *
максимальная скорость объектов ограничена 150 м/с
А куда больше, если игровая часть уровня - те же 150 метров в ширину?
RayTwitty


Цитата(dPlayer @ 20.01.2019, 22:30) *
Вспоминается как тут не так давно кто-то бился с тряпошными занавесками в медблоке агропрома, которые дико летали от пули (которая их должна простреливать, почти не шевеля). Попытка это исправить прямыми параметрами, приводила к или к каменной занавеске, которую ГГ сдвинуть не мог, или к пуле, которая консервную банку не могла сдвинуть с места.

Можно сделать прострел насквозь, но тогда нужного эффекта не будет. Я думаю, сделали умышленно.


Цитата(dPlayer @ 20.01.2019, 22:30) *
Куда ни ткни, в ЛЮБОЙ параметр, будь то хит или масса вылезет то, что есть условия, при которых этот параметр не подходит. А начнёшь его менять - по цепочке рушишь другое.

Дело в изначально криво настроенных моделях и конфигах. Банально увеличишь импульс у ПМ - тушки будут делать акробатически трюки назад при попадании.
Если же делать контент с нуля, настраивая грамотно каждый параметр, то будет нормально. Со временем просто уже будет получена "лучшая практика" и параметры можно будет копипастить, не сильно меняя.
NanoBot-AMK
Цитата(Люпус Эст @ 20.01.2019, 23:04) *
А куда больше

Например хочу сделать мод, ПЗРК против вертолёт(самолёты), параметры ракеты и скорость вертолётов реалистичные, и это ограничения сильно мешает. В исходниках правится довольно легко, в вот в XRayExt уже сложно, в ЗП легко, там физика в отдельный файл выведена xrPhysics.dll, нашёл хексредактором 150.0f два значение и ракеты носятся хоть на 1000 м/с. В ТЧ это уже гораздо сложней, в ЧН не смотрел.
xrModder
В сталкере предметы падают с постоянной скоростью, или я ошибаюсь? В реальности предметы падают с ускорением.
abramcumner
Цитата(xrModder @ 21.01.2019, 05:08) *
В сталкере предметы падают с постоянной скоростью, или я ошибаюсь? В реальности предметы падают с ускорением.

Ошибаешься конечно. В ЧН гранаты летают по классической школьной параболе.

Цитата
В реальности предметы падают с ускорением.

В нашей реальности, смотря сколько падают. В итоге падают с постоянной установившейся скоростью smile.gif
RedMagic
Цитата(dPlayer @ 20.01.2019, 22:30) *
Она в теории очень годная, возможностей физ.движка достаточно для задач игрового мира сталкера, но на практике она нереально косячная, при чём на самом базовом уровне - параметров/значений и т.п. Куда ни ткни, в ЛЮБОЙ параметр, будь то хит или масса вылезет то, что есть условия, при которых этот параметр не подходит. А начнёшь его менять - по цепочке рушишь другое. Вспоминается как тут не так давно кто-то бился с тряпошными занавесками в медблоке агропрома, которые дико летали от пули (которая их должна простреливать, почти не шевеля). Попытка это исправить прямыми параметрами, приводила к или к каменной занавеске, которую ГГ сдвинуть не мог, или к пуле, которая консервную банку не могла сдвинуть с места. Апогей этого всего конечно транспорт, который как ни бьются не могут довести до ума.

Цитата(Дизель @ 20.01.2019, 22:35) *
Для ЗП актуально. Увеличь массу в три раза, подправь кофиги и помчались.

"Во всем виноваты дизайнеры ©"

Цитата
Ошибка: робот погибает при попадании в него гранаты (именно от попадания, а не от взрыва) Д - дизайнер, П - программист.
Д: программисты всё сломали! почему так получается?!
П: естественно так получается! потому, что у гранаты масса 100 кг! зачем вы это сделали?
Д: да?! а чтобы граната в воде тонула!
П: а почему она с нормальной массой не тонет?
Д: а потому что у воды плотность большая! (прим.: больше, чем у ртути)
П: а почему плотность такая большая?!
Д: а чтобы ящики деревянные плавали!
П: а почему они иначе не плавают?!
Д: а потому что у них масса 50 кг!
П: а зачем такая масса?!
Д: а иначе они некрасиво разваливаются!

https://bash.im/quote/413852
RayTwitty
Цитата
Ошибка: робот погибает при попадании в него гранаты (именно от попадания, а не от взрыва) Д - дизайнер, П - программист.
Д: программисты всё сломали! почему так получается?!
П: естественно так получается! потому, что у гранаты масса 100 кг! зачем вы это сделали?
Д: да?! а чтобы граната в воде тонула!
П: а почему она с нормальной массой не тонет?
Д: а потому что у воды плотность большая! (прим.: больше, чем у ртути)
П: а почему плотность такая большая?!
Д: а чтобы ящики деревянные плавали!
П: а почему они иначе не плавают?!
Д: а потому что у них масса 50 кг!
П: а зачем такая масса?!
Д: а иначе они некрасиво разваливаются!

Чисто ситуация про сталкер biggrin.gif
cjayho
QUOTE (Люпус Эст @ 20.01.2019, 22:04) *
QUOTE (NanoBot-AMK @ 20.01.2019, 20:51) *
максимальная скорость объектов ограничена 150 м/с
А куда больше, если игровая часть уровня - те же 150 метров в ширину?


А то ничо, что даже пистолетная пуля летит 900 м/с, а винтовочная и того быстрее?

QUOTE (RayTwitty @ 21.01.2019, 17:54) *
QUOTE
Ошибка: робот погибает при попадании в него гранаты (именно от попадания, а не от взрыва)


Помню в counter strike 1.6 гранату (любую) можно было юзать как булыжник, при попадании в противника она отнимала HP.
abramcumner
Цитата(cjayho @ 21.01.2019, 22:11) *
А то ничо, что даже пистолетная пуля летит 900 м/с, а винтовочная и того быстрее?

А ничо, что пуля не объект и правило 150 на нее не действует? smile.gif
cjayho
QUOTE (abramcumner @ 21.01.2019, 21:15) *
QUOTE (cjayho @ 21.01.2019, 22:11) *
А то ничо, что даже пистолетная пуля летит 900 м/с, а винтовочная и того быстрее?

А ничо, что пуля не объект и правило 150 на нее не действует? smile.gif


А откуда такая инфа?
NanoBot-AMK
cjayho, откуда ты выскочил? У пистолетов скорость пули от 240 до 380 м/с, вне которых случаях до 540 м/с. Скорость объектов имеющий физическую оболочку в XRay 1.* ограничена 150 м/с, что не позволяет разгонять, такие объекты, как ракета гранатомёта, до больших скоростей. Например, захочу сделать реалистичный РПГ-7, стартовая скорость гранаты 120 м/с, отлетев на расстояние метров 15, за полсекунды ракета разгоняется до 300 м/с, так что без правок движка не получается, приходится эти скорости уменьшать в два три раза, что в принципе для ужатого мира сталкере вполне годно, увернутся от ракеты сложней, но и сбивать вертушки гораздо легче. На пули конечно такие ограничения не действуют, хоть 1000000 м/с задай, получится хитскановая баллистика, т.к. это совсем другой объект.
Цитата(cjayho @ 21.01.2019, 22:11) *
Помню в counter strike 1.6 гранату (любую) можно было юзать как булыжник, при попадании в противника она отнимала HP.

В XRay это тоже работает, хит засчитывается от кинувшего, на этом принципе работают метаемые ножи.
Цитата(cjayho @ 21.01.2019, 22:33) *
А откуда такая инфа?

Изучения исходников прежде все, и до это эксперименты.
Cossack-HD
Цитата(cjayho @ 22.01.2019, 00:33) *
Цитата(abramcumner @ 21.01.2019, 21:15) *
Цитата(cjayho @ 21.01.2019, 22:11) *
А то ничо, что даже пистолетная пуля летит 900 м/с, а винтовочная и того быстрее?

А ничо, что пуля не объект и правило 150 на нее не действует? smile.gif


А откуда такая инфа?

Снайперы Свободы не уходят в оффлайн, я одного хэдшотил аж с хутора наёмников то-ли с 330, то-ли с 400 метров (по внутриигровому счётчику). По ощущениям это было почти как километр.
abramcumner
Цитата(cjayho @ 21.01.2019, 22:33) *
А откуда такая инфа?

NanoBot-AMK уже собственно все расписал.
Пули в сталкере не являются "физическими" объектами. Весь их просчет заключен в BulletManager.cpp. Ну они собственно и не подходят под физику твердых тел, так как имеют обыкновение пролетать через другие твердые тела.
Физ. объекты это наследники CPhysicsShellHolder. С ними работает физ. движок.

Цитата(NanoBot-AMK @ 22.01.2019, 00:07) *
В XRay это тоже работает, хит засчитывается от кинувшего, на этом принципе работают метаемые ножи.

Это какие-то крутые ножи. Те, которые я видел, были обычными ножами с гигантским радиусом действия smile.gif
RayTwitty
В билдах можно было убивать болтами biggrin.gif
Zagolski
Часто бывает, когда к объекту подходишь вплотную или неписю, прилично фпс падает. Наверняка что-то с обсчетом коллизии связано, а вот где копать - загадка...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.