如何写到统一游戏机的控制台构建后?

问题描述

我正在统一制造一个游戏服务器,并在-batchmode中运行它。我已经尝试过Console.WriteLineDebug.Log,但是都没有实际在控制台上打印任何内容(我正在.bat文件中运行)。我应该如何写到控制台?有没有简单的方法可以执行此操作,或者我还应该如何显示有关服务器运行的信息?

解决方法

进行了一些搜索。似乎只有在使用-batchmode参数和-logFile来使用Debug.Log时,您才能登录到文件。

我确实设法找到了这个自定义控制台示例: https://garry.tv/unity-batchmode-console,如果您想付出更多努力以能够写入控制台。

类似的问题可能对您有用

https://answers.unity.com/questions/884197/redirecting-build-output-to-console-for-automated.html?_ga=2.177817063.358316465.1597205884-742321341.1597081109

,

即使没有显式定义其他日志位置,默认情况下,Unity始终会产生以下日志输出(请参见Log Files

PackageManager日志

  • Linux

    ~/.config/unity3d/upm.log
    
  • macOS

    ~/Library/Logs/Unity/upm.log
    
  • Windows

    C:\Users\username\AppData\Local\Unity\Editor\upm.log
    

编辑日志

  • Linux

    ~/.config/unity3d/Editor.log
    
  • macOS

    ~/Library/Logs/Unity/Editor.log
    
  • Windows

    C:\Users\username\AppData\Local\Unity\Editor\Editor.log
    

玩家日志

  • Linux

    ~/.config/unity3d/CompanyName/ProductName/Player.log
    
  • macOS

    ~/Library/Logs/Company Name/Product Name/Player.log
    
  • Windows

    C:\Users\username\AppData\LocalLow\CompanyName\ProductName\Player.log
    

因此,构建完成后,您将对最后一个感兴趣,即玩家日志。通常,它是在您启动应用程序时创建的,但是直到应用程序完全关闭时才填充内容。

这里的例外是定义-logFile -,它直接将输出打印到stdout /终端-见下文。


如果您想要将日志输出重定向到其他文件或您可以使用的命令/标准输出(请参见Command Line Arguments

-logFile <pathname>

指定Unity将编辑器或Windows / Linux / OSX独立日志文件写入的位置。要输出到控制台,请为路径名指定-。在Windows上,指定-选项以使输出转到stdout,默认情况下不是控制台。

并像往常一样使用Debug.Log

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...