How to Disable Grabbing in Virt-a-Mate: A Complete Guide
Virt-a-Mate (VaM) is a physics-based sandbox simulation built primarily for VR, but also playable in desktop mode. One of its core interaction systems is grabbing — the ability to physically pick up, move, and manipulate objects, atoms, and characters within the scene. While grabbing is central to how VaM works, there are plenty of legitimate reasons you might want to disable or restrict it, whether you're locking down a scene for presentation, preventing accidental physics disruptions, or fine-tuning how interactions behave.
Here's what you need to know about how grabbing works in VaM and the different ways to control it.
What "Grabbing" Actually Means in Virt-a-Mate
In VaM, grabbing refers to the physics interaction system that lets users — either via VR controllers or mouse input in desktop mode — click and drag atoms, body parts, props, and scene objects. This includes:
- Moving entire atoms (characters, objects) around the scene
- Grabbing individual body nodes (hands, head, limbs) to pose characters
- Interacting with props and environment objects
Because VaM runs a live physics engine, grabbing directly influences how the simulation behaves. Unintended grabs can knock a carefully posed scene out of alignment, which is why controlling this behavior matters.
The Main Ways to Disable or Restrict Grabbing
There isn't a single "disable all grabbing" toggle in one place — VaM manages grab behavior at multiple levels, and where you disable it depends on what you're trying to prevent.
1. Disabling Atom-Level Grabbing
Each atom in VaM has its own control and physics settings. To prevent an individual atom from being grabbed and moved:
- Select the atom by clicking on it
- Open its Control tab in the atom's UI panel
- Look for the "Root Control" node — this is the primary handle used to move the entire atom
- Set its Position State and Rotation State to "Off" or "Lock"
Setting these to "Off" means the physics system won't respond to grab input for that node. Setting them to "Lock" pins them in place, so even if grabbed, they won't move.
You can apply this same approach to individual body control nodes (like hands or feet) if you only want to restrict grabbing on specific parts of a character rather than the whole atom.
2. Using the "Hidden" Atom State
Another approach is to set an atom to Hidden mode. Hidden atoms aren't directly selectable or grabbable through normal scene interaction. This is more of a workaround than a dedicated grab lock, but it's useful for protecting background elements or props you don't want accidentally disturbed.
3. Disabling Mouse Grab in Desktop Mode 🖱️
In desktop mode, VaM uses mouse input to grab and manipulate objects. If you find yourself accidentally grabbing things while navigating the scene, you can:
- Use the right-click context to deselect atoms before moving the camera
- Be aware that VaM separates "Select" mode from "Grab" mode — understanding which mode is active at any time reduces accidental interactions
Some users manage this by being deliberate about which atom (if any) is currently selected before using mouse-look navigation.
4. Scene-Level Protections via JSON Editing
VaM scenes are stored as JSON files, which means advanced users can edit scene files directly to pre-lock atom states before the scene loads. Each atom's control node properties — including position and rotation states — are stored in the scene JSON. Setting these to locked states in the file means they load already protected, without requiring manual configuration each time the scene opens.
This approach requires comfort with reading and editing JSON, but it's a reliable way to distribute locked scenes or maintain consistent setups across sessions.
5. Plugin-Based Grab Control
VaM has a robust plugin ecosystem built on C# scripting. Community-developed plugins can extend or override default interaction behavior, including grabbing. If your use case involves granular control — for example, allowing grabbing only in certain zones, or toggling grab permissions based on scene state — plugins offer capabilities that the base UI doesn't expose natively.
Plugin management in VaM happens through the Plugin tab on individual atoms or the Session Plugin Manager for session-wide effects.
Factors That Affect Which Approach Works for You
| Factor | Why It Matters |
|---|---|
| VR vs. Desktop mode | Controller-based grabbing in VR and mouse grabbing in desktop behave differently and may need separate handling |
| Atom type | Characters, props, and environment atoms have different control node structures |
| Scene complexity | More atoms means more individual nodes to lock if doing it manually |
| VaM version | UI layout and available options have shifted across versions; your build may present these settings differently |
| Plugin usage | Active plugins can alter or override default grab behavior in ways the base UI won't show |
What You're Actually Controlling 🎛️
It's worth understanding that VaM doesn't have a binary "grabbing on/off" switch because grabbing is part of the same system used to pose characters and set up scenes. Completely disabling grab would break the workflow VaM is built around.
What the available controls actually let you do is lock specific nodes against movement, hide atoms from selection, or use plugins to redefine interaction rules. The result functionally prevents unwanted grabbing, but the mechanism is always about controlling physics and selection state at the atom or node level.
Where Individual Setups Create Different Outcomes
The right method depends heavily on your specific situation. Someone using VaM in desktop mode to build static presentation scenes has very different needs from someone in VR running an interactive session with dynamic physics. A user comfortable with JSON editing can lock entire scenes with precision that isn't practical through the UI alone. Someone running community plugins may already have grab-management tools available that base VaM users don't.
The version of VaM you're running, how your scene is structured, whether you're in VR or desktop, and how much control you need over individual nodes versus whole atoms — all of these shape which combination of methods makes sense for your workflow.