Skip to content
This repository has been archived by the owner on Jun 26, 2021. It is now read-only.

Commit

Permalink
Refactor of Profiling
Browse files Browse the repository at this point in the history
- Removed unused index.html
- Removed unused Readme.txt
  • Loading branch information
FritzsHero committed Jul 14, 2019
1 parent 3a459ac commit 6c2cc37
Show file tree
Hide file tree
Showing 10 changed files with 75 additions and 204 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Refactor of IsApproximately
- Updated RoadUtility to use Unity 2019.2 API
- Added an option to change the desired height of the ramp
- Refactor of Profiling


## [Version: 1.9_FH] - 2019.04.22
Expand Down
81 changes: 15 additions & 66 deletions GSDRoad.cs
Original file line number Diff line number Diff line change
Expand Up @@ -520,11 +520,7 @@ public void UpdateRoad(RoadUpdateTypeEnum tUpdateType = RoadUpdateTypeEnum.Full)
SetupUniqueIdentifier();



if (bProfiling)
{
UnityEngine.Profiling.Profiler.BeginSample("UpdateRoadPrelim");
}
GSDRootUtil.StartProfiling(this, "UpdateRoadPrelim");
opt_RoadDefinition = Mathf.Clamp(opt_RoadDefinition, 1f, 50f);
opt_LaneWidth = Mathf.Clamp(opt_LaneWidth, 0.2f, 500f);
EditorConstructionStartTime = Time.realtimeSinceStartup;
Expand Down Expand Up @@ -631,9 +627,9 @@ public void UpdateRoad(RoadUpdateTypeEnum tUpdateType = RoadUpdateTypeEnum.Full)


GSDSpline.RoadWidth = RoadWidth();
// if(bProfiling){ UnityEngine.Profiling.Profiler.BeginSample("SplineSetup"); }
// GSDRootUtil.StartProfiling(this, "SplineSetup");
GSDSpline.Setup();
// if(bProfiling){ UnityEngine.Profiling.Profiler.EndSample(); }
// GSDRootUtil.EndProfiling(this);
mCount = GSDSpline.GetNodeCount();

if (GSDSpline == null || GSDSpline.mNodes == null)
Expand Down Expand Up @@ -739,10 +735,7 @@ public void UpdateRoad(RoadUpdateTypeEnum tUpdateType = RoadUpdateTypeEnum.Full)
{
Object.DestroyImmediate(MeshiMarkerPlates);
}
if (bProfiling)
{
UnityEngine.Profiling.Profiler.EndSample();
}
GSDRootUtil.EndProfiling(this);
return;
}

Expand Down Expand Up @@ -788,11 +781,7 @@ public void UpdateRoad(RoadUpdateTypeEnum tUpdateType = RoadUpdateTypeEnum.Full)
}
tTerrain = null;

if (bProfiling)
{
UnityEngine.Profiling.Profiler.EndSample();
}

