Add Unity Pipeline package support
This commit is contained in:
+49
@@ -0,0 +1,49 @@
|
||||
using Unity.Pipeline.Commands;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Unity.Pipeline.Runtime.Commands
|
||||
{
|
||||
/// <summary>
|
||||
/// Runtime logging commands for Unity Player builds.
|
||||
/// Provides console logging capabilities from CLI.
|
||||
/// </summary>
|
||||
public static class RuntimeLogCommand
|
||||
{
|
||||
[CliCommand("log", "Write a message to Unity console", MainThreadRequired = true, RuntimeOnly = true)]
|
||||
public static string LogMessage(
|
||||
[CliArg("message", "Message to log to console", Required = true)] string message,
|
||||
[CliArg("level", "Log level: info, warning, error")] string level = "info")
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(message))
|
||||
{
|
||||
return "Error: Message cannot be empty";
|
||||
}
|
||||
|
||||
Debug.developerConsoleVisible = false;
|
||||
var logLevel = level?.ToLowerInvariant() ?? "info";
|
||||
|
||||
switch (logLevel)
|
||||
{
|
||||
case "info":
|
||||
case "log":
|
||||
Debug.Log($"[Pipeline] {message}");
|
||||
return $"Logged info message: {message}";
|
||||
|
||||
case "warning":
|
||||
case "warn":
|
||||
Debug.LogWarning($"[Pipeline] {message}");
|
||||
return $"Logged warning message: {message}";
|
||||
|
||||
case "error":
|
||||
case "err":
|
||||
Debug.LogError($"[Pipeline] {message}");
|
||||
return $"Logged error message: {message}";
|
||||
|
||||
default:
|
||||
Debug.LogWarning($"[Pipeline] Unknown log level '{level}', defaulting to info: {message}");
|
||||
Debug.Log($"[Pipeline] {message}");
|
||||
return $"Logged message with default level: {message}";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user