1.エフェクト表示
ステーションBの住所:ポータル
Unityリモートデバッグ機能
2.はじめに
MxDebug は、クロスプラットフォームの日記管理ツールであり 、MXFrameworkフレームワークのサブモジュールです。USBケーブルを接続する必要はなく、すべてのレベルのUnity Log情報を出力します。モジュール全体が分離され、侵入が少なく、シンプルで使いやすく、1つのAPIだけで開発プロジェクトに統合できます。不要なときはいつでも取り外すことができます。UIインターフェース全体は、基本的にUnityの「コンソール」UIインターフェースと同じです。ツールは受信側と入力側に分かれています。受信側はソースコードを提供するように開発されており、入力側は既存のプロジェクトに統合されています。1文のコードのみが元のプロジェクト(デバッグと印刷および例外情報)を出力します。パフォーマンスを節約するために、すべてのジャーナル出力をオフにすることもできます。
(MxDebugのUIインターフェイス)
、、 API
1.デバッグ機能をオンにします(デフォルトでオンになっていますが、正式に起動したらオフにすることをお勧めします)
public static void OpenDebug(){}
この機能はデフォルトでオンになっており、Unityのすべてのレベルのログ情報が入力されます
2.デバッグ機能をオフにします(プロジェクトが正式に開始されたときに、すべての日記出力をオフにすることをお勧めします)
public static void CloseDebug(){}
この機能は、Unityのすべてのログ出力とすべてのレベルのログ情報をオフにするためのものです。パフォーマンスを節約するために、プロジェクトが正式に開始されたときにすべてのログ出力をオフにすることをお勧めします。
3.リモートデバッグ
public static void RemoteDebug(){}
この機能は、プロジェクトのリモートデバッグに使用されます。すべてのログ情報は、UDPプロトコルを介してコンピューターのデバッグツール(受信側)に送信されます。これは、USBケーブルに接続する必要はなく、ADBコマンドやXcodeソフトウェアなしで表示できます。ログ。アプリケーションで例外またはエラーが発生すると、時間に応じてtxt形式のエラーメッセージがローカルに保存され、例外の理由、時間、および発生した例外またはエラーのタイプが詳細に記録されます。
3、統合する方法
1. GitHubに移動してMxDebug ツールをダウンロードし、 MxDebug / Tool / Debug.unitypackage(入力ターミナル)をプロジェクトにインポートします
2.すべての日記出力機能をオンまたはオフにします(コードは次のとおりです)
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Mx.Log;
using UnityEngine.UI;
namespace Mx.Example
{
/// <summary>测试打开或者关闭全部日记输出功能</summary>
public class TestCloseLog : MonoBehaviour
{
private Text m_ButtonText;
private bool m_IsOpenDebug = true;
private void Awake()
{
m_ButtonText = GameObject.Find("Button/Text").GetComponent<Text>();
InvokeRepeating("PrintLog", 0.2f, 0.2f);
}
public void OpenOrCloseLog()
{
m_IsOpenDebug = !m_IsOpenDebug;
if(m_IsOpenDebug)
{
DebugManager.Instance.OpenDebug();
m_ButtonText.text = "关闭日记输出";
}
else
{
DebugManager.Instance.CloseDebug();
m_ButtonText.text = "打开日记输出";
}
}
private void PrintLog()
{
int index1 = Random.Range(0, 3);
int index2 = Random.Range(0, 10);
if (index1 == 0)
{
Debug.Log(GetType() + "/PrintLog()/" + "请前往RemoteDebug工具查看Logo" + index2);
}
else if (index1 == 1)
{
Debug.LogWarning(GetType() + "/PrintLog()/" + "请前往RemoteDebug工具查看Logo" + index2);
}
else
{
Debug.LogError(GetType() + "/PrintLog()/" + "请前往RemoteDebug工具查看Logo" + index2);
}
}
}
}
3.リモートデバッグ機能(コードは以下の通り)
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Mx.Log;
namespace Mx.Example
{
/// <summary>测试远程调试功能</summary>
public class TestRemoteDebug : MonoBehaviour
{
private void Awake()
{
DebugManager.Instance.RemoteDebug();
InvokeRepeating("PrintLog", 0.2f, 0.2f);
}
private void PrintLog()
{
int index1 = Random.Range(0, 3);
int index2 = Random.Range(0, 10);
if (index1 == 0)
{
Debug.Log(GetType() + "/PrintLog()/" + "请前往RemoteDebug工具查看Logo" + index2);
}
else if (index1 == 1)
{
Debug.LogWarning(GetType() + "/PrintLog()/" + "请前往RemoteDebug工具查看Logo" + index2);
}
else
{
Debug.LogError(GetType() + "/PrintLog()/" + "请前往RemoteDebug工具查看Logo" + index2);
}
}
}
}
4. MxDebug / Assetsディレクトリの下のレシーバーはすべてC#コードであり、exeファイルまたは他のプラットフォームとして公開できます。二次開発にもなり得ます
ソースアドレス:https://github.com/yongliangchen/MxDebug
ビデオチュートリアル:https://www.bilibili.com/video/BV1sK411A7Bd
QQ交換グループ:1079467433