- Early-Access End Date
- Mar 9, 2026
Early Access....this will become free on March 9th
Transform your VirtaMate scenes with dynamic orbital motion! The Revolve Plugin brings professional cinematography and animation to your scenes by creating smooth, customizable revolution movements around any parent object. Perfect for cameras, lights, and custom atoms, this plugin offers precise orbital control with adjustable radius, height, and rotation speed. Unlock creative camera work with randomized movement patterns, arc-restricted positioning, and smooth easing curves that create natural, cinematic motion. Advanced features include multi-axis revolution (X, Y, Z), look-at tracking with customizable offsets, position and rotation isolation controls, and preset saving for repeatable animations. Whether you're crafting the perfect camera dolly shot, creating dynamic lighting effects, or choreographing complex multi-object animations, Revolve Plugin delivers studio-quality motion control with an intuitive interface that puts creative power at your fingertips.
Transform your VirtaMate scenes with dynamic orbital motion! The Revolve Plugin brings professional cinematography and animation to your scenes by creating smooth, customizable revolution movements around any parent object. Perfect for cameras, lights, and custom atoms, this plugin offers precise orbital control with adjustable radius, height, and rotation speed. Unlock creative camera work with randomized movement patterns, arc-restricted positioning, and smooth easing curves that create natural, cinematic motion. Advanced features include multi-axis revolution (X, Y, Z), look-at tracking with customizable offsets, position and rotation isolation controls, and preset saving for repeatable animations. Whether you're crafting the perfect camera dolly shot, creating dynamic lighting effects, or choreographing complex multi-object animations, Revolve Plugin delivers studio-quality motion control with an intuitive interface that puts creative power at your fingertips.
VirtaMate Revolve Plugin - Control Reference Guide
PARENT SELECTION
Parent Atom
- What it does: Selects which atom (person, object, etc.) will be the center point of revolution
- Default: Auto-detected based on current linkage (if already set)
- Notes: Must select an atom before Parent Node becomes available
Parent Node
- What it does: Selects the specific bone/controller/node within the parent atom to orbit around
- Default: Auto-selected to mainController when available
- Notes: For Person atoms, shows DAZ bones and controllers; for other atoms shows object/control nodes
Update Parent Button
- What it does: Manually refreshes the parent relationship and recalculates the initial position
- When to use: After manually changing parent in VirtaMate or if orbit seems incorrect
BASIC MOTION CONTROLS
Enabled
- What it does: Master on/off switch for all plugin functionality
Revolution Speed
- What it does: Controls rotation speed in degrees per second (continuous mode) or maximum speed (randomization mode)
- Range: 0-360 degrees/second
- Overridden by: Randomization mode uses Movement Time instead
- Notes: Only active when Randomization is OFF
Revolution Axis
- What it does: Defines which axis the object revolves around
- Options: Y (Up), X (Right), Z (Forward)
- Default: Y (Up)
- Notes: Axis is relative to the parent object's orientation
Clockwise
- What it does: Direction of rotation (clockwise vs counter-clockwise)
- Default: On (clockwise)
- Overridden by: Randomization with "Random Both Directions" enabled
Radius
- What it does: Distance from parent center point
- Range: 0-10 units
- Default: 1.0
- Overridden by: Radius Randomizer when Randomization is enabled
- Notes: Acts as base value when randomization is active
Height Offset
- What it does: Vertical offset along the revolution axis
- Range: -5 to +5 units
- Default: 0
- Overridden by: Height Randomizer when Randomization is enabled
- Notes: Acts as base value when randomization is active
CAMERA/LOOK-AT CONTROLS
Disable Look At
- What it does: Prevents the object from automatically rotating to face the parent
- Default: Off (look-at is active)
- Notes: Turn ON if you want the object to maintain its own rotation instead of always facing the parent
Parent Face Offset
- What it does: Rotates the starting position around the parent by specified degrees
- Range: 0-360 degrees
- Default: 0
- Notes: Useful for positioning camera starting angle without changing the parent's rotation
Look At Height Offset
- What it does: Adjusts the vertical point the object looks at (relative to parent center)
- Range: -0.2 to +0.2 units
- Default: 0
- Notes: Positive values look higher, negative values look lower; only works when Look At is enabled
SMOOTHING & ISOLATION CONTROLS
Position Smoothing
- What it does: Smooths parent position changes (not revolution movement itself)
- Range: 0-20 (higher = slower smoothing)
- Default: 5
- Notes: 0 = no smoothing (instant), 20 = maximum smoothing. Does NOT affect orbital motion, only parent movement tracking
Rotation Smoothing
- What it does: Smooths the look-at rotation changes
- Range: 0-20 (higher = slower smoothing)
- Default: 5
- Notes: Only applies when "Disable Look At" is OFF
Ignore Parent Position X/Y/Z
- What it does: Locks the object to a specific world position on selected axes while still orbiting
- Default: All off
- Notes: When enabled, captures current position on that axis and maintains it even if parent moves
Ignore Parent Rotation X/Y/Z
- What it does: Prevents parent rotation changes from affecting the orbit plane on selected axes
- Default: All ON (X, Y, Z)
- Notes: When ON, orbit maintains its orientation in world space; when OFF, orbit rotates with parent
Reset Position Button
- What it does: Resets angle to 0°, clears all stored isolation positions, and stops current movement
- When to use: To return to starting position or fix issues with isolation states
RANDOMIZATION CONTROLS
Randomization
- What it does: Master toggle - switches from continuous rotation to random movement mode
- Default: Off
- Overrides: When ON, Revolution Speed becomes max speed limit instead of constant speed
- Notes: All settings below only work when this is enabled
Random Both Directions
- What it does: Allows random movements in both clockwise and counter-clockwise directions
- Default: Off
- Auto-enabled by: Front Half Only or Back Half Only
- Notes: When off, only moves in one direction (based on Clockwise setting)
Movement Time Min/Max
- What it does: Random duration range for each movement between positions
- Range: 0.1-10 seconds
- Defaults: Min=0.5, Max=3.0
- Notes: Each movement randomly picks a time within this range
Random Distance Min/Max
- What it does: Angle range (in degrees) to travel per random movement
- Range: 1-360 degrees
- Defaults: Min=30, Max=90
- Overridden by: Front Half Only or Back Half Only restricts to arc range
- Notes: Determines how far the object moves each time
Height Randomizer Amount
- What it does: Variation range added/subtracted from base Height Offset
- Range: 0-10 units
- Default: 1.0
- Notes: Uses Height Offset as center value
Radius Randomizer Amount
- What it does: Variation range added/subtracted from base Radius
- Range: 0-10 units
- Default: 0.5
- Modified by: Height Distance Offset (see below)
- Notes: Uses Radius as center value
Height Distance Offset
- What it does: Multiplier that increases radius based on height difference from base
- Range: 0-5
- Default: 0
- Notes: If set to 1.0, object moves 1 unit farther out for every 1 unit higher/lower it goes. Creates more natural camera movements.
View Offset Randomizer
- What it does: Random tilt angle range (in degrees) for look-at direction
- Range: 0-90 degrees
- Default: 0
- Notes: Only works when "Disable Look At" is OFF; adds Dutch angle/tilt to camera
ARC RESTRICTION CONTROLS
Front Half Only
- What it does: Constrains random positions to the front arc (in front of parent's forward direction)
- Default: Off
- Auto-sets: Random Both Directions to ON
- Conflicts with: Back Half Only (mutually exclusive)
- Uses: Arc Range setting to define the front arc width
Back Half Only
- What it does: Constrains random positions to the back arc (behind parent's forward direction)
- Default: Off
- Auto-sets: Random Both Directions to ON
- Conflicts with: Front Half Only (mutually exclusive)
- Uses: Arc Range setting to define the back arc width
Arc Range
- What it does: Defines the arc width (in degrees) when using Front/Back Half Only
- Range: 10-180 degrees
- Default: 180
- Notes: 180° = full hemisphere; 90° = quarter circle; only applies when Front/Back Half is enabled
EASING & MOTION QUALITY
Easing
- What it does: Enables smooth acceleration/deceleration for random movements
- Default: On
- Overrides: When OFF, uses Revolution Speed for constant-velocity movement
- Conflicts with: Smooth Curve Motion (both use different motion algorithms)
- Notes: Recommended ON for natural camera movements
Pause Time
- What it does: Wait duration (in seconds) at each position before moving to next
- Range: 0-30 seconds
- Default: 2.0
- Modified by: System adds random variation (1.0x to 1.5x this value)
- Notes: Only applies when Easing is ON
Easing Amount
- What it does: Controls how much easing is applied (linear to full ease-in-out)
- Range: 0-1
- Default: 0.5
- Notes: 0 = linear motion, 1 = maximum ease-in-out; only applies when Easing is ON
Smooth Curve Motion
- What it does: Uses spline interpolation for ultra-smooth curved paths between random waypoints
- Default: Off
- Overrides: When ON, disables Easing and Pause Time
- Notes: Generates continuous flowing motion through multiple waypoints; more CPU intensive
PRESET MANAGEMENT
Save Preset Button
- What it does: Saves all current settings to a .json file
- Location: Saves/PluginPresets/ObjectRevolvePlugin/
- Notes: Useful for saving complex randomization configurations
Load Preset Button
- What it does: Loads previously saved settings from a .json file
- Notes: Restores all parameters including parent selection
CONTROL INTERACTION SUMMARY
What DISABLES Other Controls:
- Enabled = OFF → Everything disabled
- Randomization = ON → Disables: Revolution Speed (constant), Clockwise direction
- Easing = OFF (with Randomization ON) → Disables: Pause Time, Easing Amount, uses Revolution Speed instead
- Smooth Curve Motion = ON → Disables: Easing, Pause Time, uses Movement Time for segments
- Disable Look At = ON → Disables: Look At Height Offset, View Offset Randomizer
- Front Half Only = ON → Disables: Back Half Only
- Back Half Only = ON → Disables: Front Half Only
What MODIFIES Other Controls (but doesn't disable):
- Randomization = ON → Radius/Height Offset become base values, not absolute
- Height Distance Offset > 0 → Modifies effective Radius based on height variation
- Ignore Parent Position/Rotation → Captures and freezes specific axes
- Parent Face Offset → Rotates the orbit starting position