/// <summary> /// Returns a string with some internal engine information. Use this for debugging, especially when the game slows down. /// </summary> /// <returns>Internal engine information.</returns> public string GetDiagnostics() { string output = ""; output += "Number of objects in hierarchy: " + CountSubtreeSize(this) + '\n'; output += "OnBeforeStep delegates: " + (OnBeforeStep == null?0:OnBeforeStep.GetInvocationList().Length) + '\n'; output += "OnAfterStep delegates: " + (OnAfterStep == null?0:OnAfterStep.GetInvocationList().Length) + '\n'; output += "OnAfterRender delegates: " + (OnAfterRender == null?0:OnAfterRender.GetInvocationList().Length) + '\n'; output += Texture2D.GetDiagnostics(); output += _collisionManager.GetDiagnostics(); output += _updateManager.GetDiagnostics(); return(output); }