강의

멘토링

커뮤니티

Inflearn Community Q&A

godjuno's profile image
godjuno

asked

[MMORPG Game Development Series with C# and Unity] Part3: Unity Engine

movement

13분에 NavMeshAgent가 바꾼 부분에서 실행이 안되어 지네여

Written on

·

511

0

void UpdateMoving()
    {
        Vector3 dir = _destPos - transform.position;
        if (dir.magnitude < 0.0001f)
        {
            _state = PlayerState.Idle;
        }
        else
        {
            NavMeshAgent nma = gameObject.GetOrAddComponent<NavMeshAgent>();
            float moveDist = Mathf.Clamp(_speed * Time.deltaTime, 0, dir.magnitude);

            nma.Move(dir.normalized * moveDist);
            transform.rotation = Quaternion.Slerp(transform.rotation, Quaternion.LookRotation(dir), 20 * Time.deltaTime);
        }

        Animator anim = GetComponent<Animator>();
        anim.SetFloat("speed", _speed);
    }

 

 

"Move" can only be called on an active agent that has been placed on a NavMesh.
UnityEngine.AI.NavMeshAgent:Move (UnityEngine.Vector3)
PlayerController:UpdateMoving () (at Assets/Scrips/Controllers/PlayerController.cs:49)
PlayerController:Update () (at Assets/Scrips/Controllers/PlayerController.cs:72)

 

오류는 이렇게 뜨는데, 비주얼 문법 상에는 문제가 없다고 뜹니다 ㅠ

unityC#

Answer 2

0

Rookiss님의 프로필 이미지
Rookiss
Instructor

파란 영역 (Navigation Mesh)가 생성되지 않아 발생한 문제로 보이네요!

0

junogod0406님의 프로필 이미지
junogod0406
Questioner

방금 해결되었습니다.... Bake 한번 눌러주면 되네여...? 사실 왜 해결되었는지 모르겠습니다...

godjuno's profile image
godjuno

asked

Ask a question