位置同步项目中用的两种方案

1 单段位置同步

服务器为每段位置进行下发,切再idle状态进行位置纠正

服务器下发信息,起始位置 a, 终点位置b, 总运动时间 totalTime

位置同步项目中用的两种方案_第1张图片

当前玩家位置为: float fT = time.time - m_fStatTime

                              float fPercent = fT/totalTim

      targetPosition = vector3.lerp(a, b, fPercent)

 

2 多段位置同步

    服务器为多段位置同时下发,这时候服务器要下发信息

     位置 a,b,c

     速度 speed

位置同步项目中用的两种方案_第2张图片

 

例如 a,b段

     totalTime = (b - a) / speed

  后边计算如同方法1 ,即每段的总时间客户端也要计算

 

 

 

 

你可能感兴趣的:(位置同步项目中用的两种方案)