1. 범위

2. 핵심 구성요소

  1. GameReadyViewModel
  2. GameViewModel
  3. MultiplayerNetworkIO
  4. ConnectionSessionManaging (+ P2P/WS 구현)

3. 전체 플로우 요약

3-1. GameReady 단계

  1. 내 Ready를 1초 주기로 송신
  2. 상대 Ready 수신 시 isPeerReady = true
  3. Host가 NetworkGameStartSyncDTO(startAt) 1회 전송
  4. 상대는 onInputReceived에서 startAt decode 후 동일 시각에 게임 시작

3-2. Game 단계

  1. GameViewModel.start()에서 multiplayerIO.bind(peerId:)
  2. GameScene.update -> GameplayManager.update -> onDidUpdate(deltaTime)에서 tick() 호출
  3. 송신:
  4. 수신: