2026년 10월 8일 휴일을 위해 달려가기 위해서 VOD 강의와 숫자 야구 게임 과제를 하는중이다.
VOD 강의에서 본 것
속성 복제를 더 깊게 본다. RPC와 속성 복제 모두 “얼마나 자주 네트워크를 쓰는지”에 이 값이 걸린다.
NetUpdateFrequency
- Actor 복제 빈도의 최대치
- 1초에 복제를 몇 번 시도할지
- 기본값 100 → 이론상 서버는 0.01초마다 한 번 시도
최대치일 뿐, 그 간격을 보장하지 않는다.
- 실제 복제는 서버 Tick Rate와 서버 성능에 맞춰 줄어든다
- 서버가 100번을 못 돌리면, 그 성능만큼만 복제된다
- 그래픽을 그리지 않는 데디케이티드 서버가 같은 머신에서 더 자주 복제할 수 있다
기본값

움직이는 폰·컨트롤러는 자주, 킬 수·남은 시간처럼 천천히 바뀌는 상태는 드물게 보낸다.
부하를 줄이는 두 방법
서버 위치와 클라이언트 위치가 맞아야 할 때.
- 매 틱 위치 복제. 정확하지만 패킷이 많다.
- 처음 위치와 속도만 보내고, 클라이언트가 예측. 이번 실습은 이쪽.
빈도를 낮춘 뒤, 받은 값 사이를 보간해서 뚝뚝 끊기지 않게 한다.
DXBox에서 하는 일:
- 생성자에서
NetUpdateFrequency를 낮춘다
- 서버 위치·속도를 복제한다
- 클라이언트는 마지막 수신 위치에서 속도만큼 진행하며 사이를 보간한다
노션 코드 토글은 펼쳐지지 않아 DXBox.h / DXBox.cpp 원문은 여기 넣지 않았다.
앞 강의와 연결

100으로 둔다고 100번 도착하는 것이 아니다. 자주 안 바뀌는 Actor는 값을 내리고, 움직임은 예측·보간으로 메운다.
오늘 정리
- 100은 상한이다. 서버가 느리면 그보다 적다
- Pawn 100, GameState 10, PlayerState 1이 기본 감각이다
- 위치를 매 틱 보내지 말고, 위치+속도로 클라이언트가 이어 가게 한다