- Game Instance
프로그램 시작 ~ 종료 내내 유지되는 오브젝트
리플리케이트되지 않음. 클라이언트와 서버 각각에 독립적으로 존재
레벨을 옮겨도 유지하고싶은 것들을 여기에 배치 (SaveGame 시스템 같은 것들)
- Game Mode
맵 로드시 가장 먼저 생기는 매니저 액터
서버에만 존재
멀티플레이어 게임에서 이미 만들어진 세션에 새로운 플레이어가 참여하면 GameMode가 폰 컨트롤러와 State를 만들어준다.
- Game State
Player State 배열을 갖는다.
게임 상태에 대한 정보 저장
서버와 클라이언트에 리플리케이트된다.
- Player State
특정 플레이어에 대한 정보 저장
서버와 클라이언트에 리플리케이트된다.
캐릭터, 컨트롤러, 폰
- Physics
Pawns은 Kinetic 액터이기 때문에 무한한 질량을 가진다.
dynamic interaction에서 interactor만 영향을 받게된다.
Pawn에게도 영향을 주려면 추가 로직이 필요하다. (HitResult 정보를 사용하기)
- Default Pawn
Character의 형제 클래스
Default Pawn : 스태틱 메시 컴포넌트, Sphere 콜리전, Floating Pawn Movement 컴포넌트
Movement가 리플리케이트 되지 않음
- Spectator Pawn
Default Pawn의 서브 클래스
콜리전 X, Static Mesh X, 투명 카메라만 존재하는 Pawn
- Character Movement Component
네트워크에서 레플리케이트 됨
다양한 Movement Mode 보유 (walking jumping falling flying swimming
physics Interaction : physics가 movement에 어떻게 영향을 줄 것인가
- Movement Capability
길찾기 관련 옵션 파라미터 (Non Player Controller의 경우)
캐릭터의 능력 (앉기, 점프, 수영하기) 활성화 여부
- Player Controller
Player Controller는 클라이언트에서 서버로 레플리케이트된다.
유저 Input과 일반적인 player pawn 관련 logic을 관리한다.
Input Latency를 최소화하기 위해 Pawn보다 먼저 Tick 된다.
- AI Controller
서버에만 존재한다.
- MassEntity System프레임워크
효율적으로 대량의 데이터를 처리하게 해줌
- Navigation
모바일 캐릭터에 다이나믹 NavMesh를 사용하는 것은 퍼포먼스 문제가 있다.
Pathfinding True 설정하고 AI 캐릭터에게 특정 장소로 이동하게 시키면 Navmesh를 사용해 길을 찾아서 이동한다.
- HUD
리플리케이트되지 않음
플레이어 컨트롤러가 HUD 액터를 스폰함
'언리얼 5 > 에픽 게임즈 공식 강의' 카테고리의 다른 글
Blueprint Communication (0) | 2023.02.22 |
---|---|
Programming 2 (0) | 2023.02.21 |
Enhanced Input Binding with Gameplay Tags C++ (0) | 2023.02.21 |
Geometry Script (0) | 2023.02.20 |
Engine Structure (0) | 2023.02.20 |