Товарищи, такой вопрос. Пишу контроллер персонажа и все в принципе

нормально, местами отлично, но есть как всегда но. Делаю всё перемещение через AddReForce, казалось бы, правильно перемещаю физический объект как надо, но у этого всего есть лично для меня не приятное ускорение и торможение от которого бы хотелось избавиться и управлять этими параметрами самой. Иначе:
1) velocity - я бы с удовольствием бы работала через установку скорости, но есть опять нюанс, NVidia Physics отличается от Box2D и каждый вызов перезаписывает скорость по новой и получается так, что это просто напросто...бесполезно, когда в контроллере и прыжки и гравитация своя и так далее. Я пробовала объединять вектора, но все это даёт шизофрению на экране
2) MovePosition - если вы знаток в написании собственных детекторов коллизий, это не ко мне, на это надо тратить время
3) Менять в разных состояниях drag. Казалось бы - решение, но не так. Выглядит это коряво и не красиво.

По итогу я хочу сделать умное и элегантное решение, которое бы это дело исправляла, я пробовала при торможении прилагать обратную силу и не смогла это сделать работающим полностью, только на половину, почему-то не смогла сделать это с учётом направления движения

Есть те кто могут помочь? Может вы знаете как быть в первом варианте? Или вы знаете как правильно прилагать силу в противовес движения для правильного и настраемового торможения?

Жду знающих людей

4 ответов

32 просмотра

float brakeForce = 5f; Rigidbody2D rb = GetComponent<Rigidbody2D>(); void Update() { float moveX = Input.GetAxis("Horizontal"); Vector2 force = Vector2.zero; if (moveX > 0) { force.x = moveX * rb.mass; вперед } else if (moveX < 0) { force.x = -moveX * rb.mass; } rb.AddForce(force); // Применяем тормозную силу if (moveX == 0 && rb.velocity.x != 0) { rb.AddForce(-Mathf.Sign(rb.velocity.x) * brakeForce); } } brakeforce - это сила торможения, которую ты можете настроить под свои нужды надеюсь я правильно понял что тебе нужно

Gamma Snaplight💛 (Egyptian catgirl)
У меня 3D🗿

Я это даже ясно объяснила в описании

Похожие вопросы

Обсуждают сегодня

Всем привет. Нужна платная консультация от тех, кто сталкивался с октябрём в кластере или шарит оч хорошо в цмс. Проблема следующая: после переноса в кластер октябрь начал ...
wl
8
Добрый день, не подскажите, если в OC-V3 поменять страндартную директорию /storage/ на /storage2/ - не будет сильно много проблем ?
Max Dubovsky
32
а я честно сказать не понимаю - нахуя идти учиться на вышку или еще куда-либо и при этом нихуя не делать, типа зачем ? просто корку получить, а нахуй она нужна тогда ?
Eugene Неелов
7
'frakturBold' => ['𝖆', '𝖇', '𝖈', '𝖉', '𝖊', '𝖋', '𝖌', '𝖍', '𝖎', '𝖏', '𝖐', '𝖑', '𝖒', '𝖓', '𝖔', '𝖕', '𝖖', '𝖗', '𝖘', '𝖙', '𝖚', '𝖛', '𝖜', '𝖝', '𝖞', '𝖟', '𝕬', '𝕭', '𝕮', '𝕯'...
Roma
4
Каким то образом можно определить ширину экрана пользователя перед загрузкой partial-а? Надо рассчитать ширину кадров слайдера для ресайза картинок для container-fluid.
Point 111
22
зараз якщо створити файл core/custom/define.php з текстом <?php const NO_SESSION = true; можна позбутися сесійних кукі (що зручно, щоб не показувати людям банери про збір та в...
Artur Kyryliuk
1
А сколько часов мак держит зарядку в рабочем режиме? Например мой Redmi Mac (просто наклейка от айфона осталась, налепил) по началу держал часов 5 с парой открытых штормов и ...
Ross
8
я бы даже сказал не размер резюме, а слова, которые там написаны, потому что резюме может быть на несколько десятков страниц из-за 20 летнего опыта работы, но там в опыте буде...
Eugene Неелов
2
так а я не могу просто новый сделать ? я пробовал не прокатило но может чето упускаю
Максим
3
Ребят, было ли у вас так, что переменные в WebApp —tg-viewport-height, —tg-viewport-stable-height после метода expand не обновляются, а остаются в размерах, как было до expand...
Black
3
Карта сайта