2016-05-05 6 views
0

Я новичок в Unity, пытаясь сделать свою первую игру (шутер от третьего лица). Прошло уже больше недели, и я снова и снова пытался, чтобы мой персонаж двигался с использованием компонента жесткого тела, а не символьного контроллера или простого преобразования. Транслит.Unity 3D - Движение персонажа третьего лица с использованием rigidbody

У меня было около 30 веб-страниц, открытых с недели, просматривающих темы об этом, но я ничего не нашел (почти заставил меня почувствовать, что я пытаюсь сделать что-то невозможное lol ...).

Итак, я хочу перенести своего персонажа так же, как в черный список Splinter Cell, и иметь камеру с перекрестием, управляемым мышью (если я стреляю, персонаж будет вращаться, если не будет направлен против цели, а затем стрелять).

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

Если есть даже учебник, который разбивает его, чтобы действительно понять, это было бы здорово или просто код с комментариями (у меня есть фон C#).

float moveSpeed = 6f;   // Player's speed when walking. 
float rotationSpeed = 6f; 
float jumpHeight = 10f;   // How high Player jumps 

Vector3 moveDirection; 

Rigidbody rb; 

// Using the Awake function to set the references 
void Awake() 
{ 
    rb = GetComponent<Rigidbody>(); 
} 

void FixedUpdate() 
{ 
    Move(); 
} 

void Move() 
{ 
    float hAxis = Input.GetAxis("Horizontal"); 
    float vAxis = Input.GetAxis("Vertical"); 

    Vector3 movement = new Vector3(hAxis, 0f, vAxis); 
    rb.position += movement * moveSpeed * Time.deltaTime; 
} 
+0

Я в основном делаю работу 2d Unity, поэтому я не знаю, насколько я могу помочь с вашей ситуацией, но [здесь] (https://www.youtube.com/watch?v=AEPI5rmg3XY) - действительно интересное видео я обнаружил, что, я думаю, вы сможете немного помочь вам. Не позволяйте себе опускаться, всегда с самого начала. Я обнаружил, что чем дольше я продолжал работать над этим, тем легче было нелегко, но стало еще веселее! –

+0

«попытался заставить моего персонажа двигаться с использованием жесткой детали, а не символьного контроллера». ** Почему? ** – Fattie

+0

минор, обратите внимание, что вы редко используете «FixedUpdate» в Unity. забудь об этом. – Fattie

ответ

1

Моя идея. Если вы хотите настоящего ощущения, вам нужен rigidbody.addforce персонажу в соответствующей части тела персонажа. Не rigidbody.position.

Надежда помощь.

+0

спасибо, и как бы вы вращали символ при нажатии горизонтальной оси? – Manu

+0

Если вы хотите настоящего ощущения, тогда вы даете реальную силу. затем подайте силу в одну сторону. – tim

+0

Может ли этот символ вращаться? – Manu

 Смежные вопросы

  • Нет связанных вопросов^_^