using UnityEngine; using System.Collections; public class DebugLogPanel : MonoBehaviour { uint qsize = 15; // number of messages to keep Queue myLogQueue = new Queue(); void Start() { Debug.Log("SpaceRace!"); Debug.Log("WSAD - Strafe"); Debug.Log("Mouse 1 - Thrust"); Debug.Log("Mouse 2 - Decelerate"); Debug.Log("Space - Respawn"); Debug.Log("F10 - Exit"); } void OnEnable() { Application.logMessageReceived += HandleLog; } void OnDisable() { Application.logMessageReceived -= HandleLog; } void HandleLog(string logString, string stackTrace, LogType type) { // myLogQueue.Enqueue("[" + type + "] : " + logString); myLogQueue.Enqueue(logString); if (type == LogType.Exception) myLogQueue.Enqueue(stackTrace); while (myLogQueue.Count > qsize) myLogQueue.Dequeue(); } void OnGUI() { GUILayout.BeginArea(new Rect(0, 0, 400, Screen.height)); GUILayout.Label("\n" + string.Join("\n", myLogQueue.ToArray())); GUILayout.EndArea(); } }