본문 바로가기

유니티

[Behavior Desinger] 02 . Overview

[Behavior Desinger]

[Behavior Desinger]

Behavior Desinger 는 행동 트리 구현 프로그램이다 .해당 에셋에 대한 도큐먼트를 참고 할 수 있다.

이 에셋을 활용하여 무엇을 할것이다 (?)

 

[UI]

=>1번 섹션 : 그래프 에리어이는 BT를 만드는 공간이다. 새 task를 생성하고 BT 안에 해당 task를 정렬 가능하다

=>2번 섹션 :  프로퍼티 판넬은 BT의 특정 프로퍼티를 조작하는 공간이다. task , 변수 , 파라미터등을 편집 가능하다

=>3번 섹션 : BT 작업 툴바이다 . BT를 선택하거나 , 추가/삭제가 가능하다 .

=>4번 섹션 :  디버그 툴바이다 .

 

[BT 생성]

=>시작하기에 앞서 Behavior Tree 컴포넌트를 추가해야 한다. 이는 BT의 매니저 처럼 동작한다.

그래프 에어리어에서 우클릭을 하여 "Add Behavior Tree"혹은 작업툴바의 +를 눌러 새 BT를 생성한다 . 

 

[Task 추가]

=>BT가 생겼다면 Task의 추가가 가능하다.그래프 에어리어에서 우클릭하여 추가하거나 , 프로퍼티 판넬 - Tasks에서 

해당 Task를 눌러 추가가 가능하다. Task가 추가되면 다음과 같이 보일 것이다 .

=>이때 같이 추가되는 Entry는 트리의 루트로서 작용한다. 이는 Entrt 트리의 유일한 기능이다.

해당 시퀀스는 자식이 없어 에러가 뜬 상태이다.

=>드래그를 하여 두 Task를 이어 줄 수 있다 . 딜리트 키 , 드레그를 통해 재배치 역시 가능하다 .

Behavior Designer는 깊이 우선 탐색 으로 Task를 실행한다.해당 순서는 위->아래/왼쪽->오른쪽이며

드레그를 통해 순서의 재배치가 가능하다.위의 경우 SequenceA, SelectorA, SequenceB, ActionA, ActionB, ActionC, SelectorB, ActionD, ActionE로 실행 될 것이다.

 

[Paramerter 제어]

=>원하는 노드를 선택후 프로퍼티 판넬의 Inspector를 제어 할 것이다.

여기서 테스크의 이름을 다시 정하고 , 해당 테스트가 즉시 되게 처리하고 , task에 대한 코멘트를 달 수 있다.

또한 해당 Task Class 가 포함하는 모든 public 변수들을 조작이 가능하다.(Behavior Desinger에서 생성한 변수 포함)

 

=>프로퍼티 판넬에는 Variables, Tasks, and Behavior 또한 존재한다.

Variables는 task사이에서 공유되는 변수를 만들 수 있다.

Tasks는 사용 가능한 Task의 목록을 보여주며 그래프 에어리어 에서 우클릭 한 것과 같다.

Behavior는 비헤비어 트리 컴포넌트의 인스펙터를 보여준다

 

[디버그 툴바]

  • Label 1: 오픈한 비헤비어 트리를 앞뒤로 탐색하는 버튼
  • Label 2: 씬,프로젝트에 있는 BT의 리스트 (프리팹 포함)
  • Label 3:  씬 내부에서 BT 컴포넌트가 추가된 게임 오브젝트
  • Label 4: Label 3에 의해 선택된 BT의 리스트
  • Label 5: 현재 BT가 참조하는 외부의 BT
  • Label 6: 현재 BT를 삭제한다
  • Label 7: 게임 오브젝트에 새 BT를 더한다.
  • Label 8: 다른 게임오브젝트를 선택하더라도 현재 BT의 활성화를 유지한다.
  • Label 9: 외부 BT 에셋에 Export 한다
  • Label 10: BT를 찾는 창을 켜준다
  • Label 11: 현재 BT의 스크린샷을 찍는다
  • Label 12Behavior Desinger의 Preference를 확인한다.

출처