• Hi Guest!

    We are extremely excited to announce the release of our first Beta for VaM2, the next generation of Virt-A-Mate which is currently in development.
    To participate in the Beta, a subscription to the Entertainer or Creator Tier is required. Once subscribed, download instructions can be found here.

    Click here for information and guides regarding the VaM2 beta. Join our Discord server for more announcements and community discussion about VaM2.
Radial Menu

Plugins + Scripts Radial Menu

Download [0.04 MB]
This plugin is a simple radial menu that can be used in desktop and VR mode to trigger actions.

I built this as I wanted a really quick way to trigger some behavior with a single button press, without buttons all over the UI that I found to break immersion. It won't win any design awards, but it works well enough.

Features

You can add a default menu to the scene, or individual atoms can have their own menu. If you point at an atom with a menu defined, it will display that menu. If no atom menu is hit it shows the default menu.

Default Menu
default_menu.png


Atom Context Menu

atom_menu.png


For example, a video player can have a menu with play/pause/stop, or a person Atom with various poses, while the default menu can have other global options like "Start Scene", "Scene 2", etc.

You can define up to 6 menu items.

menu_tab.png


You can change various settings from the settings tab (only available on RadialMenu.cslist, not menu targets)

settings_tab.png


Settings:
  • Visible in Edit Mode - shows the menu when in edit mode. Off by default as in VR it competes with the Action button (button options are limited in VR sadly)
  • Controller - in VR whether to use the Left, Right or either controller to open the menu
  • Select Time - how quickly the menu select is triggered
  • Cancel Time - how long the menu remains open if no selection is made.
Usage

Note: By default, the menu is only shown in Play mode so it does not interfere with editing. You can change this in the settings tab.

Desktop

To open the menu, hit the R key. Note: You can rebind the menu key using AcidBubbles excellent Keybindings plugin.

The Menu will open, hover your mouse to the selected item for a second to select it. Releasing the 'R' key will cancel the menu, as will making no selection.

VR

To open the menu, hit the action button (A/X on Quest 3 controller).

Point at the desired menu item for a second to select it. The menu will close if no selection is made.

Installation

Create an Empty Atom in your scene and add RadialMenu.cslist to it. This will be the default menu for the scene.

Configure the menu items and triggers as desired.

For atom specific menus, add the RadialMenuTarget.cslist to the atom you want to have a menu. Configure the menu items and triggers as desired.

## Known Limitations

- SubScenes (or Parenting) does not work with radial menu. If the atom is in a subscene, the menu will not be displayed.
- The target atom requires a collider. If the atom does not have a collider (eg Empty, SimpleSign), the menu will display. You can work around this by using a CollisionTrigger and attaching RadialMenuTarget.cslist to that instead.

## Credits

MacGruber - for Utils Code
14mhz - for the excellent Tabbed UI control
Many other talented plugin creators whose code I referred to learn the ways of VAM

Share this resource

Back
Top Bottom