net tick interval is now 120ms; local tick is still 40ms
This commit is contained in:
@@ -176,11 +176,12 @@ namespace OpenRA
|
|||||||
renderer.Device.DisableScissor();
|
renderer.Device.DisableScissor();
|
||||||
|
|
||||||
if (Game.Settings.PerfText)
|
if (Game.Settings.PerfText)
|
||||||
renderer.RegularFont.DrawText( rgbaRenderer, "RenderFrame {0} ({2:F1} ms)\nTick {1} ({3:F1} ms)\n".F(
|
renderer.RegularFont.DrawText( rgbaRenderer, "RenderFrame {0} ({2:F1} ms)\nTick {4}/ Net{1} ({3:F1} ms)\n".F(
|
||||||
Game.RenderFrame,
|
Game.RenderFrame,
|
||||||
Game.orderManager.FrameNumber,
|
Game.orderManager.FrameNumber,
|
||||||
PerfHistory.items["render"].LastValue,
|
PerfHistory.items["render"].LastValue,
|
||||||
PerfHistory.items["tick_time"].LastValue),
|
PerfHistory.items["tick_time"].LastValue,
|
||||||
|
Game.LocalTick),
|
||||||
new int2(140, 15), Color.White);
|
new int2(140, 15), Color.White);
|
||||||
|
|
||||||
if (Game.Settings.PerfGraph)
|
if (Game.Settings.PerfGraph)
|
||||||
|
|||||||
@@ -180,6 +180,9 @@ namespace OpenRA
|
|||||||
|
|
||||||
internal static Chat chat = new Chat();
|
internal static Chat chat = new Chat();
|
||||||
|
|
||||||
|
public static int LocalTick = 0;
|
||||||
|
const int NetTickScale = 3; // 120ms net tick for 40ms local tick
|
||||||
|
|
||||||
public static void Tick()
|
public static void Tick()
|
||||||
{
|
{
|
||||||
if (changePending && PackageDownloader.IsIdle())
|
if (changePending && PackageDownloader.IsIdle())
|
||||||
@@ -199,9 +202,14 @@ namespace OpenRA
|
|||||||
|
|
||||||
orderManager.TickImmediate( world );
|
orderManager.TickImmediate( world );
|
||||||
|
|
||||||
if (orderManager.IsReadyForNextFrame)
|
var isNetTick = LocalTick % NetTickScale == 0;
|
||||||
|
|
||||||
|
if (!isNetTick || orderManager.IsReadyForNextFrame)
|
||||||
{
|
{
|
||||||
orderManager.Tick(world);
|
++LocalTick;
|
||||||
|
|
||||||
|
if (isNetTick) orderManager.Tick(world);
|
||||||
|
|
||||||
controller.orderGenerator.Tick(world);
|
controller.orderGenerator.Tick(world);
|
||||||
controller.selection.Tick(world);
|
controller.selection.Tick(world);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user