public static void StorePlanetNoise(ModuleBase noise, string name) { if (Prefs.DevMode && DebugViewSettings.drawRecordedNoise) { NoisePlanet item = new NoisePlanet(noise, name); NoiseDebugUI.planetNoises.Add(item); } }
public static void ClearPlanetNoises() { NoiseDebugUI.planetNoises.Clear(); NoiseDebugUI.currentPlanetNoise = null; NoiseDebugUI.lastDrawnPlanetNoise = null; if ((Object)NoiseDebugUI.planetNoiseMesh != (Object)null) { Mesh localPlanetNoiseMesh = NoiseDebugUI.planetNoiseMesh; LongEventHandler.ExecuteWhenFinished(delegate { Object.Destroy(localPlanetNoiseMesh); }); NoiseDebugUI.planetNoiseMesh = null; } }
public static void ClearPlanetNoises() { planetNoises.Clear(); currentPlanetNoise = null; lastDrawnPlanetNoise = null; if (planetNoiseMesh != null) { Mesh localPlanetNoiseMesh = planetNoiseMesh; LongEventHandler.ExecuteWhenFinished(delegate { Object.Destroy(localPlanetNoiseMesh); }); planetNoiseMesh = null; } }
public static void RenderPlanetNoise() { if (Prefs.DevMode && DebugViewSettings.drawRecordedNoise && currentPlanetNoise != null) { if (planetNoiseMesh == null) { SphereGenerator.Generate(6, 100.3f, Vector3.forward, 360f, out planetNoiseMeshVerts, out var outIndices); planetNoiseMesh = new Mesh(); planetNoiseMesh.name = "NoiseDebugUI"; planetNoiseMesh.SetVertices(planetNoiseMeshVerts); planetNoiseMesh.SetTriangles(outIndices, 0); lastDrawnPlanetNoise = null; } if (lastDrawnPlanetNoise != currentPlanetNoise) { UpdatePlanetNoiseVertexColors(); lastDrawnPlanetNoise = currentPlanetNoise; } Graphics.DrawMesh(planetNoiseMesh, Vector3.zero, Quaternion.identity, WorldMaterials.VertexColor, WorldCameraManager.WorldLayer); } }
public static void RenderPlanetNoise() { if (Prefs.DevMode && DebugViewSettings.drawRecordedNoise && NoiseDebugUI.currentPlanetNoise != null) { if ((Object)NoiseDebugUI.planetNoiseMesh == (Object)null) { List <int> triangles = default(List <int>); SphereGenerator.Generate(6, 100.3f, Vector3.forward, 360f, out NoiseDebugUI.planetNoiseMeshVerts, out triangles); NoiseDebugUI.planetNoiseMesh = new Mesh(); NoiseDebugUI.planetNoiseMesh.name = "NoiseDebugUI"; NoiseDebugUI.planetNoiseMesh.SetVertices(NoiseDebugUI.planetNoiseMeshVerts); NoiseDebugUI.planetNoiseMesh.SetTriangles(triangles, 0); NoiseDebugUI.lastDrawnPlanetNoise = null; } if (NoiseDebugUI.lastDrawnPlanetNoise != NoiseDebugUI.currentPlanetNoise) { NoiseDebugUI.UpdatePlanetNoiseVertexColors(); NoiseDebugUI.lastDrawnPlanetNoise = NoiseDebugUI.currentPlanetNoise; } Graphics.DrawMesh(NoiseDebugUI.planetNoiseMesh, Vector3.zero, Quaternion.identity, WorldMaterials.VertexColor, WorldCameraManager.WorldLayer); } }
public static void NoiseDebugOnGUI() { if (Prefs.DevMode && DebugViewSettings.drawRecordedNoise) { if (Widgets.ButtonText(new Rect(0f, 40f, 200f, 30f), "Clear noise renders", true, false, true)) { NoiseDebugUI.Clear(); } if (Widgets.ButtonText(new Rect(200f, 40f, 200f, 30f), "Hide noise renders", true, false, true)) { DebugViewSettings.drawRecordedNoise = false; } if (WorldRendererUtility.WorldRenderedNow) { if (NoiseDebugUI.planetNoises.Any() && Widgets.ButtonText(new Rect(400f, 40f, 200f, 30f), "Next planet noise", true, false, true)) { if (Event.current.button == 1) { if (NoiseDebugUI.currentPlanetNoise == null || NoiseDebugUI.planetNoises.IndexOf(NoiseDebugUI.currentPlanetNoise) == -1) { NoiseDebugUI.currentPlanetNoise = NoiseDebugUI.planetNoises[NoiseDebugUI.planetNoises.Count - 1]; } else if (NoiseDebugUI.planetNoises.IndexOf(NoiseDebugUI.currentPlanetNoise) == 0) { NoiseDebugUI.currentPlanetNoise = null; } else { NoiseDebugUI.currentPlanetNoise = NoiseDebugUI.planetNoises[NoiseDebugUI.planetNoises.IndexOf(NoiseDebugUI.currentPlanetNoise) - 1]; } } else if (NoiseDebugUI.currentPlanetNoise == null || NoiseDebugUI.planetNoises.IndexOf(NoiseDebugUI.currentPlanetNoise) == -1) { NoiseDebugUI.currentPlanetNoise = NoiseDebugUI.planetNoises[0]; } else if (NoiseDebugUI.planetNoises.IndexOf(NoiseDebugUI.currentPlanetNoise) == NoiseDebugUI.planetNoises.Count - 1) { NoiseDebugUI.currentPlanetNoise = null; } else { NoiseDebugUI.currentPlanetNoise = NoiseDebugUI.planetNoises[NoiseDebugUI.planetNoises.IndexOf(NoiseDebugUI.currentPlanetNoise) + 1]; } } if (NoiseDebugUI.currentPlanetNoise != null) { Rect rect = new Rect(605f, 40f, 300f, 30f); Text.Font = GameFont.Medium; Widgets.Label(rect, NoiseDebugUI.currentPlanetNoise.name); Text.Font = GameFont.Small; } } float num = 0f; float num2 = 90f; Text.Font = GameFont.Tiny; foreach (Noise2D item in NoiseDebugUI.noises2D) { Texture2D texture = item.Texture; if (num + (float)texture.width + 5.0 > (float)UI.screenWidth) { num = 0f; num2 += (float)(texture.height + 5 + 25); } Rect position = new Rect(num, num2, (float)texture.width, (float)texture.height); GUI.DrawTexture(position, texture); Rect rect2 = new Rect(num, (float)(num2 - 15.0), (float)texture.width, (float)texture.height); GUI.color = Color.black; Widgets.Label(rect2, item.name); GUI.color = Color.white; Widgets.Label(new Rect((float)(rect2.x + 1.0), (float)(rect2.y + 1.0), rect2.width, rect2.height), item.name); num += (float)(texture.width + 5); } } }