前言
In-game Debug Console插件可以帮助您查看构建运行时显示调试消息(日志、警告、错误、异常)(以及编辑器中的断言),并使用其内置控制台执行命令。
使用uGUI创建用户界面,并在启用Sprite Packing时花费1次SetPass调用(和6到10个批次)。在游戏过程中可以调整或隐藏控制台窗口。一旦控制台被隐藏,一个小的弹出窗口将取代它的位置(可以拖动)。弹出窗口将显示自出现以来到达的日志数。单击弹出窗口后,将重新出现控制台窗口。
控制台窗口使用自定义的回收列表视图进行了优化,该视图很少调用Instantiate函数。
可以在打包发布以后,程序运行时方便的看到控制台信息,在一些特定程序开发的调试过程中非常有帮助。例如在开发一些AR程序的时候,如果官方没有提供支持,则只能将程序发布到移动设备后才能调试,这个时候,能在移动设备看到控制台信息对于开发会方便很多。
下载
https://assetstore.unity.com/packages/tools/gui/in-game-debug-console-68068
构建运行时调试消息
将【Plugins/IngameDebugConsole】目录下的【IngameDebugConsole】预制件添加到场景中即可
运行以后,图标会提示调试信息的数量,如果有错误,则图标会变成红色。
点击图标以后,会在屏幕上方显示调试信息的详细内容。
配置参数
IngameDebugConsole下暴露了很多参数,可以给我们配置,主要我们关注这几个
其他参数翻译
命令控制台
命令基本上是一个可以通过命令输入字段从控制台调用的函数。这个函数可以是静态的,也可以是一个实例函数(非静态的),在这种情况下,需要一个活的实例来调用这个函数。函数的返回类型可以是任何类型(包括void)。如果函数返回一个对象,它将被打印到控制台。该函数还可以接受任意数量的参数;唯一的限制适用于这些参数的类型。支持的参数类型有:
Primitive types, enums, string, Vector2, Vector3, Vector4, Color, Color32, Vector2Int, Vector3Int, Quaternion, Rect, RectInt, RectOffset, Bounds, BoundsInt, GameObject, any Component type, arrays/Lists of these supported types
注意GameObject和Component参数需要使用GameObject.Find赋值
注册自定义命令
只需简单地将IngameLogsConsole.ConsoleMethod属性添加到您的函数。这些函数必须是公共静态的,并且必须驻留在公共类中。
这里我只举了不需要挂载脚本最简单的实现方式,当然还有其他方式可以实现,具体可以参考官方文档:https://github.com/yasirkula/UnityIngameDebugConsole?tab=readme-ov-file
public class TestScript
{
[ConsoleMethod( "Log", "打印一条日志" )]
public static void Log()
{
Debug.Log("Log命令执行成功");
}
[ConsoleMethod( "cube", "在位置创建一个cube" )]
public static void CreateCubeAt( Vector3 position )
{
GameObject.CreatePrimitive( PrimitiveType.Cube ).transform.position = position;
}
[ConsoleMethod( "Log", "打印一条日志" )]
public static void Log( Vector3 position, int count )
{
Debug.Log($"位置:{
position},数量:{
count}");
}
}
执行无参数命令
log
执行带参数命令,可以使用" ' [] ()
包裹参数,当然如果你想也可以交替使用,只是不太美观而已
# 注意带参数名命令之间是有空格的
log [1 2 3] [10]
或
log (1 2 3) (10)
或者
log "1 2 3" "10"
或者
log '1 2 3' '10'
语法也有一定的灵活性:
- 您可以提供一个
[]
来表示Vector_.zero: - 您可以输入
1
代替true
,或输入0
代替false
- 您可以为空游戏
GameObject
对象 或者Component
组件参数输入null
效果
查看所有可用的命令
您可以使用控制台底部的输入字段输入命令。要查看所有可用的命令,只需键入“help“。
效果
完结
赠人玫瑰,手有余香!如果文章内容对你有所帮助,请不要吝啬你的点赞评论和关注
,你的每一次支持
都是我不断创作的最大动力。当然如果你发现了文章中存在错误
或者有更好的解决方法
,也欢迎评论私信告诉我哦!
好了,我是向宇
,https://xiangyu.blog.csdn.net
一位在小公司默默奋斗的开发者,闲暇之余,边学习边记录分享,站在巨人的肩膀上,通过学习前辈们的经验总是会给我很多帮助和启发!如果你遇到任何问题,也欢迎你评论私信或者加群找我, 虽然有些问题我也不一定会,但是我会查阅各方资料,争取给出最好的建议,希望可以帮助更多想学编程的人,共勉~