public override void OnInspectorGUI() { DrawDefaultInspector(); LevelTerrainManager terrainManager = target as LevelTerrainManager; EditorGUILayout.LabelField("Lens Info:", EditorStyles.boldLabel); if (terrainManager.level != null) { terrainManager.level.forEachFocalLens((lens, focus) => { EditorGUILayout.LabelField("Lens:", $"{lens.GetType().Name} is focused on focus #{focus.id}"); if (GUILayout.Button("Print running aperture job counts")) { PrintRunningApertureJobCounts(lens); EditorGUILayout.Space(); } }); } EditorGUILayout.LabelField("Manager Info:", EditorStyles.boldLabel); if (GUILayout.Button("Print Current Queue Counts")) { PrintQueueCounts(terrainManager); } }
/// <summary> /// Print the queue counts for a terrain manager /// </summary> /// <param name="terrainManager"></param> static void PrintQueueCounts(LevelTerrainManager terrainManager) { World.Debug.log($"Current Queue Counts:\n ===== \n" + $"\tChunks Waiting For A Free Controller: {terrainManager.chunksWaitingForAFreeController.Count}\n" + $"\tChunks To Mesh: {terrainManager.chunksToMesh.Count}\n" + $"\tChunks To Activate: {terrainManager.chunksToActivate.Count}\n" + $"\tChunks To Deactivate: {terrainManager.chunksToDeactivate.Count}\n" + $"\tChunks To Demesh: {terrainManager.chunksToDemesh.Count}" ); }