tcp发送增加ar视频播放帧数&首页布局还原到初版
This commit is contained in:
1 parent
3532978762
commit
4a3542010f
18 files changed
+1937
-1788
No files matched your search
@@ -53,7 +53,7 @@ public class MainController : BaseScene
|
||||
modalRect.sizeDelta = new Vector2(1600, 900);
|
||||
App.MainDeviceAdapter.StartScan();
|
||||
#endif
|
||||
//EventQueueSystem.AddListener<LinkedMessageEvent>(LinkedMessageHandler);
|
||||
EventQueueSystem.AddListener<LinkedMessageEvent>(LinkedMessageHandler);
|
||||
App.isHomeChanged -= OnIsHomeChanged;
|
||||
App.isHomeChanged += OnIsHomeChanged;
|
||||
}
|
||||
@@ -149,8 +149,7 @@ public class MainController : BaseScene
|
||||
emptyt = 0;
|
||||
if (App.currentPageIsHome)
|
||||
{
|
||||
//DoMessage6(e);
|
||||
DoTopMessage(e);
|
||||
DoMessage6(e);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -159,11 +158,6 @@ public class MainController : BaseScene
|
||||
#else
|
||||
float moveOffset = 38;
|
||||
#endif
|
||||
private void DoTopMessage(LinkedMessageEvent e)
|
||||
{
|
||||
|
||||
|
||||
}
|
||||
private void DoMessage6(LinkedMessageEvent e)
|
||||
{
|
||||
//Resources.UnloadUnusedAssets();
|
||||
@@ -290,7 +284,7 @@ public class MainController : BaseScene
|
||||
$"{Math.Round(SystemInfo.batteryLevel * 100, 0)}%";
|
||||
transform.Find("MobileInfo/TimeText").GetComponent<Text>().text =
|
||||
DateTime.Now.ToString("HH:mm");
|
||||
//ShowQueueMessage();
|
||||
ShowQueueMessage();
|
||||
#if UNITY_EDITOR
|
||||
if (App.CurrentUser == null) //App.CurrentUser == null
|
||||
{
|
||||
|
||||
@@ -105,7 +105,7 @@ namespace Assets.Scenes.Ride.Scripts.Model.CyclingModels
|
||||
MapUDPService.Send(route.RouteInstance.Id, recorderData.BelongUserId,
|
||||
new double[] { lastData._Lat, lastData._Lon },
|
||||
recorderData.IsCompleted, false, recorderData.EndDistance,
|
||||
true, 1, lastData._Speed, false, preDistance, weightKg, competitionId: recorderData.Competitionid, recorderData.Saved, 0, lastData._Power, lastData._Cadence, lastData.Ticks);
|
||||
true, 1, lastData._Speed, false, preDistance, weightKg, competitionId: recorderData.Competitionid, recorderData.Saved, 0, lastData._Power, lastData._Cadence, lastData.Ticks, (lastData._FrameRate??0));
|
||||
}
|
||||
else if (recorderData.EndDistance > 0)//没有骑,但是有初始位置的情况
|
||||
{
|
||||
|
||||
@@ -80,6 +80,7 @@ namespace Assets.Scenes.Ride.Scripts.Model.CyclingModels
|
||||
EndDistance = item.EndDistance,
|
||||
PreDistance = item.PreDistance,
|
||||
WeightKg = item.WeightKg,
|
||||
FrameRate = item.FrameRate,
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -376,6 +376,8 @@ namespace Assets.Scenes.Ride.Scripts.Model
|
||||
public bool Saved { get; set; }
|
||||
|
||||
//public int V { get; set; }
|
||||
|
||||
public int FrameRate { get; set; }
|
||||
}
|
||||
|
||||
public class GzipMsgModel
|
||||
@@ -436,11 +438,12 @@ namespace Assets.Scenes.Ride.Scripts.Model
|
||||
|
||||
public string WatchIdList { get; set; }
|
||||
|
||||
public int? FrameRate { get; set; }
|
||||
|
||||
public static ReceiveMsgModel Parse(string str)
|
||||
{
|
||||
var list = str.Split(',');
|
||||
if (list.Length != 14)
|
||||
if (list.Length != 15)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
@@ -464,6 +467,7 @@ namespace Assets.Scenes.Ride.Scripts.Model
|
||||
HeartRate = Convert.ToDouble(list[11], CultureInfo.InvariantCulture),
|
||||
Cadence = Convert.ToDouble(list[12], CultureInfo.InvariantCulture),
|
||||
TotoalTicks = Convert.ToInt32(list[13], CultureInfo.InvariantCulture),
|
||||
FrameRate = Convert.ToInt32(list[14], CultureInfo.InvariantCulture),
|
||||
};
|
||||
}
|
||||
catch
|
||||
@@ -595,6 +599,8 @@ namespace Assets.Scenes.Ride.Scripts.Model
|
||||
public string Country { get; set; }
|
||||
|
||||
public DateTime CreateTime { get; set; }
|
||||
|
||||
public int? FrameRate { get; set; }
|
||||
}
|
||||
|
||||
public class KeyPaire
|
||||
|
||||
@@ -19,6 +19,8 @@ namespace Assets.Scenes.Ride.Scripts.Model.RiderModels
|
||||
/// </summary>
|
||||
public GeographicPosition Point { get; set; }
|
||||
|
||||
public int? FrameRate { get; set; } = 0;
|
||||
|
||||
public OutUser GetOutUser(double preDistance, double currentDistance, TurfHelper turfHelper, CyclingStateEnum cyclingState)
|
||||
{
|
||||
if (this.IsSelf)
|
||||
|
||||
@@ -34,6 +34,9 @@ namespace Assets.Scenes.Ride.Scripts.Model
|
||||
|
||||
//public double _Bearing = 0d;
|
||||
|
||||
//视频帧数
|
||||
public int? _FrameRate = 0;
|
||||
|
||||
public TargetData Clone()
|
||||
{
|
||||
return (TargetData)MemberwiseClone();
|
||||
|
||||
@@ -207,7 +207,7 @@ namespace Assets.Scenes.Ride.Scripts
|
||||
/// <param name="exit">是否退出</param>
|
||||
public static void Send(int RouteId, int MemberId, double[] Point, bool IsCompleted = false, bool exit = false,
|
||||
double endDistance = 0, bool showVirtual = false, byte commandType = 1, double speed = 0, bool isVirtual = false, double preDistance = 0,
|
||||
double weightKg = 0, int competitionId = 0, bool saved = false,double? heartRate = 0, double power = 0, double? cadence = 0,int totalTicks = 0)
|
||||
double weightKg = 0, int competitionId = 0, bool saved = false,double? heartRate = 0, double power = 0, double? cadence = 0,int totalTicks = 0, int frameRate = 0)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -235,6 +235,7 @@ namespace Assets.Scenes.Ride.Scripts
|
||||
WeightKg = weightKg,
|
||||
Competitionid = competitionId,
|
||||
Saved = saved,
|
||||
FrameRate = frameRate
|
||||
//V = 1
|
||||
};
|
||||
var sendBytes = Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(model));
|
||||
@@ -491,6 +492,7 @@ namespace Assets.Scenes.Ride.Scripts
|
||||
}
|
||||
user.IsWatcher = user.WatcherList.Contains(item.MemberId);
|
||||
user.CreateTime = DateTime.MaxValue;
|
||||
user.FrameRate = item.FrameRate;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -223,14 +223,12 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
}
|
||||
}
|
||||
|
||||
private void Forward()
|
||||
protected virtual void Forward()
|
||||
{
|
||||
try
|
||||
{
|
||||
if (mapData == null)
|
||||
mapData = manager.GetMapData();
|
||||
distance = Math.Round(speed / 3600, 5, MidpointRounding.AwayFromZero);
|
||||
totalDistance += distance;
|
||||
currentlatLon = manager.Along(totalDistance % mapData.TotalDistance);
|
||||
////根据人物速度设置人物距离摄像头远近
|
||||
//if (speed > 20 && speed < 30)
|
||||
|
||||
@@ -24,10 +24,10 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
var current = manager.CurrentPlayer;
|
||||
if (current != null && current.UserId != UserId)
|
||||
{
|
||||
var left = totalDistance % mapData.TotalDistance;
|
||||
var right = current.totalDistance % mapData.TotalDistance;
|
||||
diff = (left - right) * 1000;
|
||||
if (Math.Abs(diff) > 50)
|
||||
//var left = totalDistance % mapData.TotalDistance;
|
||||
//var right = current.totalDistance % mapData.TotalDistance;
|
||||
//diff = (left - right) * 1000;
|
||||
if (Math.Abs(diff) > 150)
|
||||
{
|
||||
Destroy();
|
||||
}
|
||||
@@ -76,25 +76,14 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
// print(e.Message);
|
||||
//}
|
||||
}
|
||||
|
||||
private int currentFrame { get; set; }
|
||||
protected override void ComputeAnimator()
|
||||
{
|
||||
base.ComputeAnimator();
|
||||
if (manager.CurrentPlayer == null || manager.CurrentPlayer.UserId != UserId)
|
||||
{
|
||||
//var currentFrame = manager.GetFrameOffSet(diff);
|
||||
var mainFrame = manager.GetCurrentFrame();
|
||||
var currentFrame = mainFrame + diff * 10;
|
||||
//var min = Math.Min(currentFrame, mainFrame);
|
||||
//var max = Math.Max(currentFrame, mainFrame);
|
||||
frames = (int)currentFrame;
|
||||
var result = manager.mockDirection.Where(c => c.Start < frames && c.End > frames).FirstOrDefault();
|
||||
bearing = result?.Value ?? 0;
|
||||
animator.SetFloat("bearing", bearing);
|
||||
}
|
||||
else
|
||||
{
|
||||
var mainFrame = manager.GetCurrentFrame();
|
||||
var result = manager.mockDirection.Where(c => c.Start < mainFrame && c.End > mainFrame).FirstOrDefault();
|
||||
var result = manager.mockDirection.Where(c => c.Start < currentFrame && c.End > currentFrame).FirstOrDefault();
|
||||
bearing = result?.Value ?? 0;
|
||||
animator.SetFloat("bearing", bearing);
|
||||
}
|
||||
@@ -109,7 +98,7 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
}
|
||||
|
||||
//设置当前玩家属性
|
||||
public void SetPlayer(string name, double distance, double totalDistance, double cadance,double heartRate, double wkg, int userId,double power,double currentPlayerDistance)
|
||||
public void SetPlayer(string name, double distance, double totalDistance, double cadance,double heartRate, double wkg, int userId,double power,double currentPlayerDistance,int frame)
|
||||
{
|
||||
this.wkg = wkg;
|
||||
this.UserName = name;
|
||||
@@ -119,7 +108,8 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
this.UserId = userId;
|
||||
this.power = power;
|
||||
this.speed = distance * 3600;
|
||||
this.diff = currentPlayerDistance - totalDistance;
|
||||
this.diff = totalDistance - currentPlayerDistance;
|
||||
this.currentFrame = frame;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -165,7 +165,7 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
var onlineRider = currentPlayer as OnlineRiderModel;
|
||||
var obj = Instantiate(OnlinePlayer, transform);
|
||||
var online = obj.GetComponent<OnlineVideoPlayer>();
|
||||
online.SetPlayer(onlineRider.NickName, onlineRider.EndDistance-onlineRider.PreDistance, onlineRider.EndDistance, onlineRider.Cadence, onlineRider.HeartRate, onlineRider.TotalTicks, onlineRider.UserId, onlineRider.Power, onlineRider.EndDistance);
|
||||
online.SetPlayer(onlineRider.NickName, onlineRider.EndDistance-onlineRider.PreDistance, onlineRider.EndDistance, onlineRider.Cadence, onlineRider.HeartRate, onlineRider.TotalTicks, onlineRider.UserId, onlineRider.Power, onlineRider.EndDistance,onlineRider.FrameRate.Value);
|
||||
obj.transform.DOMoveX(0, 1);
|
||||
ChangePlayer(currentPlayer.UserId);
|
||||
CurrentPlayer = online;
|
||||
@@ -198,7 +198,7 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
{
|
||||
var online = exsit.GetComponent<OnlineVideoPlayer>();
|
||||
|
||||
online.SetPlayer(onlineRider.NickName, onlineRider.EndDistance - onlineRider.PreDistance, onlineRider.EndDistance, item.Cadence, item.HeartRate, onlineRider.WeightKg, item.UserId, onlineRider.Power, currentPlayerInfo.EndDistance);
|
||||
online.SetPlayer(onlineRider.NickName, onlineRider.EndDistance - onlineRider.PreDistance, onlineRider.EndDistance, item.Cadence, item.HeartRate, onlineRider.WeightKg, item.UserId, onlineRider.Power, currentPlayerInfo.EndDistance, onlineRider.FrameRate.Value);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -209,7 +209,7 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
{
|
||||
var obj = Instantiate(OnlinePlayer, transform);
|
||||
var online = obj.GetComponent<OnlineVideoPlayer>();
|
||||
online.SetPlayer(onlineRider.NickName, onlineRider.EndDistance - onlineRider.PreDistance, onlineRider.EndDistance, item.Cadence, item.HeartRate, onlineRider.WeightKg, item.UserId, onlineRider.Power, currentPlayerInfo.EndDistance);
|
||||
online.SetPlayer(onlineRider.NickName, onlineRider.EndDistance - onlineRider.PreDistance, onlineRider.EndDistance, item.Cadence, item.HeartRate, onlineRider.WeightKg, item.UserId, onlineRider.Power, currentPlayerInfo.EndDistance, onlineRider.FrameRate.Value);
|
||||
obj.transform.DOMoveX(slots[currentOnlineCount], 1);
|
||||
currentOnlineCount++;
|
||||
}
|
||||
@@ -260,7 +260,7 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
var onlineRider = currentPlayer as OnlineRiderModel;
|
||||
var obj = Instantiate(OnlinePlayer, transform);
|
||||
var online = obj.GetComponent<OnlineVideoPlayer>();
|
||||
online.SetPlayer(onlineRider.NickName, onlineRider.EndDistance-onlineRider.PreDistance, onlineRider.EndDistance, onlineRider.Cadence, onlineRider.HeartRate, 0, onlineRider.UserId, onlineRider.Power, onlineRider.EndDistance);
|
||||
online.SetPlayer(onlineRider.NickName, onlineRider.EndDistance-onlineRider.PreDistance, onlineRider.EndDistance, onlineRider.Cadence, onlineRider.HeartRate, 0, onlineRider.UserId, onlineRider.Power, onlineRider.EndDistance, onlineRider.FrameRate.Value);
|
||||
obj.transform.position = origin;
|
||||
CurrentPlayer = online;
|
||||
var currentFrames = DistanceToFrames(CurrentPlayer.totalDistance);
|
||||
|
||||
@@ -50,7 +50,7 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
power = manager.UpdatePower();
|
||||
cadance = manager.UpdateCadence();
|
||||
//#if UNITY_EDITOR
|
||||
power = 150;
|
||||
power = 50;
|
||||
cadance = 150;
|
||||
heartRate = 160;
|
||||
//#endif
|
||||
@@ -87,6 +87,7 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
_Lat = currentlatLon.x,
|
||||
_Lon = currentlatLon.y,
|
||||
_TotalClimb = totalClimb,
|
||||
_FrameRate = manager.GetCurrentFrame()
|
||||
};
|
||||
var preDistance = totalDistance >= mapData.TotalDistance ? targetData._Distance : targetData._Distance - distance;
|
||||
recorderData.PreDistance = Math.Round(preDistance, 6, MidpointRounding.AwayFromZero);
|
||||
@@ -99,6 +100,13 @@ namespace Assets.Scripts.Scenes.VideoRide
|
||||
// manager.Save(totalDistance);
|
||||
//}
|
||||
}
|
||||
|
||||
protected override void Forward()
|
||||
{
|
||||
base.Forward();
|
||||
distance = Math.Round(speed / 3600, 5, MidpointRounding.AwayFromZero);
|
||||
totalDistance += distance;
|
||||
}
|
||||
//保存骑行记录
|
||||
public void Upload()
|
||||
{
|
||||
|
||||
Reference in new issue
Block a user