본문 바로가기

State Machine3

[유니티 활용] 비주얼 스크립팅 - 적 인공지능 (Enemy AI) 안녕하세요. 오늘은 유니티의 비주얼 스크립팅을 이용해 적의 인공지능을 만드는 방법에 대해 알아보도록 하겠습니다. 우선 적은 다음과 같은 행동 패턴을 갖도록 정의하겠습니다. 1. 플레이어를 발견하지 않은 상태에서는 생성된 지점에서 특정 반경안을 주기적으로 돌아다님 2. 플레이어를 발견하면 따라감 3. 플레이어와 특정 거리 이상 벌어지면 다시 생성된 지점으로 돌아가 1 번 상태가 됨 ▶ 사용 컴포넌트 적 객체의 이동과 충돌체크를 위해 다음과 같은 컴포넌트를 사용합니다. Nav Mesh Agent (적 캐릭터의 이동에 사용) Rigidbody & SphereCollider (플레이어 캐릭터 감지에 사용) State Machine (비주얼 스크립팅 작성에 사용) ▶ Navigation 설정 Navigation .. 2023. 5. 9.
[유니티 활용] 비주얼 스크립팅 - State Machine 이번 글에서는 유니티 비주얼 스크립팅에서 State Machine 을 사용하는 방법에 대해 알아보도록 하겠습니다. 이 예제에서는 Idle 상태일 때는 Cube의 scale 값을 조정해 커졌다 작아지는 것을 반복하고 키보드의 화살표키를 입력하면 해당 방향으로 Cube 가 이동하도록 할 것입니다. ▶ State Machine 추가 우선 State Machine 의 추가는 다음과 같이 Add Component 에서 추가할 수 있습니다. 추가된 State Machine 컴포넌트에서 아래와 같이 [New] 를 클릭하고 asset 을 만들어 줍니다. 이름은 임의로 정하시면 됩니다. 저는 CubeSM 으로 하였습니다. 위의 방법대로 추가한 후에 Edit Graph 를 클릭하면 다음과 같이 State Graph 창이 .. 2023. 5. 2.
[유니티 활용] StateMachine 을 활용한 3D 몬스터 AI 구현 아래에 링크한 이전 글에서는 유니티에서 제공하는 NavMeshAgent 를 이용해 몬스터가 플레이어를 따라다니도록 했습니다. 이번 글에서는 한단계 더 나아가서 처음엔 가만히 있다가 플레이어가 근처에 오면 따라가고 공격 범위안에 들어오면 공격을 하고 다시 멀어지면 다시 따라가다가 더 멀어지면 추적을 포기하고 그 자리에 가만히 있는 몬스터의 AI 를 만들어 보도록 하겠습니다. [유니티 활용] NavMeshAgent 사용법 (Simple Monster AI) NavMeshAgent 는 유니티에서 제공하는 네비게이션 시스템입니다. 이 기능을 이용해 몬스터 객체가 플레이어 캐릭터를 자동으로 따라다니 게 하는 방법에 대해 알아보도록 하겠습니다. 플레이어 캐 ugames.tistory.com * 이전 포스팅 하단에서.. 2023. 1. 12.