Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Unity игрок проходит сквозь стены

дмитрий куницкий Знаток (345), на голосовании 6 месяцев назад
Когда герой упирается в коллайдер его медленно от туда выталкивает, это стена, нужно что бы она его вовсе не пускала, колайдеры на стенах есть, RB только на игроке, ходьба через MovePosition
Дополнен 7 месяцев назад
вот код

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerMuvement : MonoBehaviour
{
public Rigidbody rb;
public float Speed = 50;
public Vector3 newVector3;
// Start is called before the first frame update
void Start()
{
rb = GetComponent<Rigidbody>();
}

// Update is called once per frame
void Update()
{
newVector3.z = Input.GetAxis("Vertical");
newVector3.x = Input.GetAxis("Horizontal");

}
void FixedUpdate()
{
rb.MovePosition(rb.position + newVector3 * Speed);
}
}
Голосование за лучший ответ
Yasin Baknodirov Знаток (430) 7 месяцев назад
Ну тут либо код поломанный, либо хз, туториал посмотри
Если в туториале код поломанный, тогда уже точно не знаю! :D
дмитрий куницкийЗнаток (345) 7 месяцев назад
Кол прикрепил
Yasin Baknodirov Знаток (430) дмитрий куницкий, Не, я не кодер, я просто сказал что знаю. (да)
Капитан SN Знаток (350) 7 месяцев назад
Создай новое условие для барьера
дмитрий куницкийЗнаток (345) 7 месяцев назад
Поподробнее, пожалуйста
Евгений Ярцев Ученик (56) 7 месяцев назад
Вроде код нормальный, тебе надо на каждую стену накинуть компонент меш коллизию.
дмитрий куницкийЗнаток (345) 7 месяцев назад
Почему меш?
дмитрий куницкий Знаток (345) дмитрий куницкий, почему не бокс?
Евгений ЯрцевУченик (56) 7 месяцев назад
Лучше меш, там коллизия а если использовать бокс то это как для игрока
Похожие вопросы