Unreal EngineФорумBlueprints

Приседание в зависимости от высоты прохода

#0
22:45, 5 мар 2025

Здравствуйте.

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

Сделал триггер, при пересечении которого Capsule Half Height становиться еще чуть меньше, чем при обычном приседании, и ставлю его возле прохода. Проблема в том, что если игрок нажмет кнопку приседания до пересечения триггера, то все работает, а если уже после, то персонаж присядет на стандартную высоту. Как это можно исправить?

Может у вас есть другие идеи как реализовать подобное? Поделитесь, пожалуйста.

Crouch Blueprint (1) | Приседание в зависимости от высоты прохода
Crouch Blueprint (2) | Приседание в зависимости от высоты прохода
Crouch Blueprint (3) | Приседание в зависимости от высоты прохода
#1
0:56, 6 мар 2025

Как сделал так и работает, Ванга в отпуске что бы угадывать.

#2
9:10, 6 мар 2025

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

#3
20:39, 6 мар 2025

Kemanorel

Да, вы правы, обновил пост, чтобы было понятно.

#4
22:07, 7 мар 2025

Вам сказали правильный ответ, вам нужно использовать лайнтрейс, нацелить его вверх, получая точку пересечения со стеной, легко получить дистанцию между 2-мя локациями.

#5
12:27, 8 мар 2025

меняй значение Crouched Half Height в Movement Component когда заходишь в триггер бокс.

#6
23:02, 29 мар 2025

1. зачем касты? убери
2. два рабочих объема, капсула и триггер боксы
2.1 чек на оверлап и энд оверлап
2.2 что бы не было траблы с нажатием - запили проверку (либо булевой переменной при оверлап эвенте либо функцией Is Overlapping Actor)
3. сам оверлап бокс можешь реализовать как актора с регулируемой внутри точкой и при перекрытии брать их мировые (не локальные) координаты для интерполяции положения камеры
И ни каких всратых трейсов не нужно.

#7
21:36, 3 апр 2025

wertolot
> 3. сам оверлап бокс можешь реализовать как актора с регулируемой внутри точкой и при перекрытии брать их мировые (не локальные) координаты для интерполяции положения камеры
> И ни каких всратых трейсов не нужно.

Здравствуйте. Я, честно говоря, не понял третий пункт. Объясните, пожалуйста, для новичка, что значит актор с регулируемой внутри точкой, и зачем брать мировые координаты?

#8
10:51, 13 апр 2025

Blackhead
> Здравствуйте. Я, честно говоря, не понял третий пункт. Объясните, пожалуйста, для новичка, что значит актор с регулируемой внутри точкой, и зачем брать мировые координаты?
Сорян, приболел. @wertolot13 телега, напиши покажу, тут долго и неудобно.

#9
6:30, 14 апр 2025

Пускаешь два трейса - один впереди (куда двигаешься), второй позади (откуда двигаешься), то есть если ты двигаешься вбок то вектор положения переднего трейса будет находиться сбоку.

Если нет пересечений - то ты стоишь. Если есть хоть одно - садишься.

Unreal EngineФорумBlueprints

Тема в архиве.