inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

리슨 서버 시 위젯 부착 관련

198

차태관

작성한 질문수 11

0

//CharacterBase.h

if (!IsLocallyControlled())
{
	UE_LOG(LogTemp, Log, TEXT("LocallyControlled"));

	InfoBar = CreateDefaultSubobject<UWidgetComponent>(TEXT("Widget"));
	InfoBar->SetupAttachment(GetMesh());
	InfoBar->SetRelativeLocation(FVector(0.0f, 0.0f, 210.0f));

	static ConstructorHelpers::FClassFinder<UUserWidget> InfoBarWidgetRef(TEXT("/Script/UMGEditor.WidgetBlueprint'/Game/ProjectA/Blueprints/UI/WBP_InfoBar.WBP_InfoBar_C'"));
	if (InfoBarWidgetRef.Class)
	{
		InfoBar->SetWidgetClass(InfoBarWidgetRef.Class);
		InfoBar->SetWidgetSpace(EWidgetSpace::Screen);
		InfoBar->SetDrawSize(FVector2D(300.0f, 75.0f));
		InfoBar->SetCollisionEnabled(ECollisionEnabled::NoCollision);
	}

}

안녕하세요 교수님, 리슨 서버로 동작 시킬 때 제가 만든 InfoBar 를 로컬의 캐릭터에는 부착하지 않고 로컬이 바라보는 프록시들에게만 부착을 하고 싶습니다. 그래서 제 생각에는 로컬로 컨트롤 되고 있다면 위젯을 생성하지 않는 방식으로 해결을 하려 했는데, 그럼에도 InfoBar 가 생성되어 부착됩니다.

어떻게 하면 제가 의도한 대로 로컬에서는 프록시의 InfoBar 만 보이게 설계 할 수 있을까요?

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

답변 1

0

이득우

음 보내주신 코드는 생성자 코드로 보여지는데, 파트1 강의에서 설명드렸지만 생성자 코드는 엔진이 초기화될 때 실행됩니다. 따라서 이 때 IsLocallyControlled 함수의 사용은 큰 의미가 없습니다.

해당 함수는 멀티플레이 설정이 완료된 이후의 런타임에서 실행해주시는 것이 좋습니다.
가장 간단히 생각하면 BeginPlay가 있겠지요.
런타임에서는 IsLocallyControlled 함수를 실행하고 부착된 위젯을 비활성화하는 형태로 옵션을 지정하면 되지 않을까 싶습니다

0

차태관

우선 공통적으로 atach 해 준 후 beginplay에서 destroycomponent 하니 잘 동작합니다
! 감사합니다 !


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