@@@ UNITY/이론

[UNITY] 벽 뚫기 방지

HTG 2023. 1. 19. 11:32
728x90

여러가지 방법을 생각해봤다.

raycast 접촉시 정지 - 접촉 후 움직일 수 가 없음

trigger 작동시 정지 - 위와 동일

collider 두께 늘리기 - 가능성 있음

raycast 접촉시 속도 줄이기 - 가능성 있음

    void StopToWall()
    {
        Debug.DrawRay(transform.position, transform.forward * 0.5f, Color.green);
        isBorder = Physics.Raycast(transform.position, transform.forward, 0.5f, LayerMask.GetMask("Wall"));
        Debug.Log(isBorder);
        if (isBorder)
        {
            Speed = 1f;
        }
        else
        {
            Speed = 10f;
        }
    }
    private void FixedUpdate()
    {
        StopToWall();
    }

 

하지만 근본적인 문제는 이동방식이라 이를 추후에 해결해야할 것으로 보임