ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 시즌 3호 BT랑 친해지기(미완)
    TIL 2023. 11. 13. 23:20
    반응형

    BT 골자 스크립트 진행

    1#BTBehaviour.cs

    노드 상태와, 노드 타입 선언

    상태 반환 메서드
    bool IsTerminated()
    노드 상태 : 성공 혹은 실패인 경우 참을 반환함

    bool IsRunning()
    노드 상태 : 실행중인 경우 참을 반환함


    1##일반 메서드

    세팅&반환 메서드들

    부모 노드 / 노드 상태 / 노드 타입 / 노드 인덱스(복합노드 한정)


    2##virtual (재정의 가능)메서드

    Reset()
    =>스테이터스 상태를 기본으로 돌림

    Initialize() / Terminate() 
    =>각각 노드 초기화(시작 시) 및 종료 시 기본적으로 호출되는 메서드

    Status Update() [###기본 업데이트가 아니다###]
    =>기본적으로 성공 상태를 반환함

    ★Status Tick()
    =>노드를 실행하고, 상태를 업데이트하고, 필요한 경우 초기화 및 종료를 수행(사실상 다함)
    기본 상태

    실제 내용 (순서대로 실행)
    현재 상태 기본값이라면 : 초기화 실행 및 노드 상태 실행중으로 변경

    중간에 Update()로 현재 상태 업데이트(기본값 성공)


    사실상 위에서 노드 기본값인 경우 실행중으로 변경하기 때문에, 거의 종료임
    현재 상태 작동중이 아니라면 : 노드 종료시 메서드 Terminate();실행

    최종적으로 나온 상태를 반환함

    ㅡㅡㅡ


    2#BTComposite.cs : 복합노드의 골자 [BTSelector / BTSquence]
    복합노드? : 자식 노드가 있는 노드

    기본적으로 리스트에 자식 노드들을 저장함
    생성 시 자식 노드 리스트를 초기화 함


    1##일반 메서드

    BTBehaviour GetChild(int index)
    return listChild[index]
    =>복합 노드 특정 인덱스의 자식 노드를 반환함

    GetChildCount()
    =>복합 노드가 가진 자식 노드 개수를 반환함


    2##override 메서드(덮어쓰기)
    override void Reset()

    반응형
Designed by Tistory.