GSDRootUtil.EndProfiling(this);
if (GSDRS.opt_bMultithreading)
{
if (RCS.bTerrainOn || TerrainHistory == null)
Expand Down Expand Up @@ -822,15 +811,9 @@ public void ConstructRoad_StoreTerrainHistory(bool bDiskOnly = false)

if (opt_SaveTerrainHistoryOnDisk && TerrainHistory != null && TerrainHistory.Count > 0)
{
if (bProfiling)
{
UnityEngine.Profiling.Profiler.BeginSample("TerrainHistory_Save");
}
GSDRootUtil.StartProfiling(this, "TerrainHistory_Save");
GSDGeneralEditor.TerrainHistory_Save(TerrainHistory, this);
if (bProfiling)
{
UnityEngine.Profiling.Profiler.EndSample();
}
GSDRootUtil.EndProfiling(this);
TerrainHistory.Clear();
TerrainHistory = null;
}
Expand Down Expand Up @@ -892,10 +875,7 @@ private void UpdateRoad_NoMultiThreading()
{
if (opt_HeightModEnabled || opt_DetailModEnabled || opt_TreeModEnabled)
{
if (bProfiling)
{
UnityEngine.Profiling.Profiler.BeginSample("RoadCon_Terrain");
}
GSDRootUtil.StartProfiling(this, "RoadCon_Terrain");
if (RCS.bTerrainOn || TerrainHistory == null)
{
GSDTerraforming.ProcessRoad_Terrain_Hook1(GSDSpline, this, false);
Expand All @@ -909,59 +889,28 @@ private void UpdateRoad_NoMultiThreading()
EditorTTDList = null;
System.GC.Collect();
}
if (bProfiling)
{
UnityEngine.Profiling.Profiler.EndSample();
}
GSDRootUtil.EndProfiling(this);
}

EditorProgress = 50;
GSDRoad tRoad = this;
if (bProfiling)
{
UnityEngine.Profiling.Profiler.BeginSample("RoadCon_RoadPrelim");
}
GSDRootUtil.StartProfiling(this, "RoadCon_RoadPrelim");

EditorProgress = 80;
GSD.Threaded.GSDRoadCreationT.RoadJob_Prelim(ref tRoad);
if (bProfiling)
{
UnityEngine.Profiling.Profiler.EndSample();
UnityEngine.Profiling.Profiler.BeginSample("RoadCon_Road1");
}
GSDRootUtil.EndStartProfiling(this, "RoadCon_Road1");
EditorProgress = 90;
GSD.Threaded.RoadCalcs1_static.RunMe(ref RCS);
if (bProfiling)
{
UnityEngine.Profiling.Profiler.EndSample();
}
if (bProfiling)
{
UnityEngine.Profiling.Profiler.BeginSample("MeshSetup1");
}
GSDRootUtil.EndStartProfiling(this, "MeshSetup1");
EditorProgress = 92;
RCS.MeshSetup1();
if (bProfiling)
{
UnityEngine.Profiling.Profiler.EndSample();
UnityEngine.Profiling.Profiler.BeginSample("RoadCon_Road2");
}
GSDRootUtil.EndStartProfiling(this, "RoadCon_Road2");
EditorProgress = 94;
GSD.Threaded.RoadCalcs2_static.RunMe(ref RCS);
if (bProfiling)
{
UnityEngine.Profiling.Profiler.EndSample();
}
if (bProfiling)
{
UnityEngine.Profiling.Profiler.BeginSample("MeshSetup2");
}
GSDRootUtil.EndStartProfiling(this, "MeshSetup2");
EditorProgress = 96;
RCS.MeshSetup2();
if (bProfiling)
{
UnityEngine.Profiling.Profiler.EndSample();
}
GSDRootUtil.EndProfiling(this);
Construction_Cleanup();
}
#endregion
Expand Down
66 changes: 14 additions & 52 deletions GSDRoadUtility.cs
Original file line number Diff line number Diff line change
Expand Up @@ -345,23 +345,14 @@ public static void ProcessRoad_Terrain_Hook1(GSDSplineC tSpline, GSDRoad tRoad,

private static void ProcessRoad_Terrain_Hook1_Do(ref GSDSplineC tSpline, ref GSDRoad tRoad, bool bMultithreaded)
{
if (tRoad.bProfiling)
{
UnityEngine.Profiling.Profiler.BeginSample("ProcessRoad_Terrain_Hook1_Do");
}
GSDRootUtil.StartProfiling(tRoad, "ProcessRoad_Terrain_Hook1_Do");
//First lets make sure all terrains have GSD shit on them:
CheckAllTerrains();

//Reset the terrain:
if (tRoad.bProfiling)
{
UnityEngine.Profiling.Profiler.BeginSample("TerrainsReset");
}
GSDRootUtil.StartProfiling(tRoad, "TerrainsReset");
GSDTerraforming.TerrainsReset(tRoad);
if (tRoad.bProfiling)
{
UnityEngine.Profiling.Profiler.EndSample();
}
GSDRootUtil.EndProfiling(tRoad);

float heightDistance = tRoad.opt_MatchHeightsDistance;
// float treeDistance = tRoad.opt_ClearTreesDistance;
Expand Down Expand Up @@ -448,10 +439,7 @@ private static void ProcessRoad_Terrain_Hook1_Do(ref GSDSplineC tSpline, ref GSD
float DetailRatio = tTerrain.terrainData.detailResolution / tTerrain.terrainData.size.x;

//Heights:
if (tRoad.bProfiling)
{
UnityEngine.Profiling.Profiler.BeginSample("Heights");
}
GSDRootUtil.StartProfiling(tRoad, "Heights");
if (tRoad.opt_HeightModEnabled)
{
aSize = (int) tSpline.distance * ((int) (heightDistance * 1.65f * TTD.HMRatio) + 2);
Expand All @@ -475,16 +463,9 @@ private static void ProcessRoad_Terrain_Hook1_Do(ref GSDSplineC tSpline, ref GSD
TempTerrainDict.Add(tTerrain, TTD);
}
}
if (tRoad.bProfiling)
{
UnityEngine.Profiling.Profiler.EndSample();
}

//Details:
if (tRoad.bProfiling)
{
UnityEngine.Profiling.Profiler.BeginSample("Details");
}
GSDRootUtil.EndStartProfiling(tRoad, "Details");
if (tRoad.opt_DetailModEnabled)
{
// TTD.DetailValues = new Dictionary<int, int[,]>();
Expand All @@ -500,7 +481,7 @@ private static void ProcessRoad_Terrain_Hook1_Do(ref GSDSplineC tSpline, ref GSD

// Get all of layer zero.
// int[] mMinMaxDetailEntryCount = new int[TTD.DetailLayersCount];
// if(tRoad.bProfiling){ UnityEngine.Profiling.Profiler.BeginSample("DetailValues"); }
// GSDRootUtil.StartProfiling(tRoad, "DetailValues");
// Vector3 bVect = default(Vector3);
// Vector2 bVect2D = default(Vector2);
// int DetailRes = tTerrain.terrainData.detailResolution;
Expand Down Expand Up @@ -529,7 +510,7 @@ private static void ProcessRoad_Terrain_Hook1_Do(ref GSDSplineC tSpline, ref GSD
// TTD.DetailHasProcessed.Add(i,new bool[tTerrain.terrainData.detailWidth,tTerrain.terrainData.detailHeight]);
// }
// }
// if(tRoad.bProfiling){ UnityEngine.Profiling.Profiler.EndSample(); }
// GSDRootUtil.EndProfiling(tRoad);


dSize = (int) tSpline.distance * ((int) (detailDistance * 3f * DetailRatio) + 2);
Expand Down Expand Up @@ -578,16 +559,9 @@ private static void ProcessRoad_Terrain_Hook1_Do(ref GSDSplineC tSpline, ref GSD


}
if (tRoad.bProfiling)
{
UnityEngine.Profiling.Profiler.EndSample();
}

//Trees:
if (tRoad.bProfiling)
{
UnityEngine.Profiling.Profiler.BeginSample("Trees");
}
GSDRootUtil.EndStartProfiling(tRoad, "Trees");
if (tRoad.opt_TreeModEnabled)
{
// TTD.TreesCurrent = tTerrain.terrainData.treeInstances;
Expand All @@ -596,10 +570,7 @@ private static void ProcessRoad_Terrain_Hook1_Do(ref GSDSplineC tSpline, ref GSD
TTD.TreesI = 0;
TTD.TreesOld = new List<TreeInstance>();
}
if (tRoad.bProfiling)
{
UnityEngine.Profiling.Profiler.EndSample();
}
GSDRootUtil.EndProfiling(tRoad);
}
}

Expand All @@ -616,10 +587,7 @@ private static void ProcessRoad_Terrain_Hook1_Do(ref GSDSplineC tSpline, ref GSD
}
}

if (tRoad.bProfiling)
{
UnityEngine.Profiling.Profiler.EndSample();
}
GSDRootUtil.EndProfiling(tRoad);

//Start job now, for each relevant TTD:
tRoad.EditorTerrainCalcs(ref EditorTTDList);
Expand Down Expand Up @@ -676,15 +644,9 @@ public static GSDRoadUtil.Construction2DRect GetTerrainBounds(Terrain tTerrain)

public static void ProcessRoad_Terrain_Hook2(GSDSplineC tSpline, ref List<TempTerrainData> TTDList)
{
if (tSpline.tRoad.bProfiling)
{
UnityEngine.Profiling.Profiler.BeginSample("ProcessRoad_Terrain_Hook2");
}
GSDRootUtil.StartProfiling(tSpline.tRoad, "ProcessRoad_Terrain_Hook2");
ProcessRoad_Terrain_Hook2_Do(ref tSpline, ref TTDList);
if (tSpline.tRoad.bProfiling)
{
UnityEngine.Profiling.Profiler.EndSample();
}
GSDRootUtil.EndProfiling(tSpline.tRoad);
}


Expand Down Expand Up @@ -4267,9 +4229,9 @@ private static void ConstructRoad_DoStoreTerrainHistory(ref GSDRoad tRoad)
}

// //TerrainHistoryRaw
// if(tRoad.bProfiling){ UnityEngine.Profiling.Profiler.BeginSample("TerrainHistorySerialize"); }
// GSDRootUtil.StartProfiling(tRoad, "TerrainHistorySerialize");
// TerrainHistorySerialize(ref tRoad);
// if(tRoad.bProfiling){ UnityEngine.Profiling.Profiler.EndSample(); }
// GSDRootUtil.EndProfiling(tRoad);
}


Expand Down
Loading

0 comments on commit 6c2cc37

Please sign in to comment.