private void UpdateDisplayText(GameTime time) //,Matrix view, Matrix projection { accUpdateTime += (float)time.ElapsedGameTime.TotalSeconds; if (accUpdateTime < 0.1f) { return; } accUpdateTime = 0.0f; int contactCount = 0; foreach (Arbiter ar in World.ArbiterMap.Arbiters) { contactCount += ar.ContactList.Count; } Display.DisplayText[1] = World.CollisionSystem.ToString(); Display.DisplayText[0] = "Current Scene: " + PhysicScenes[currentScene].ToString(); // Display.DisplayText[2] = "Arbitercount: " + World.ArbiterMap.Arbiters.Count.ToString() + ";" + " Contactcount: " + contactCount.ToString(); Display.DisplayText[3] = "Islandcount: " + World.Islands.Count.ToString(); Display.DisplayText[4] = "Bodycount: " + World.RigidBodies.Count + " (" + activeBodies.ToString() + ")"; Display.DisplayText[5] = (multithread) ? "Multithreaded" : "Single Threaded"; int entries = (int)Jitter.World.DebugType.Num; double total = 0; for (int i = 0; i < entries; i++) { World.DebugType type = (World.DebugType)i; Display.DisplayText[8 + i] = type.ToString() + ": " + ((double)World.DebugTimes[i]).ToString("0.00"); total += World.DebugTimes[i]; } Display.DisplayText[8 + entries] = "------------------------------"; Display.DisplayText[9 + entries] = "Total Physics Time: " + total.ToString("0.00"); //float tot = (float)(1000.0 / total); //string test = (int)tot + ""; //Console.WriteLine(tot + ""); Display.DisplayText[10 + entries] = "Physics Framerate: " + (int)(1000.0 / total) + " fps"; // + (1000.0 / total).ToString("0") /* #if(WINDOWS) * Display.DisplayText[6] = "gen0: " + GC.CollectionCount(0).ToString() + * " gen1: " + GC.CollectionCount(1).ToString() + * " gen2: " + GC.CollectionCount(2).ToString(); #endif */ }
public void UpdatePhysicsInformation(GameTime gameTime, World world) { _accUpdateTime += (float)gameTime.ElapsedGameTime.TotalSeconds; if (_accUpdateTime < 0.1f) { return; } _accUpdateTime = 0.0f; int contactCount = 0; int activeBodies = 0; // Count contacts foreach (Arbiter ar in world.ArbiterMap.Arbiters) { contactCount += ar.ContactList.Count; } // Count active bodies foreach (RigidBody body in world.RigidBodies) { if (body.IsActive) { activeBodies++; } } _displayText[1] = world.CollisionSystem.ToString(); _displayText[2] = "Arbitercount: " + world.ArbiterMap.Arbiters.Count + ";" + " Contactcount: " + contactCount; _displayText[3] = "Islandcount: " + world.Islands.Count; _displayText[4] = "Bodycount: " + world.RigidBodies.Count + " (" + activeBodies + ")"; _displayText[6] = "gen0: " + GC.CollectionCount(0) + " gen1: " + GC.CollectionCount(1) + " gen2: " + GC.CollectionCount(2); int entries = (int)World.DebugType.Num; double total = 0; for (int i = 0; i < entries; i++) { World.DebugType type = (World.DebugType)i; _displayText[8 + i] = type + ": " + world.DebugTimes[i].ToString("0.00"); total += world.DebugTimes[i]; } _displayText[8 + entries] = "------------------------------"; _displayText[9 + entries] = "Total Physics Time: " + total.ToString("0.00"); float frameRate = (float)(1000.0d / total); _displayText[10 + entries] = "Physics Framerate: " + (float.IsInfinity(frameRate) ? "-" : frameRate.ToString("0")) + " fps"; }
private void UpdateDisplayText(GameTime time) { accUpdateTime += (float)time.ElapsedGameTime.TotalSeconds; if (accUpdateTime < 0.1f) { return; } accUpdateTime = 0.0f; int contactCount = 0; foreach (Arbiter ar in World.ArbiterMap.Arbiters) { contactCount += ar.ContactList.Count; } Display.DisplayText[1] = World.CollisionSystem.ToString(); Display.DisplayText[0] = "Current Scene: " + PhysicScenes[currentScene].ToString(); // Display.DisplayText[2] = "Arbitercount: " + World.ArbiterMap.Arbiters.Count.ToString() + ";" + " Contactcount: " + contactCount.ToString(); Display.DisplayText[3] = "Islandcount: " + World.Islands.Count.ToString(); Display.DisplayText[4] = "Bodycount: " + World.RigidBodies.Count + " (" + activeBodies.ToString() + ")"; Display.DisplayText[5] = (multithread) ? "Multithreaded" : "Single Threaded"; int entries = (int)Jitter2D.World.DebugType.Num; double total = 0; for (int i = 0; i < entries; i++) { World.DebugType type = (World.DebugType)i; Display.DisplayText[8 + i] = type.ToString() + ": " + ((double)World.DebugTimes[i]).ToString("0.00"); total += World.DebugTimes[i]; } Display.DisplayText[8 + entries] = "------------------------------"; Display.DisplayText[9 + entries] = "Total Physics Time: " + total.ToString("0.00"); Display.DisplayText[10 + entries] = "Physics Framerate: " + (1000.0d / total).ToString("0") + " fps"; Display.DisplayText[6] = "gen0: " + GC.CollectionCount(0).ToString() + " gen1: " + GC.CollectionCount(1).ToString() + " gen2: " + GC.CollectionCount(2).ToString() + " total mem: " + (GC.GetTotalMemory(false) / 1024).ToString() + "KB"; }