152 lines
4.5 KiB
C#
152 lines
4.5 KiB
C#
#if UNITY_CHANGE1 || UNITY_CHANGE2 || UNITY_CHANGE3
|
|
#warning UNITY_CHANGE has been set manually
|
|
#elif UNITY_4_0 || UNITY_4_1 || UNITY_4_2 || UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_4_7
|
|
#define UNITY_CHANGE1
|
|
#elif UNITY_5_0 || UNITY_5_1 || UNITY_5_2
|
|
#define UNITY_CHANGE2
|
|
#else
|
|
#define UNITY_CHANGE3
|
|
#endif
|
|
//use UNITY_CHANGE1 for unity older than "unity 5"
|
|
//use UNITY_CHANGE2 for unity 5.0 -> 5.3
|
|
//use UNITY_CHANGE3 for unity 5.3 (fix for new SceneManger system )
|
|
|
|
using UnityEngine;
|
|
using System.Collections;
|
|
using System.Threading;
|
|
#if UNITY_CHANGE3
|
|
using UnityEngine.SceneManagement;
|
|
#endif
|
|
|
|
|
|
|
|
//this script used for test purpose ,it do by default 100 logs + 100 warnings + 100 errors
|
|
//so you can check the functionality of in game logs
|
|
//just drop this scrip to any empty game object on first scene your game start at
|
|
public class TestReporter : MonoBehaviour
|
|
{
|
|
public int logTestCount = 100;
|
|
public int threadLogTestCount = 100;
|
|
public bool logEverySecond = true;
|
|
int currentLogTestCount;
|
|
Reporter reporter;
|
|
GUIStyle style;
|
|
Rect rect1;
|
|
Rect rect2;
|
|
Rect rect3;
|
|
Rect rect4;
|
|
Rect rect5;
|
|
Rect rect6;
|
|
|
|
Thread thread;
|
|
|
|
void Start()
|
|
{
|
|
Application.runInBackground = true;
|
|
|
|
reporter = FindObjectOfType(typeof(Reporter)) as Reporter;
|
|
Debug.Log("test long text sdf asdfg asdfg sdfgsdfg sdfg sfg" +
|
|
"sdfgsdfg sdfg sdf gsdfg sfdg sf gsdfg sdfg asdfg " +
|
|
"sdfgsdfg sdfg sdf gsdfg sfdg sf gsdfg sdfg asdfg " +
|
|
"sdfgsdfg sdfg sdf gsdfg sfdg sf gsdfg sdfg asdfg " +
|
|
"sdfgsdfg sdfg sdf gsdfg sfdg sf gsdfg sdfg asdfg " +
|
|
"sdfgsdfg sdfg sdf gsdfg sfdg sf gsdfg sdfg asdfg ssssssssssssssssssssss" +
|
|
"asdf asdf asdf asdf adsf \n dfgsdfg sdfg sdf gsdfg sfdg sf gsdfg sdfg asdf" +
|
|
"asdf asdf asdf asdf adsf \n dfgsdfg sdfg sdf gsdfg sfdg sf gsdfg sdfg asdf" +
|
|
"asdf asdf asdf asdf adsf \n dfgsdfg sdfg sdf gsdfg sfdg sf gsdfg sdfg asdf" +
|
|
"asdf asdf asdf asdf adsf \n dfgsdfg sdfg sdf gsdfg sfdg sf gsdfg sdfg asdf" +
|
|
"asdf asdf asdf asdf adsf \n dfgsdfg sdfg sdf gsdfg sfdg sf gsdfg sdfg asdf");
|
|
|
|
style = new GUIStyle();
|
|
style.alignment = TextAnchor.MiddleCenter;
|
|
style.normal.textColor = Color.white;
|
|
style.wordWrap = true;
|
|
|
|
for (int i = 0; i < 10; i++) {
|
|
Debug.Log("Test Collapsed log");
|
|
Debug.LogWarning("Test Collapsed Warning");
|
|
Debug.LogError("Test Collapsed Error");
|
|
}
|
|
|
|
for (int i = 0; i < 10; i++) {
|
|
Debug.Log("Test Collapsed log");
|
|
Debug.LogWarning("Test Collapsed Warning");
|
|
Debug.LogError("Test Collapsed Error");
|
|
}
|
|
|
|
rect1 = new Rect(Screen.width / 2 - 120, Screen.height / 2 - 225, 240, 50);
|
|
rect2 = new Rect(Screen.width / 2 - 120, Screen.height / 2 - 175, 240, 100);
|
|
rect3 = new Rect(Screen.width / 2 - 120, Screen.height / 2 - 50, 240, 50);
|
|
rect4 = new Rect(Screen.width / 2 - 120, Screen.height / 2, 240, 50);
|
|
rect5 = new Rect(Screen.width / 2 - 120, Screen.height / 2 + 50, 240, 50);
|
|
rect6 = new Rect(Screen.width / 2 - 120, Screen.height / 2 + 100, 240, 50);
|
|
|
|
thread = new Thread(new ThreadStart(threadLogTest));
|
|
thread.Start();
|
|
}
|
|
|
|
void OnDestroy()
|
|
{
|
|
thread.Abort();
|
|
}
|
|
|
|
void threadLogTest()
|
|
{
|
|
for (int i = 0; i < threadLogTestCount; i++) {
|
|
Debug.Log("Test Log from Thread");
|
|
Debug.LogWarning("Test Warning from Thread");
|
|
Debug.LogError("Test Error from Thread");
|
|
}
|
|
}
|
|
|
|
float elapsed;
|
|
void Update()
|
|
{
|
|
int drawn = 0;
|
|
while (currentLogTestCount < logTestCount && drawn < 10) {
|
|
Debug.Log("Test Log " + currentLogTestCount);
|
|
Debug.LogError("Test LogError " + currentLogTestCount);
|
|
Debug.LogWarning("Test LogWarning " + currentLogTestCount);
|
|
drawn++;
|
|
currentLogTestCount++;
|
|
}
|
|
|
|
elapsed += Time.deltaTime;
|
|
if (elapsed >= 1) {
|
|
elapsed = 0;
|
|
Debug.Log("One Second Passed");
|
|
}
|
|
}
|
|
|
|
void OnGUI()
|
|
{
|
|
if (reporter && !reporter.show) {
|
|
GUI.Label(rect1, "Draw circle on screen to show logs", style);
|
|
GUI.Label(rect2, "To use Reporter just create reporter from reporter menu at first scene your game start", style);
|
|
if (GUI.Button(rect3, "Load ReporterScene")) {
|
|
#if UNITY_CHANGE3
|
|
SceneManager.LoadScene("ReporterScene");
|
|
#else
|
|
Application.LoadLevel("ReporterScene");
|
|
#endif
|
|
}
|
|
if (GUI.Button(rect4, "Load test1")) {
|
|
#if UNITY_CHANGE3
|
|
SceneManager.LoadScene("test1");
|
|
#else
|
|
Application.LoadLevel("test1");
|
|
#endif
|
|
}
|
|
if (GUI.Button(rect5, "Load test2")) {
|
|
#if UNITY_CHANGE3
|
|
SceneManager.LoadScene("test2");
|
|
#else
|
|
Application.LoadLevel("test2");
|
|
#endif
|
|
}
|
|
GUI.Label(rect6, "fps : " + reporter.fps.ToString("0.0"), style);
|
|
}
|
|
}
|
|
|
|
}
|