Намагаючись прийняти рішення щодо впровадження механіки підйому на уступ для платформи-2d, який керується фізикою. Який найкращий спосіб зробити це, не надто складно?
Поки я розумію (хобі тут не професійний), є кілька варіантів, серед яких:
Застосовуйте керовану силу до жорсткого тіла на осі y, поки положення кореня знаходиться трохи вище положення руки, потім прикладіть достатню силу на вісь x, щоб персонаж стояв на платформі. У той же час якось синхронізуйте це з анімацією (схилами).
Зауваження : рух тут легкий і навіть може управлятися призматичним ковзним суглобом, але я не впевнений, як би я підтримував анімацію (хребет) у синхронізації з рухом.
Анімація кореневого руху, яка визначає позицію кореня символу. Телепортуйте жорстке тіло, коли повний і сподіваюся, box2d все ще може правильно вчасно реагувати на будь-яке зіткнення, якщо якісь об'єкти падають з неба.
Зауваження : звучить простіше насправді анімувати, але не впевнений, чи не зіткнуться я з будь-якими проблемами з часом виконання хребта, box2d або пізнішими вниз по лінії, що рухаються платформами та різними платформами висоти.
Застосуйте обмеження ІК програмно на руках, щоб зафіксувати їх на місці, і перейдіть до обертання кісток вручну або застосуйте невеликі попередньо встановлені (кілька клавіш / кадрів) анімації, одночасно приклавши необхідну силу до жорсткого тіла одночасно.
Зауваження : схоже, що це дало б максимальний контроль гравцеві, але мені здається, що складно реалізувати на своєму рівні, не точно знаючи, з чого я б почав.
Заздалегідь дякую за будь-який вклад!
FYI: Це двигун на базі ECS (libgdx + ashley) з box2d. Захоплення виступу вже реалізовано як окрема система, тому тут можна припустити, що персонаж вже здатний звисати з уступу будь-якої висоти.