기말고사 설명
- 6월 20일 수업전까지 팀별 작업물 제출, 발표.
- 15주차 발표의 피드백 반영하여 시스템/ 콘텐츠 기획서 작성.
- 15주차 팀 발표 결과물은 평가 안함.
- 6월 25일 일요일 24시 개인 작업물 제출.
강의 중간평가 피드백
인공지능 설계하기
- 인공지능은 눈에 보이기도 하고, 눈에 보이지 않기도 한다.
- 날씨, 환경도 인공지능에 속한다.
- 자신 스스로 컨트롤을 해서 돌아가는 것들.
- 만들어내는 시스템 중에 자동적으로 스케쥴링을 하며 돌아가는 모든 것이 인공지능.
- 정해준 스케쥴에 따라 움직인다.
- 유저가 조건을 달성하면 조건에 맞게 움직인다.
- GTA의 경우 범죄 시스템의 단계에 따라 주위 환경이 변화함.
게임의 인공지능과 일반 인공지능의 차이
게임의 인공지능
- 유저가 게임을 잘 할 수 있게 도와주어야 한다.
- 유저가 승리감을 느낄 수 있을 만큼 강해야 한다.
- 유저가 졌을 때 도전 정신을 불러일으켜야 한다.
- "결국 내가 이겼다"는 성취감을 주도록 디자인 해야 한다.
- 알파고와 같은 존재 X
FSM (Finite State Machine, 유한 상태 기계)
상태를 관리하는 시스템.
패턴에 맞는 행동을 보여주는 기법. 특정 상황이 되면 상태를 변경한다.
시작 -> 순찰(상태) -> 적 발견(조건) -> 사격 -> HP 20퍼 이하(조건) -> 후퇴(전이) -> HP 0%(조건) -> 죽음
객체는 동시에 하나의 상태만 가질 수 있다. 조건을 만족하면 상태가 전이된다.
조금 더 나은 FSM 사례
행동 선택에 확률을 도입하여 의외의 행동을 하게 만든다.
- 퍼지 (Fuzzy) : 혼란한 상태
ex : 80% 확률로 HP 20% 이하
FSM 제작 실습
BT (Behavior Tree)
행동(Behavior)을 트리(Tree)구조로 만든 것. 행동을 논리적으로 표현한다.
BT로 만들어 주는 것이 좋다.
BT의 경우 수행 순서가 중요하다. 왼쪽, 아래 먼저 수행.
BT의 5가지 요소
- root : 시작 지점
- selector : 선택 (하위 노드 중에서 하나만 실행)
- sequence : 순차 실행 (하위 노드를 순서대로 실행)
- decorator : 조건에 맞으면 하위 노드 실행
- action : 수행
'대학생활 > 수업' 카테고리의 다른 글
게임알고리즘 9주차 - Binary Search Tree (0) | 2023.05.17 |
---|---|
게임프로그래밍고급 11주차 - Compute Shader (0) | 2023.05.16 |
게임그래픽프로그래밍 10주차 - 도형 그리기와 칠하기 (0) | 2023.05.15 |
게임네트워크프로그래밍 10주차 - 턴 방식 게임, 입력 동기화, 객체 직렬화 (0) | 2023.05.15 |
게임레벨디자인기초 9주차 - 엑셀 사용 기초 (0) | 2023.05.11 |