작성
·
420
1
제가 이해한 방식인데요. 파란색으로 표시한 글이 올바르게 이해한게 맞는 건가요??
답변 1
1
소스 코드를 보시면 더 확실하게 이해할 수 있습니다.
네트웍이 없는 스탠드얼론 클라이언트인 경우 : true
네트웍 모드가 클라이언트이고 로컬 역할이 오토노머스 프록시인 경우 : true
원격 역할이 오토노머스 프록시가 아니고, 로컬 역할이 오쏘리티(서버)인 경우 : true
bool AController::IsLocalController() const
{
const ENetMode NetMode = GetNetMode();
if (NetMode == NM_Standalone)
{
// Not networked.
return true;
}
if (NetMode == NM_Client && GetLocalRole() == ROLE_AutonomousProxy)
{
// Networked client in control.
return true;
}
if (GetRemoteRole() != ROLE_AutonomousProxy && GetLocalRole() == ROLE_Authority)
{
// Local authority in control.
return true;
}
return false;
}
아하.... 결국엔 본문의 로직에선,
서버에 있는 PlayerController들 일 것이기 때문에 로컬은 Authority일 거고...,
원격은 클라이언트용이라면 각각 주인이 있는 Autonomus일 것이기 때문에 false가 반환 된다고 봐야겠군요...
감사합니다. 10장부터 너무 어려워져서 하루 종일 한 강의만 봤네요....