ar骑行bug fix

This commit is contained in:
lishuo committed 2023-02-07 18:35:16 +08:00
1 parent 2c9440f656
commit 08b92e7e9b
37 files changed
+3233 -3358

No files matched your search

+26 -26
View File
@@ -64,7 +64,7 @@ namespace Assets.AR
videoSync = videoPointsSync;
this.VideoPlayerControl = new ARVideoPlayerControl();
this.VideoPlayerControl.VideoSyncSource = videoSync;
this.videoPlayer = new AVProVideoPlayer();
this.videoPlayer = mediaPlayer.gameObject.AddComponent<AVProVideoPlayer>();
this.videoPlayer.videoPlayer = mediaPlayer;
SetArRoute(new ARRoute(aRData.Route), videoSync, videoPlayer);
this.VideoPlayerControl.VideoFrameOffset = this.Route.VideoFrameOffset;
@@ -76,42 +76,42 @@ namespace Assets.AR
protected override void Update()
{
//if (manager.IsQuit())
// return;
if (this.videoPlayer == null)
return;
timers -= Time.deltaTime;
while (timers <= 0)
{
foreach (var dic in manager.rideObjs)
{
var item = dic.Value;
if (dic.Key.UserId == manager.CurrentPlayer.userId)
{
mainRiderObject = item;
}
item.PreSpeed = item.Speed;
item.Speed = (float)dic.Key.OnlineSpeed;
item.DeltaDistance = (float)(dic.Key.EndDistance - dic.Key.PreDistance);
//如果速度为0就停止播放视频
if (item.DeltaDistance == 0 || item.Speed == 0)
{
item.DeltaDistance = 0;
videoPlayer.Pause();
}
else
{
videoPlayer.Resume();
}
item.Route = Route;
item.VideoSync = videoPointsSync;
item.IsAtFinish = dic.Key.EndDistance >= manager.GetMapRoute().Distance*1000f;
if (!this.arObjects.Contains(item))
this.arObjects.Add(item);
if (!this.riderObjects.ContainsKey(item.UserId))
this.riderObjects.Add(item.UserId, item);
item.PreSpeed = item.Speed;
item.Speed = (float)dic.Key.OnlineSpeed;
item.DeltaDistance = (float)(dic.Key.EndDistance - dic.Key.PreDistance);
item.Route = Route;
item.VideoSync = videoPointsSync;
item.IsAtFinish = dic.Key.EndDistance >= manager.GetMapRoute().Distance*1000f;
if (dic.Key.UserId == manager.CurrentUserId)
{
mainRiderObject = item;
//如果速度为0就停止播放视频
if (item.DeltaDistance == 0 || item.Speed == 0)
{
item.DeltaDistance = 0;
videoPlayer.Pause();
}
else
{
videoPlayer.Resume();
}
}
}
this.arObjects.RemoveAll(c => !manager.rideObjs.Select(m => m.Key.UserId.ToString()).Contains(c.UserId.ToString()));
var keys = riderObjects.Keys.ToList();