multiplayer quality budget

멀티플레이 품질은 복제 예산과 체감 보정 검토

대역폭만 줄이면 반응성이 무너지고, 예측만 늘리면 보정이 튑니다. 연결부터 액터 채널까지 같은 기준으로 좁힙니다.

session

연결 수립

OnlineSubsystem과 PlayerController가 안정적으로 소유 관계를 만듭니다.

interest

관련성 필터

거리, owner-only, dormancy로 필요한 액터만 채널을 유지합니다.

rate

전송 빈도

NetUpdateFrequency와 조건부 복제로 반복 상태 비용을 낮춥니다.

feel

체감 보정

CharacterMovement 예측과 smoothing이 입력 지연을 가립니다.

verify

재측정

같은 맵과 같은 지연 조건에서 패킷, 보정, 권한 로그를 비교합니다.

NetDriver

연결 품질

핑과 패킷 손실이 먼저 흔들리면 게임 로직보다 네트워크 조건 재현부터 고정합니다.

Actor Channel

복제량

Relevant Actor 수, 속성 크기, RPC 빈도를 줄여 초당 전송량을 낮춥니다.

Movement

보정 빈도

예측 오차가 잦으면 서버 위치, 이동 입력, smoothing 값을 함께 봅니다.

Authority

치트 방어

클라이언트가 보낸 값은 제안일 뿐입니다. 서버 RPC 초입에서 범위를 검증합니다.

bandwidth high

대역폭이 먼저 높다

변수 수, 배열 크기, Reliable RPC 반복, NetUpdateFrequency를 줄입니다.

rubber band

보정 튐이 보인다

입력 예측과 서버 권위 위치가 같은 이동 규칙을 쓰는지 비교합니다.

안정화 루프

개선 뒤 다시 잰다

지연, 손실, 플레이 인원을 고정해야 최적화 효과와 부작용을 분리할 수 있습니다.