GameTime增加服务器时间

GameTime增加服务器时间
This commit is contained in:
ALEXTANG
2022-05-25 23:33:11 +08:00
parent 3ec86b0892
commit 139e0d5433
4 changed files with 78 additions and 4 deletions

View File

@@ -7,6 +7,14 @@ namespace TEngine
/// </summary>
public static class GameTime
{
/// <summary>
/// 开始记录
/// </summary>
public static void Start()
{
_lastFrameTimeStamp = TimeStamp;
}
/// <summary>
/// 这一帧的记录
/// </summary>
@@ -17,14 +25,34 @@ namespace TEngine
quickRealTime = Time.realtimeSinceStartup;
frameCount = Time.frameCount;
unscaledTime = Time.unscaledTime;
long now = TimeStamp;
if (ServerTimeStamp > 0)
{
ServerTimeStamp += now - _lastFrameTimeStamp;
}
else
{
ServerTimeStamp = now;
}
_lastFrameTimeStamp = now;
}
public static float time;
public static float deltaTime;
public static int frameCount;
public static float unscaledTime;
public static long ServerTimeStamp;
private static System.DateTime _epochDateTime = System.TimeZoneInfo.ConvertTime(new System.DateTime(1970, 1, 1), System.TimeZoneInfo.Local);
public static float quickRealTime;
public static long TimeStamp => System.DateTimeOffset.Now.ToUnixTimeMilliseconds();
private static long _lastFrameTimeStamp;
public static float realtimeSinceStartup
/// <summary>
/// 从游戏启动到现在的真实时长(秒)
/// </summary>
public static float RealtimeSinceStartup
{
get
{
@@ -32,6 +60,14 @@ namespace TEngine
}
}
public static float quickRealTime;
/// <summary>
/// 服务器同步时间
/// </summary>
/// <param name="serverTime"></param>
public static void ServerTimeSync(long serverTime)
{
ServerTimeStamp = serverTime;
}
}
}

View File

@@ -74,6 +74,7 @@ namespace TEngine
#region
public void Start()
{
GameTime.Start();
GameTime.StartFrame();
var listLogic = m_LogicMgrList;
var logicCnt = listLogic.Count;

View File

@@ -7,6 +7,14 @@ namespace TEngineCore
/// </summary>
public static class GameTime
{
/// <summary>
/// 开始记录
/// </summary>
public static void Start()
{
_lastFrameTimeStamp = TimeStamp;
}
/// <summary>
/// 这一帧的记录
/// </summary>
@@ -17,14 +25,34 @@ namespace TEngineCore
quickRealTime = Time.realtimeSinceStartup;
frameCount = Time.frameCount;
unscaledTime = Time.unscaledTime;
long now = TimeStamp;
if (ServerTimeStamp > 0)
{
ServerTimeStamp += now - _lastFrameTimeStamp;
}
else
{
ServerTimeStamp = now;
}
_lastFrameTimeStamp = now;
}
public static float time;
public static float deltaTime;
public static int frameCount;
public static float unscaledTime;
public static long ServerTimeStamp;
private static System.DateTime _epochDateTime = System.TimeZoneInfo.ConvertTime(new System.DateTime(1970, 1, 1), System.TimeZoneInfo.Local);
public static float quickRealTime;
public static long TimeStamp => System.DateTimeOffset.Now.ToUnixTimeMilliseconds();
private static long _lastFrameTimeStamp;
public static float realtimeSinceStartup
/// <summary>
/// 从游戏启动到现在的真实时长(秒)
/// </summary>
public static float RealtimeSinceStartup
{
get
{
@@ -32,6 +60,14 @@ namespace TEngineCore
}
}
public static float quickRealTime;
/// <summary>
/// 服务器同步时间
/// </summary>
/// <param name="serverTime"></param>
public static void ServerTimeSync(long serverTime)
{
ServerTimeStamp = serverTime;
}
}
}

View File

@@ -74,6 +74,7 @@ namespace TEngineCore
#region
public void Start()
{
GameTime.Start();
GameTime.StartFrame();
var listLogic = m_LogicMgrList;
var logicCnt = listLogic.Count;