UDN
Search public documentation:

ReplicationGlossaryKR
English Translation
日本語訳
中国翻译

Interested in the Unreal Engine?
Visit the Unreal Technology site.

Looking for jobs and company info?
Check out the Epic games site.

Questions about support via UDN?
Contact the UDN Staff

UE3 홈 > 네트워킹과 리플리케이션 > 리플리케이션 용어집

리플리케이션 용어집


문서 변경내역: James Tan 작성. 홍성진 번역.

액터 롤


롤(role, 역할)이란 서버 및/또는 클라이언트에서 액터가 어떻게 처리되는지를 정의합니다.
  • ROLE_None - 이 액터에는 롤이 없습니다.
  • ROLE_SimulatedProxy - 시뮬레이트 액터는 임시적인 것으로, 클라이언트 상의 기본 피직스를 시뮬레이트하는 프록시를 모방합니다. 시뮬레이트 액터는 시뮬레이트 스크립트 함수만 실행시킬 수 있으며, 시뮬레이트 상태로 들어갑니다.
  • ROLE_AutonomousProxy - 자율 액터에는 클라이언트 측에 이동을 처리하기 위한 로직이 내장되어 있습니다. 자율 액터는 모든 스크립트 함수의 실행 및 모든 상태 진입이 가능합니다.
  • ROLE_Authority - 이 액터에 대한 절대적이고 강압적인 제어권을 갖는, 이 액터를 소유한 런타임입니다.

월드인포 넷 모드


NetModes 는 월드 인포 네트워크 상태를 정의합니다.
  • NM_Standalone - 월드 인포가 싱글 플레이어 게임으로 실행중입니다.
  • NM_DedicatedServer - 월드 인포가 데디케이티드 서버로 실행중입니다.
  • NM_ListenServer - 월드 인포가 하나 이상의 로컬 클라이언트를 가진 서버로 실행중입니다.
  • NM_Client - 월드 인포가 클라이언트로 실행중입니다.

변수 프로퍼티 플랙


  • RepNotify - 이 변수가 리플리케이션을 통해 업데이트되면, 'VarName' 함수 파라미터가 변수 이름으로 설정된 상태로 ReplicatedEvent 가 호출됩니다.
    • 예제 - var() RepNotify int ClassIndex;

이벤트/함수 프로퍼티 플랙


  • Reliable - 이 이벤트나 함수는 항상 순서대로 클라이언트/서버에 발신/수신됩니다.
    • 예제 - reliable server function MyReliableServerFunction();
  • Unreliable - 이 이벤트나 함수는 클라이언트/서버에 발신/수신 가능은 합니다. 대역폭이 제한되면 버립니다.
    • 예제 - unreliable server function MyUnreliableFunction();
  • Server - 이 이벤트나 함수가 클라이언트에서 호출되면, 서버상에서 실행됩니다. 서버측 액터는 이 이벤트나 함수를 직접 호출하기 보다는, 실제 로직을 수행하는 이벤트나 함수를 호출해야 합니다. 고로 서버는 클라이언트와 서버 사이 통신에 있어 다리 역할을 해야 합니다.
    • 예제 - server function MyServerFunction();
  • Client - 이 이벤트나 함수가 서버에서 호출되면, 클라이언트상에서 실행됩니다. 서버 이벤트나 함수와는 달리, 이 이벤트나 함수는 실제 로직을 포함해도 됩니다.
    • 예제 - client function MyClientFunction();
  • Simulated - 원격 클라이언트에 ROLE_SimulatedProxy 거나 ROLE_AutonomousProxy 인 액터는 이 이벤트나 함수를 실행할 수 있습니다.
    • 예제 - simulated function MySimulatedFunction();

상태 프로퍼티 플랙


  • Simulated - 원격 클라이언트에 ROLE_SimulatedProxy 거나 ROLE_AutonomousProxy 인 액터는 이 상태로 들어갈 수 있습니다.
    • 예제 - simulated state MySimulatedState { }

리플리케이션 변수


이 액터 내 변수를 통해 클라이언트 및/또는 서버상에서 리플리케이션이 어찌 처리되는가를 제어할 수 있습니다.

Actor

  • NetPriority - 언리얼 엔진 3 는 모든 액터 인스턴스에게 그 우선권에 따라 대역폭 일부를 할당하는 로드 밸런싱 기술을 사용합니다. 일부 액터는 리플리케이션 업데이트가 좀 더 필요할 수가 있으므로, 이 값을 더 높게 잡아야 합니다. 예:
    • Actor = 1.0
    • Pawns = 2.0
    • PlayerController = 3.0
    • Projectiles = 2.5
    • Inventory = 1.4
    • Vehicle = 3.0
  • Role - 런타임에서 액터에 대한 롤입니다.
  • RemoteRole - 원격 런타임에서 액터에 대한 롤입니다.
  • bNetDirty - 리플리케이트된 프로퍼티가 변경되면 참입니다.
  • bNetInitial - 모든 리플리케이트된 프로퍼티의 초기 리플리케이션이 완료되기 전까지는 참입니다.
  • bNetOwner - 탑 오너가 현재 클라이언트에 의해 소유된 PlayerController 일 경우 참입니다.
  • bAlwaysRelevant - 항상 네트워크에 관련되어 있습니다.
  • bGameRelevant - 항상 게임에 관련되어 있습니다.
  • bReplicateInstigator - 인스티게이터 변수를 클라이언트에 리플리케이트합니다.
  • bReplicateMovement - 이동 및/또는 위치 관련 프로퍼티를 리플리케이트합니다.
  • bSkipActorPropertyReplication - 이 액터에 대한 액터 클래스 변수는 리플리케이트하지 않습니다.
  • bUpdateSimulatedPosition - 시뮬레이트 프록시에 대한 초기화 이후 속도 및/또는 위치를 업데이트합니다.
  • bTearOff - 이 액터는 더이상 새 클라이언트로 리플리케이트되지 않으며, 리플리케이트되고 있던 클라이언트상에서 그 롤을 ROLE_Authority 로 설정합니다.
  • bOnlyDirtyReplication - bNetDirty 가 참일 때만 이 액터를 리플리케이트합니다. bAlwaysRelevant 가 참일 때만 사용됩니다.
  • NetUpdateFrequency - 이 액터를 초당 몇 번이나 리플리케이트할 것인지, NetUpdateTime 을 결정하는 데 사용됩니다.
  • bForceNetUpdate - 이 액터를 강제로 즉시 리플리케이트되게 하려거든, 이 옵션을 참으로 설정하십시오.

