유니티/AA(3D 쿼터뷰 액션 게임)

AA(19) - 벽 뚫기 방지

무직백수취업준비생 2021. 9. 17. 03:13
728x90
반응형
 void Move()
    {
        if(!isBorder)
            transform.position += moveVec * speed * (wDown ? 0.1f : 1f) * Time.deltaTime;
    void FreezeRotation()
    {
        rigid.angularVelocity = Vector3.zero;
    }
    void StopToWall()
    {
        Debug.DrawRay(transform.position, transform.forward * 5, Color.green);
        isBorder = Physics.Raycast(transform.position, transform.forward, 5, LayerMask.GetMask("Wall")); 
    }
    private void FixedUpdate()
    {
        FreezeRotation();
        StopToWall();
    }

레이케스트를 이용해 벽을 감지하고 이동을 멈춰 벽뚫림현상을 방지합니다.

 

어색하지 않도록 감지거리를 조절합니다.

728x90
반응형