Exemplo n.º 1
0
 /// <summary>
 /// 相当于俩秒更新一次界面状态,在俩秒时间内,都添加到bufferStats.Current()中
 /// </summary>
 /// <param name="time"></param>
 public void UpdateTime(float time)
 {
     timerAcc += time;
     if (timerAcc >= BUFFER_LIFETIME)
     {
         bufferStats.MoveNext();
         bufferStats.Current().Clear();
         timerAcc = 0f;
     }
 }
Exemplo n.º 2
0
 /// <summary>
 /// 对刚体body的位置和旋转数据的一个同步校验
 /// </summary>
 /// <param name="tick"></param>
 private void SendInfoChecksum(int tick)
 {
     Debug.Log("SendInfoChecksum");
     if (replayMode != ReplayMode.LOAD_REPLAY)
     {
         SyncedInfo syncedInfo = bufferSyncedInfo.Current();
         syncedInfo.playerId = localPlayer.ID;
         syncedInfo.tick     = tick;
         syncedInfo.checksum = GetChecksumForSyncedInfo();
         bufferSyncedInfo.MoveNext();
         RaiseEvent(CHECKSUM_CODE, SyncedInfo.Encode(syncedInfo));
     }
 }