Як зробити так, щоб мій двовимірний символ стояв нормально на схилі?


13

У мене цей персонаж є в Unity3D (2D Mode) ... на схилі, який виглядає приблизно так, введіть тут опис зображення

Але я хочу, щоб персонаж стояв уздовж червоної лінії .. Як і нижче введіть тут опис зображення

Як я можу це зробити в Unity3d?

У мене це налаштування ..

введіть тут опис зображення

Я використовую просту Addforce для руху ... Якщо я усуну обмеження положення z, це призведе до дивного руху, як кочення тощо. Будь-яка допомога буде вдячна :)

Відповіді:


27

Чи вважали ви, що людині виглядає дуже дивно, щоб стояти перпендикулярно схилу?

стоячи перпендикулярно схилу

Вам потрібно бути вертикальним, щоб залишатися в рівновазі.


Деякі варіанти:

  • Ставтесь до його ніг як до окремого предмета і обертайте їх, щоб вони були паралельними нахилу. (У рентгенограмі знайдеться кут у нормі , як описано dnk . Кут для ніг - це + 90 ° .)

    обертові ноги

  • Підробляйте це, пересуваючи весь персонаж трохи вниз.

    підроблені "обертові" ноги


3
дякую всім :) Я зробив це після вашої пропозиції i.imgur.com/io3v7Y4.png
jamius19

1
Це також говорить про те, що як тільки обертаються ноги вже не виглядають красиво, ваш герой повинен спотикатися :)
Хаген фон Ейтцен

: - / Чи виглядає обертання ніг дивним на малюнку, який я додав?
jamius19

@ jamius19 Вони мені добре виглядають. Я думаю, що коментар Хагена був жартом.
Анко

1
Вам не потрібно переміщувати персонажа вниз, просто перемістіть візуальну схил вгору трохи відносно фізичної
храповиця виродка

2

Спробуйте використовувати RaycastHit.normal на місцях, щоб нормалізуватися. Їм ставлять char.up = нормально


1
Навіщо витрачати процесор на радіацію, якщо фізика Unity вже надає цю інформацію за замовчуванням при кожному зіткненні?
Кролтан
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.