WorldInfo

  • MinNetVersion - 네트워크 호환에 필요한 최소 엔진 버전입니다. 클라이언트가 좀 더 최신 버전 서버로 연결되도록 하는데 쓸 수 있습니다. 클라이언트에는 영향 없이 서버측에만 업데이트될 때 좋습니다.
  • NetMode - 이 월드 인포에 대한 네트워크 모드입니다. 실행중인 런타임 종류를 결정하는 데 사용됩니다.
  • ReplicationViewers - 월드 내 모든 뷰어의 동적인 배열로, 연관성 검사를 해 줘야 하는 것입니다.

GameInfo

  • bHasNetworkError - 치명적인 네트워크 에러로 인해 서버가 옮길 수 있는지를 기록합니다.
  • AdjustedNetSpeed - 현재 조절된 넷 속도입니다. 리슨 서버용 넷 속도를 동적으로 관리하는 데 사용합니다.
  • LastNetSpeedUpdateTime - 지난 번 (클라이언트가 들어오거나 나가서) 서버에 대한 넷 속도가 업데이트된 시간입니다.
  • TotalNetBandwidth - 리슨 서버에 가능한 총 대역폭으로, 넷 연결에 걸쳐 동적으로 분할됩니다. (환경설정 변수)
  • MinDynamicBandwidth - 연결 당 동적으로 설정되는 최소 대역폭입니다. (환경설정 변수)
  • MaxDynamicBandwidth - 연결 당 동적으로 설정되는 최대 대역폭입니다. (환경설정 변수)

상수 리플리케이션 변수


여기 있는 것들은 리플리케이션 상태를 감지하는 데 사용할 수 있는 액터 내 상수 변수입니다. 이 상수 변수는 클라이언트 및/또는 서버상에서 리플리케이션 처리방법을 제어하기 위해 액터의 default properties 안에 설정할 수 있습니다.
  • bNetTemporary - 네트워크 플레이에서 시뮬레이션을 떼어냅니다.
  • bOnlyRelevantToOwner - 이 액터는 그 오너에게만 연관됩니다.
  • NetTag - 이 액터에 대한 내부 넷 태그입니다.
  • NetUpdateTime - 다음 번 액터 리플리케이션 시간입니다.
    • SetNetUpdateTime(float NewUpdateTime) - 이 함수를 사용하여 다음번 액터 리플리케이션 시간을 설정할 수 있습니다.
  • LastNetUpdateTime - 액터가 리플리케이션으로 지난 번 업데이트된 시간입니다. 이는 WorldInfo.TimeSeconds 에 관계되지 않습니다.
  • bPendingNetUpdate - 이 액터는 LastNetUpdateTime 시간에 액터를 리플리케이트할 수 없었던 클라이언트로 인해, 전체 넷 업데이트를 기다리고 있습니다.

리플리케이션 이벤트/함수


  • simulated event ReplicatedEvent(name VarName) - 이 이벤트는 RepNotify 프로퍼티 플랙 "RepNotify" 를 가진 변수가 리플리케이트되면 호출됩니다.
  • native final function SetForcedInitialReplicatedProperty(Property PropToReplicate, bool bAdd) - 클라이언트가 이미 서버와 같은 값을 가졌다고 코드가 생각하든 말든, 이 액터에 bNetInitial 이 true 로 설정된 동안에는 항상 리플리케이트될 프로퍼티 목록에서 프로퍼티를 제거하거나 추가합니다. 레벨 디자이너가 레벨에 액터를 놓고 리플리케이트된 변수를 디폴트 값에서 변경합니다. 그러면 런타임에 변수는 디폴트로 다시 변경되나 초기 리플리케이션은 클래스 디폴트에 따르기에 리플리케이트되지 않습니다. 그런 경우에 대한 우회법으로 사용됩니다. bStatic 이나 bNoDelete 가 참으로 설정된 액터에만 사용됩니다. 이미 소유중인 클래스의 리플리케이션 블록에 있는 프로퍼티만 지정 가능합니다.
  • event TornOff() - 이 이벤트는 액터가 네트워크에서 떨어져 나갔을 때, bTornOff 가 참일 때만 호출됩니다
  • event ForceNetRelevant() - 이 이벤트는 네이티브 코드에서 이 액터를 강제로 연관되게 하고자 할 때 호출됩니다. 언리얼스크립트에서 이 이벤트를 호출해도 똑같은 작업을 할 수 있습니다.
  • final native function SetNetUpdateTime(float NewUpdateTime) - 이 함수는 액터의 다음 번 리플리케이션 시간을 설정하는 데 사용할 수 있습니다.