All Projects → Elringus → UnityConsole

Elringus / UnityConsole

Licence: MIT license
Development console for Unity game engine

Programming Languages

C#
18002 projects
shell
77523 projects

Projects that are alternatives of or similar to UnityConsole

vscode-cc65-debugger
VSCode extension for CC65 debugging with VICE or Mesen
Stars: ✭ 26 (-50%)
Mutual labels:  debugging-tool
tracing
Utilities for tracing program execution line-by-line
Stars: ✭ 32 (-38.46%)
Mutual labels:  debugging-tool
Wasmite
Now WebAssembly has proper testing, unit-testing and debugging 🤗
Stars: ✭ 20 (-61.54%)
Mutual labels:  debugging-tool
Vaser
Vaser is a powerful high performance event based network engine library for C# .Net. It’s possible to start multiple servers in one program and use the same network code for all servers. In the network communication are all strings are omitted, instead it is based on a unique binary identifier, which the CPU and memory relieves massively.
Stars: ✭ 23 (-55.77%)
Mutual labels:  unity3d-plugin
engine-plugin-unity3d
Unity3D plugin for iFun Engine
Stars: ✭ 15 (-71.15%)
Mutual labels:  unity3d-plugin
Degu
🐭 Degu is debug utility for iOS, tvOS and macOS.
Stars: ✭ 24 (-53.85%)
Mutual labels:  debugging-tool
debug
Debugging functionality for Ruby
Stars: ✭ 706 (+1257.69%)
Mutual labels:  debugging-tool
devmod
Developer Module for debugging web applications
Stars: ✭ 16 (-69.23%)
Mutual labels:  debugging-tool
PyExt
WinDbg Extensions for Python
Stars: ✭ 56 (+7.69%)
Mutual labels:  debugging-tool
unityAndroidSensors
Access to android sensors for Unity
Stars: ✭ 14 (-73.08%)
Mutual labels:  unity3d-plugin
Unity-CrossPlatformAPI
A unity plugin that provides a unified cross-platform API
Stars: ✭ 17 (-67.31%)
Mutual labels:  unity3d-plugin
SqlCipher4Unity3D
💾 SqlCipher made easy for Unity3d
Stars: ✭ 119 (+128.85%)
Mutual labels:  unity3d-plugin
PrefabEditor
You can edit Prefab which could not be edited much unless you place it on Scene.
Stars: ✭ 23 (-55.77%)
Mutual labels:  unity3d-plugin
unity-prefab-quickadd
A Unity extension for quickly adding prefabs to the scene by creating shortcuts in the Hierarchy right-click menu.
Stars: ✭ 39 (-25%)
Mutual labels:  unity3d-plugin
trickster
user-friendly linux memory hacking library
Stars: ✭ 50 (-3.85%)
Mutual labels:  debugging-tool
puts debuggerer
Ruby library for improved puts debugging, automatically displaying bonus useful information such as source line number and source code.
Stars: ✭ 82 (+57.69%)
Mutual labels:  debugging-tool
twitter-kit-unity
Twitter Kit for Unity
Stars: ✭ 69 (+32.69%)
Mutual labels:  unity3d-plugin
Zenject-2019
Dependency Injection Framework for Unity3D
Stars: ✭ 2,567 (+4836.54%)
Mutual labels:  unity3d-plugin
telnetspy
Telnet Server For ESP8266: Cloning the serial port via Telnet. "Debugging over the air"
Stars: ✭ 41 (-21.15%)
Mutual labels:  debugging-tool
docker-pudb
Debug Python code within a Docker container remotely from your terminal using pudb
Stars: ✭ 18 (-65.38%)
Mutual labels:  debugging-tool

Installation

Use UPM to install the package via the following Git URL: https://github.com/Elringus/UnityConsole.git#package.

Minimum supported Unity version: 2019.1

Description

Allows executing static C# methods via an on-demand console IMGUI.

How to Use

Register commands by adding ConsoleCommand attribute to static C# methods. The attribute has an optional string argument, allowing to assign an alias (shortcut).

[UnityConsole.ConsoleCommand("hello")]
public static void PrintHelloWorld () => Debug.Log("Hello World!");

[UnityConsole.ConsoleCommand]
public static void Add (int arg1, int arg2) => Debug.Log(arg1 + arg2);

Enable the console at runtime with:

UnityConsole.ConsoleGUI.Initialize()

Toggle console GUI with ~ key. The key can be overridden via ConsoleGUI.ToggleKey public static property. It's also possible to toggle console with a multi-(3 or more) touch on touch screen devices.

In the console, type either method name or alias of a registered command and press Enter key to invoke the method. Method arguments are separated with a single whitespace.

Use Up and Down to navigate over previously executed commands.

To disable the console at runtime:

UnityConsole.ConsoleGUI.Destroy()

Preprocessors

It's possible to inject delegates to modify the console input before it's send for execution, eg:

using UnityConsole;
using UnityEngine;

public class TestPreprocessor : MonoBehaviour
{
    private void OnEnable ()
    {
        InputPreprocessor.AddPreprocessor(PreprocessInput);
    }

    private void OnDisable ()
    {
        InputPreprocessor.RemovePreprocessor(PreprocessInput);
    }

    private string PreprocessInput (string input)
    {
        if (input != null && input.StartsWith("@"))
        {
            Debug.Log(input);
            return null;
        }
        return input;
    }
}

— will intercept commands starting with @ and instead log the input. Notice, that when a preprocessor delegate returns null it will stop the default console behaviour.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].