Refactor single-thread worker
Re-parallel Hull Update Use new gap shaffle algorithm
This commit is contained in:
@@ -6,6 +6,7 @@ using System.Threading.Tasks;
|
||||
using System.Linq;
|
||||
using System.Collections.Generic;
|
||||
using System;
|
||||
using static Barotrauma.SingleThreadWorker;
|
||||
|
||||
|
||||
#if DEBUG && CLIENT
|
||||
@@ -261,7 +262,6 @@ namespace Barotrauma
|
||||
|
||||
|
||||
Ragdoll.UpdateAll((float)deltaTime, Cam);
|
||||
SingleThreadWorker.GlobalWorker.RunActions();
|
||||
|
||||
#if CLIENT
|
||||
sw.Stop();
|
||||
@@ -279,6 +279,9 @@ namespace Barotrauma
|
||||
GameMain.PerformanceCounter.AddElapsedTicks("Update:Submarine", sw.ElapsedTicks);
|
||||
sw.Restart();
|
||||
#endif
|
||||
|
||||
SingleThreadActionStandbySignal.Wait();
|
||||
|
||||
try
|
||||
{
|
||||
GameMain.World.Step((float)Timing.Step);
|
||||
@@ -290,6 +293,8 @@ namespace Barotrauma
|
||||
GameAnalyticsManager.AddErrorEventOnce("GameScreen.Update:WorldLockedException" + e.Message, GameAnalyticsManager.ErrorSeverity.Critical, errorMsg);
|
||||
}
|
||||
|
||||
SingleThreadActionStandbySignal.Release();
|
||||
|
||||
#if CLIENT
|
||||
sw.Stop();
|
||||
GameMain.PerformanceCounter.AddElapsedTicks("Update:Physics", sw.ElapsedTicks);
|
||||
|
||||
Reference in New Issue
Block a user