MonsterSystem

열수철·2024년 12월 10일

1. 기본 속성 (Attributes)

내용

몬스터의 고유한 성격과 능력을 정의하는 핵심 데이터입니다.
전투 능력, 이동 방식, 플레이어와의 상호작용에 영향을 미칩니다.

Main
HP (체력): 몬스터의 생명력. 0이 되면 사망.
Attack (공격력): 몬스터가 가하는 데미지 값.
Defense (방어력): 받는 데미지를 줄이는 방어 능력.
Speed (속도): 이동 속도와 행동 주기를 결정.
주로 사용되는 기본 능력치

Special
상태 이상 저항, 치명타 확률, 치명타 피해 등 특별한 능력치.

추가 고려 사항:
Elemental Affinity (속성 상성): 불, 물, 전기 등 속성에 따른 강·약점 관계.
(Ex - 원신, 포켓몬)
AI Level: 인공지능 난이도 및 복잡성. (Ex - 뱀서)


2. 행동 상태 (Action State)

내용

몬스터가 특정 상황에서 취할 수 있는 행동 상태를 정의합니다.
이는 애니메이션과 밀접하게 연결되어 자연스러운 동작을 표현합니다.

Primary Action States
Idle (대기): 기본 상태, 아무 행동 없음.
Patrolling (순찰): 특정 경로를 따라 이동.
Chasing (추적): 플레이어나 목표를 쫓음.
Attacking (공격): 대상에게 공격을 가함.
Damaged (피격): 피해를 입었을 때의 반응 상태.
Dying (사망): 체력이 0이 되어 쓰러지는 상태.
Special Skill (특수 스킬): 몬스터 고유의 기술 사용 상태.


3. 애니메이션 트리 (Animation Tree)

내용 > 행동 상태와 애니메이션을 연결하여 몬스터의 동작을 자연스럽게 표현합니다.

Components
Blend Tree: 이동 속도 등 파라미터에 따라 걷기/뛰기 애니메이션을 부드럽게 전환.
State Machine: Idle → Attack → Damaged 등 상태 전환 관리.
Transitions (전이 조건): HP 감소 시 Damaged 상태로 전환 등의 조건 지정.


4. AI (인공지능)

내용

몬스터가 게임 환경과 플레이어에 대응하는 방식을 정의합니다.

Components
Behavior Tree (행동 트리): 순찰, 추적, 공격 등을 단계적으로 수행하는 복잡한 로직 구현.
Finite State Machine (유한 상태 머신): 단순한 상태 전환 규칙에 기반한 AI.
Decision Making (의사 결정): 상황별 행동 선택. (행동 강령)


5. 환경 상호작용 (Environment Interaction)

내용

몬스터가 게임 월드의 오브젝트와 어떻게 상호작용하는지 정의합니다.

Components
Collision Detection (충돌 감지): 벽, 장애물, 플레이어와의 충돌 처리.
NavMesh: 경로 탐색을 통해 장애물을 회피하며 이동.
Trigger Zones: 특정 구역 진입 시 행동 변경 (예: 공격 모드 활성화).


6. 특수 효과 및 사운드 (VFX & Sound)

내용

플레이어에게 시각적, 청각적 피드백을 제공하여 몬스터의 존재감을 강화합니다.

Components
Hit Effect (피격 효과): 몬스터 피격 시 시각적 효과.
Skill Effects: 특수 스킬 사용 시 발생하는 화려한 VFX.
Sound Effects: 몬스터의 공격, 이동, 사망 사운드를 통한 몰입도 상승.


7. 데이터 관리 및 확장성 (Data Management & Scalability)

내용 > 몬스터 데이터를 효율적으로 관리하고, 쉽게 확장할 수 있는 구조를 갖추는 것이 중요합니다.

Components
ScriptableObject: 속성과 행동을 데이터화해 재사용 및 관리 용이.
Prefab: 몬스터 기본 형태를 프리팹으로 제작, 필요시 인스턴스화.
Modular Components: 각 기능을 컴포넌트 단위로 설계해 재사용성과 확장성 확보.


8. 네트워크 동기화 (멀티플레이 환경)

내용

멀티플레이 게임에서는 모든 클라이언트 사이에서 몬스터 상태를 일관성 있게 유지해야 합니다.

Components
Position Sync: 몬스터 위치/이동 정보 동기화.
Action Sync: 공격, 특수 스킬 상태 공유.
Lag Compensation: 네트워크 지연을 보정하여 공정한 플레이 경험 제공.


9. 모델링, 텍스처링 & 리깅 (Modeling, Texturing & Rigging)

내용

몬스터의 외형을 정의하고, 이를 움직일 수 있도록 뼈대를 구성하는 작업입니다. 시각적인 완성도와 애니메이션 품질을 결정하는 중요한 단계입니다.

Components

  • 3D Modeling: 몬스터의 형태
    • 스타일(리얼리즘, 카툰)
    • 폴리곤 수
    • 디테일 정도 등등을 고려
  • 텍스처 (Texturing): 표면에 컬러, 패턴, 재질감을 입혀 생동감과 개성을 표현
    • Mapping (Normal, rougness 등등..) --> 풍부한 표현
  • 리깅 (Rigging):
    • '뼈대'(Bones)를 삽입해 애니메이션 가능하도록 하는 과정
    • 스키닝(Skinning)을 통해 자연스럽고 유연한 동작 구현. (Blending)

추가 고려사항:

  • LOD(레벨 오브 디테일): 거리나 상황에 따른 모델 디테일을 축소
    --> 최적화
  • 애니메이션 리소스 관리: 다양한 애니메이션 클립 관리
profile
그래픽스, 수학, 물리, 게임 만세

0개의 댓글