inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해

10강 캐릭터 공격 구현 개선

ai의 공격 애니메이션 rpc를 어떻게 해야할지 모르겠습니다

270

IIN

작성한 질문수 2

0

characternonplayer의 공격 애니메이션 rpc를 어떻게 해야할지 모르겠습니다

h:

UFUNCTION(Server, Reliable)

void ServerAttack();

UFUNCTION(Client, Unreliable)

void ClientRPCAttack();

cpp:

void ServerAttack_Implementation()

{

ProcessComboCommand();

ClientRPCAttack();

}

void ClientRPCAttack_Implementation()

{

UAnimInstance* AnimInstance = GetMesh()->GetAnimInstance();

AnimInstance->StopAllMontages(0.0f);

AnimInstance->Montage_Play(ComboActionMontage);

}

플레이어가 아닌 액터들의 rpc는 어떤식으로 진행해야하나요?

unreal-engine 네트워크 언리얼-c++

답변 1

0

이득우

클라이언트-서버 구조에서 AI 캐릭터는 서버의 전유물입니다. 왜냐하면 클라이언트가 가질 수 있는 것은 오로지 자신이 플레이하는 플레이어에 대한 정보 뿐입니다. Owner를 플레이어 컨트롤러로 설정한 액터만이 서버에 전송할 수 있습니다.
따라서 클라이언트에서 플레이어가 아닌 NPC는 서버로 전송이 불가능합니다. 대신 마치 플레이어의 악세사리나 무기와 같은 설정으로 오너를 설정하면 가능할 수는 있지만, 이는 기획에 따라서 의미가 있을 수도 있고, 없을 수도 있습니다.
범용 NPC라면 클라이언트는 철저히 무시되고, 서버에서 계산하고 플레이어에게 알려주는 것이 맞다고 보여집니다. 그런데 플레이어에 귀속되어 플레이어의 입력에 따라 행동하는 펫이라면 클라이언트에서 서버로 명령을 보내고 서버가 브로드캐스팅을 할 수도 있을겁니다. 이 경우에 펫에 관련된 명령을 보내는 액터의 Owner는 플레이어 컨트롤러가 되어야 서버로 RPC를 보낼 수가 있습니다.

5.6버전 Networking Insights 실행안됨 문제에 관하여

0

30

1

8강 중간, 분수대의 SetOwner 에 대해 궁금합니다.

0

77

2

플레이어(Actor) 로 (리슨)서버에서 생성 되나요?

0

101

2

2강) HandleBeginPlay 의 역활이 궁금합니다.

-1

72

2

3강 중간, 모드 로그로 찍을 시 스탠드얼론이 안찍힙니다.

1

76

2

CompressedFlag 질문

0

58

2

10강까지 머리 위 체력바가 표시가 안됩니다.

0

111

3

10강까지 머리 위 체력바가 표시가 안됩니다.

0

95

2

16:44 부분에서 질문이 있습니다.

0

104

2

12:50 NetMulticast RPC 커넥션 관려하여 질문이 있습니다.

0

122

2

github 3-5 파트 프로젝트에서 컴파일 에러가 발생합니다.

0

116

3

언리얼 인사이트 5.6버전 networking insights 가 뜨지 않습니다.

0

164

3

Insight 사용이 안되어서 문의 드립니다!

0

131

2

하위 레벨...?? High Level 말씀하신거죠..??

0

147

1

CompressedFlags를 이용한 InputThrottle, InputSteering 전달 방법 질문

0

193

1

조건식 프로퍼티 리플리케이션 질문

0

145

2

ArenaBattle에 Log추가하는 곳에 에러가 나타나 질문 드립니다.

0

161

2

7강에서 DORM_Initial 안됨

0

128

3

안녕하세요 강의 내용 정리에 관련해서 질문있어요

0

131

2

캐릭터 클래스의 mesh 관련

0

133

2

3파트 6강 분수대 로테이트에 문제가 생겼습니다.

0

131

3

클라이언트의 오너십 설정에 대해서 궁금합니다.

0

202

3

프로퍼티 리플리케이트 동기화 보장 개념.

0

225

2

결국엔 액터 기본함수들은 어디든 똑같이 일단 실행되는건가요?

0

94

2