SAV Debug Console Quest


SAV Debug Console provides an easy-to-use runtime debug console to capture runtime Debug.Log type messages. Works with AR and VR for a live debug console. Works with Quest 2 and Quest 3!


by shadowandvv.works


Price History +

SAV Debug Console is a flexible and light weight prefab that creates a runtime debug console display that you can add to almost any Unity application. Capture runtime Debug.Log type messages. Works with Quest 2 and Quest 3 in both AR and VR for a live debug console.


Prefabs for the Meta Quest family of headsets provide an in-headset live debug console on both Quest 2 and Quest 3. Additionally, a prefab is provided to work with most Unity platforms.


Features:

  • SAV Debug Console can track the Meta Quest Family head set (always in view) or be pinned to any location in a running scene or editor scene
  • SAV Debug Console Meta Quest Family works with passthrough
  • Show log error details, or only the log message
  • Scrollable window
  • Colored text entries for faster error detection
  • Entries are date and time stamped
  • Small or large console display mode
  • Set background opacity for solid or see-thru or any color in between
  • Set text size and color
  • Light weight and fast
  • Easy to use and customize
  • Supports Windows, Android and IOS
  • Supports OVRCameraRigInteraction, OVRInteractionComprehensive and Building blocks

Unity version 2021.3.29f1 or later is required to use SAV Debug Console


Meta Quest Family Only:

  • A Pointable Canvas Module is required by SAV Debug Console for Interactions.
  • Meta Quest features, recommended practices and documentation change frequently.
  • Required Meta XR SDKs:
    • Meta XR Core SDK
  • Optional Meta XR SDKs:
    • Meta XR Interaction SDK


http://www.shadowandvv.works/SAVDebugConsole

I would welcome the donation of development headsets for other platforms so that I can offer a real-time head tracking debug console on every platform.



SAV Debug Console QuickStart:

  • Meta Quest Family Only:
    • For Controllers only:
      • Search for and drag the SAVDebugConsoleForQuest prefab into the hierarchy.
      • Assign the controller buttons to the SAVDebugConsoleForQuest button actions.
      • Reference: PackagesSAVDebugConsoleScenesSampleScene_Quest.
    • For Controller/Hand Interactactables only:
      • Setup interactors and interactactables and controllers (see below: Setup interactors and interactactables and controllers)
      • Search for and drag the SAVDebugConsoleForQuest_Interactable prefab into the hierarchy
      • Optional, Assign the controller buttons to the SAVDebugConsoleForQuest button actions.
      • Reference: PackagesSAVDebugConsoleScenesSampleScene_Quest_Interactable.
    • Position the SAVDebugConsole game object in view of the OVRCameraRig
      • If using "Track On Start", position the debug window relative to the TrackingSpace CenterEyeAnchor (not the scene's position)
      • * Turn off Tracking if you are having trouble seeing the startup location.
    • Build and run

  • All others (Windows/IOS/Android/Web):
    • During the asset import process, uncheck DebugConsoleManagerForQuest and uncheck DebugConsoleSettingsForQuest and DebugConsoleManagerForQuestInteractable
    • Search for and drag the SAVDebugConsole_Other prefab into the hierarchy
    • Drag a camera into SAVDebugConsole > DebugConsoleManager > DebugConsoleCanvas > Canvas Component > Event Camera
    • Or Change the Canvas Component to your needs
    • For keyboard control, assign the Keycodes to the SAVDebugConsole keyboard actions.
    • Position the SAVDebugConsole game object in view of the Camera
    • Play and/or Build and run
    • Reference: PackagesSAVDebugConsoleScenesSampleScene.


SAV Debug Console Settings:

  • Show Detail - When selected log message details will be displayed.
  • Background Color – Allow colored or transparent backgrounds.

Setting for Quest controllers:

  • Track On Start - Default Off. When selected the console will track the Headset/Camera at startup
    • Position the debug window relative to the TrackingSpace CenterEyeAnchor (not the scene's position)
  • Tracking On Off - Control button to turn on/off tracking
  • Size Big Small - Control button to grow/shrink height
  • List Detail On Off - Control button to show/hide error details
  • List Scroll Up - Control button to scroll up list
  • List Scroll Down - Control button to scroll down list
  • List Clear - Control button to clear list

Setting for Keyboards:

  • Size Big Small - Keycode to grow/shrink height
  • List Detail On Off - Keycode to show/hide error details
  • List Scroll Up - Keycode to scroll up list
  • List Scroll Down - Keycode to scroll down list
  • List Clear - Keycode to clear list


SAV Debug Console additional help:

Note that there is a transition time on application start where the console is not registered to receive Debug.Log messages. If this is a problem, you will need to delay startup of other assets until the SAV Debug Console is registered.


Optional Settings DebugConsoleManager:

  • Max Console Entries: Max number of SAV Debug Console entry history to keep.
    • Default 100
    • Increasing this value will potentially increase memory and decrease speed. **see "maximum display characters" above.
  • Max Log Characters: Log messages larger than this value will be truncated with "...".
    • Defualt 1024
      • Increasing this value will potentially increase memory and decrease speed.
  • Max Stack Characters: Stack Traces larger than this value will be truncated with "..."
    • Defualt 1024
      • Increasing this value will potentially increase memory and decrease speed.

Optional Settings DebugConsoleManager > DebugConsoleCanvas:

The recommended way to change the size is the Transform Scale for SAVDebugConsoleForQuest_Interactable / SAVDebugConsoleForQuest / SAVDebugConsole_Other.

  • Width: Set the SAVDebugConsole width
  • Height: Set the SAVDebugConsole height
  • Image > Color: Set the SAVDebugConsole background color

Changing SAV Debug Console default message text display attributes:

  • Search for the ConsoleLogStack prefab (PackagesSAVDebugConsolePrefabsConsoleLogStack)Search for the ConsoleLogMessage prefab (PackagesSAVDebugConsolePrefabsConsoleLogMessage)
    And/Or
    • Text > Font: Set SAV Debug Console default message text font
    • Text > Size: Set SAV Debug Console default message text size
    • Text > Color: Set SAV Debug Console default message text color

Setup interactors and interactactables and controllers:

* Some links may be out of date. Meta Quest features, recommended practices and documentation change frequently.


Building Blocks Only:

1) Drag in a Camera Rig

2) Drag in Hand Tracking

Optional:

4) Drag in Controller Tacking


OVRCameraRigInteraction:

“Getting Started with Interaction SDK”:

Reference: https://developer.oculus.com/documentation/unity/unity-isdk-getting-started/


Create a Pointable Canvas Module:

1. Under Hierarchy, add an empty GameObject named CanvasModule by right-clicking in the hierarchy and selecting Create Empty.

2. Under Inspector, add a Pointable Canvas Module by clicking the Add Component button and searching for Pointable Canvas Module.

Reference: https: //developer.oculus.com/documentation/unity/unity-isdk-create-ui/#choose-a-ui-type


RayInteractor length:

If you dont see the RayInteractor on SAV Debug Console, one setting to check is the Max Ray Length of the RayInteractor.

Default is 5.

To change it:

1. In the hierarchy search bar enter: t:RayInteractor

2a. Choose the Hand/Controller RayInteractor and update the Max Ray Length property.

And/Or

2b. Move the Transform Position Z closer to the CameraRig for the SAVDebugConsoleForQuest_Interactable / SAVDebugConsoleForQuest / SAVDebugConsole_Other gameobjects.