PoseSaver Extended​

Updated with Big Update 2

Overview​

This plugin combines McKlinton SnapshotManager, hazmhox VAMOverlays, and VAMStory into one unified tool, inspired by Posesaver by Kimowal. It consolidates most functionality from these plugins into a single, fast, and easy-to-use interface. I created this to streamline my workflow, as using these plugins separately was quite slow. This plugin speeds up the process significantly. Features include: pose saving with storytelling capabilities, viewport (camera) control, fully customizable canvas thumbnails, timeline pose import, and scene management. With so many features, a brief summary isn't enoughβ€”see below for complete details on all script capabilities.

Acknowledgments: Thanks to all the great creators mentioned above, without whom this plugin would not exist.

This is a desktop plugin. Canvas features (fade, thumbnails and subtitles) won't work in VR, but all other functions should.

πŸ“Έ Core Pose Management​

Save & Load Poses​

What it does: Capture the complete state of your scene at any moment and restore it later with smooth animations.

What you can do:

  • Save poses for Person atoms β€” capture body positions, rotations, and all controller states
  • Create pose libraries for different scenarios (standing, sitting, action poses, etc.)
  • Build sequences of poses that tell a story or create animations
  • Save poses with the scene so they're always available when you reload
  • Export poses as preset files to share with others or use in different scenes
How it works: When you save a pose, the plugin captures all free controller positions and rotations for Person atoms, plus morph values.

Pose Editing & Management​

What it does: Modify existing poses without having to recreate them from scratch.

What you can do:

  • Recapture β€” Update a pose with current positions if you made small adjustments
  • Rename β€” Give poses meaningful names like Sitting_Relaxed or Action_Jump
  • Clone β€” Duplicate poses to create variations (e.g. Sitting_Relaxed β†’ Sitting_Formal)
  • Delete β€” Remove poses you no longer need
  • Reorder β€” Move poses up/down in the list to organize your sequence
  • Move Up/Down β€” Reorganize pose order for better storytelling flow
Why it matters: Instead of manually positioning everything again, you can quickly iterate on poses, create variations, and organize your scene efficiently.

Thumbnail System​

What it does: Automatically captures screenshots when you save poses, creating visual previews.

What you can do:

  • See at a glance what each pose looks like without loading it
  • Quickly identify poses in a sequence by their visual appearance
  • Use thumbnails in the main UI grid for visual navigation
  • Display thumbnails on-screen as clickable buttons for instant access
Visual workflow: When you save a pose, a screenshot is automatically taken. These thumbnails appear in the UI and can be overlaid on your main view as clickable buttons, making pose selection as easy as clicking a picture.


🎬 Auto-Play System​

What it does: Automatically progresses through your pose sequence with customizable timing.

What you can do:

  • Set different auto-next times for each pose (e.g. 3 seconds for quick cuts, 10 seconds for dramatic pauses)
  • Create hands-free presentations that play automatically
  • Build cinematic sequences that flow naturally without manual intervention
  • Override auto-play at any time by clicking a pose button
  • Loop through poses for continuous playback
Creative applications:

  • Create automatic photo shoots that cycle through poses
  • Build storytelling sequences that play out automatically
  • Set up demo scenes that showcase different poses
  • Create ambient scenes that slowly transition between states
How it works: Each pose can have its own "Auto Next Time" setting. When a pose loads, a timer starts counting after fade-in completes (if fade is enabled). When the timer completes, the next pose automatically loads. Set it to 0 to disable auto-play for that specific pose. All timers are automatically destroyed when you load a new pose to prevent conflicts.


✨ Fade Transitions​

What it does: Creates professional cinematic transitions between poses with fade-to-black effects and narration.

What you can do:

  • Fade Out/In β€” Create smooth transitions where the screen fades to black, then fades back in
  • Separate Controls β€” Set different durations for fade out and fade in independently
  • Pitch Black Segments β€” Add multiple segments of complete black screen with narration text
  • Styling β€” Customize narration text with different fonts, sizes, colors, and screen positions
  • Storytelling β€” Use fade transitions to create chapter breaks, scene changes, or dramatic pauses
Creative possibilities:

  • Chapter Transitions β€” "Chapter 1: The Beginning" appears during a 3-second black screen
  • Time Passes β€” "Three days later..." with a longer fade
  • Scene Changes β€” Multiple narration segments during one transition ("Morning..." β†’ "Afternoon..." β†’ "Evening...")
  • Dramatic Pauses β€” Extended black screen with text for emphasis
How it works: When a pose with fade transition loads, the screen fades out over your specified duration. During the pitch black period, you can display styled narration text. Then it fades back in. All timers (dialogs, timed triggers) start counting only after fade-in completes, ensuring perfect synchronization. When you load a new pose, all active timers are automatically destroyed to prevent conflicts.


πŸŽ₯ Camera System​

What it does: Save and restore camera positions, create camera sequences, and control focus distance.

What you can do:

  • Single Camera Position β€” Save one camera angle per pose for consistent framing
  • Camera Sequences β€” Save multiple camera checkpoints that play in sequence
  • Smooth Transitions β€” Animate camera movement between checkpoints with customizable duration
  • Easing Functions β€” Choose easing types for smooth camera movements (Linear, EaseIn, EaseOut, EaseInOut, EaseInQuad, EaseInCubic, EaseInQuart, EaseInExpo, and more)
  • Per-Checkpoint Easing β€” Set different easing types for each checkpoint, or use pose default
  • Focus Control β€” Save and restore camera focus distance for depth-of-field effects
  • Auto-Apply β€” Automatically move camera when pose loads
  • Loop Sequences β€” Make camera sequences loop continuously
  • Go to View β€” Instantly jump to any saved camera checkpoint
Creative applications:

  • Cinematic Shots β€” Wide establishing shot β†’ Medium shot β†’ Close-up
  • Orbital Movements β€” Camera circles around character smoothly with ease-in transitions
  • Zoom Sequences β€” Start wide, zoom in dramatically over multiple checkpoints with smooth easing
  • Dynamic Angles β€” Switch between different camera perspectives during one pose
How it works: Each pose can have multiple camera checkpoints. When you load a pose with camera sequences enabled, the camera smoothly moves through each checkpoint in order. You control the transition duration between each checkpoint and can choose easing functions (like EaseIn for gradual acceleration) for natural, cinematic camera movements. Each checkpoint can have its own easing type, or you can set a default easing type for the entire pose.

Camera Transition Timing (Important)​

  • With Fade Transitions: Camera transition timer starts after pitch black segments complete, but before fade-in begins. This is intentional β€” the camera begins moving during the black screen period, so when the scene fades in, the camera is already in motion or has reached its target position. This creates smoother, more professional transitions where the camera movement happens "behind the scenes" during the black screen.
  • Without Fade Transitions: Camera transition starts immediately when the pose loads.
  • Why this timing? By starting camera movement during the black screen (after pitch black segments), you get seamless transitions where the camera is already positioned correctly when the scene becomes visible. This prevents the jarring effect of seeing the camera move while the scene is visible, creating a more cinematic experience.

πŸ’¬ Dialog System​

What it does: Display speech/thought bubbles on Person atoms and on-screen subtitles, all with precise timing control.

What you can do:

  • Speech Bubbles β€” Show what characters are saying
  • Thought Bubbles β€” Display internal thoughts or narration
  • Subtitles β€” Show scene-wide narration or dialog at the bottom/top/center of the screen
  • Timing Control β€” Set delay before dialog appears and how long it stays visible
  • Multiple Dialogs β€” Add unlimited dialogs per person per pose
  • On Enter/Exit β€” Show dialogs when pose loads or when transitioning away
  • Test Functionality β€” Preview dialogs before saving to see how they look
  • Per-Person β€” Each Person atom can have their own dialogs
Creative storytelling:

  • Conversations β€” Multiple characters speaking in sequence
  • Internal Monologue β€” Thought bubbles reveal character's inner thoughts
  • Narration β€” Use dialogs to provide context or story information
  • Timed Reveals β€” Dialog appears after a delay to create dramatic timing
How it works: Dialogs are attached to specific Person atoms, while subtitles are global text anchored to the screen. You set when they appear (delay), how long they stay (lifetime), and when they trigger (on enter/exit). All dialog/subtitle timers start counting after fade-in completes (if fade is enabled), ensuring they appear at the right moment. When you load a new pose, all active dialog/subtitle timers are automatically destroyed to prevent overlap.


⚑ Trigger System​

What it does: Execute actions automatically based on events or time during pose playback using VaM's built-in trigger system.

How it works: PoseSaver uses VaM's EventTrigger system to execute actions. Each trigger can be configured with various actions from VaM's trigger library.

PoseSaver Trigger Types​

On Enter Triggers: Actions that fire automatically when a pose loads

  • Configured per-pose
  • Fires immediately when pose is applied
  • Perfect for initial setup actions
On Exit Triggers: Actions that fire when transitioning away from a pose

  • Configured per-pose
  • Fires when a new pose starts loading
  • Useful for cleanup or transition effects
Timed Triggers: Actions that fire at specific times during pose playback

  • Multiple timed triggers per pose
  • Each trigger has its own delay time
  • Timers start counting after fade-in completes (if fade is enabled)
  • All active trigger timers are automatically destroyed when you load a new pose
On Load Trigger: Special trigger that fires after scene loads

  • Configured globally (not per-pose)
  • Fires automatically when plugin initializes
  • Useful for scene setup or automatic pose loading

Available PoseSaver Trigger Actions​

  • Load Pose β€” Jump to any pose in your sequence (select pose by number)
  • Load Next Pose β€” Automatically load the next pose in sequence
  • Load Previous Pose β€” Automatically load the previous pose in sequence
  • Save New Pose β€” Capture and save current pose as new pose
  • Go to View β€” Jump to a specific camera checkpoint from current pose
  • Toggle Loop Checkpoint β€” Enable/disable camera sequence looping for current pose
  • Cancel Camera Transition β€” Stop current camera transition animation
Creative automation:

  • Branching Stories β€” Load different poses based on conditions using Load Pose action
  • Timed Events β€” Sound effects, animations, or other actions at precise moments
  • Camera Control β€” Automatically switch camera angles at specific times using Go to View
  • Scene Flow β€” Automatic progression through complex sequences with timed triggers
… and 50 more!


🎨 Screen Canvas​

What it does: Displays thumbnail buttons overlaid on your main view for instant pose access.

What you can do:

  • On-Screen Buttons β€” Click thumbnails directly in the viewport without opening UI
  • Layout Control β€” Arrange thumbnails horizontally or vertically
  • Direction Control β€” Reverse the order (left/right, up/down)
  • Positioning β€” Place canvas anywhere on screen with X/Y sliders
  • Size Control β€” Adjust thumbnail size for better visibility
  • Spacing β€” Control gap between thumbnails
  • Opacity β€” Make canvas semi-transparent so it doesn't block the view
  • Navigation β€” Previous/Next buttons when you have many poses
  • Column System β€” Organize many poses into columns with navigation
Workflow benefits:

  • Quick pose switching without opening plugin UI
  • Visual pose selection β€” see what you're clicking
  • Customizable placement β€” put buttons where they don't interfere
  • Professional presentation β€” clean overlay that doesn't clutter the scene
How it works: The canvas creates a transparent overlay on your main view. Thumbnail buttons are positioned based on your layout settings. When you click a thumbnail, that pose loads instantly. Navigation buttons appear automatically when you have more poses than fit in one column. The canvas automatically updates when you change poses in the options/settings, keeping the displayed pose in sync with your selection.


πŸ“¦ Object Management​

What it does: Save and restore positions, rotations, scales, and states of Custom Unity Assets (CUA) and Light atoms.

What you can do:

  • CUA Objects β€” Save positions, rotations, scales, and on/off states of props and objects
  • Light Atoms β€” Save light positions, rotations, settings, and control states
  • Multi-Object β€” Save unlimited objects per pose
  • State Preservation β€” Objects remember if they were on or off
  • Toggle Saving β€” Enable/disable saving CUA objects and lights per pose
  • Recapture β€” Update object positions without recreating the pose
Scene building:

  • Props β€” Chairs, tables, and other objects move with poses
  • Lighting β€” Different lighting setups for different poses
  • State Management β€” Objects turn on/off automatically with poses
  • Complex Scenes β€” Multiple objects all positioned correctly per pose
How it works: When you save a pose with object saving enabled, the plugin captures all CUA objects and Light atoms in the scene. Their positions, rotations, scales, and on/off states are saved. When you load the pose, everything is restored to match the saved state.


πŸ’Ύ Preset System​

What it does: Save and load complete pose sets as JSON files, including all features and settings.

What you can do:

  • Export Scenes β€” Save entire pose sequences with all dialogs, cameras, triggers, and settings
  • Share Content β€” Send preset files to others for use in their scenes
  • Backup Work β€” Keep copies of your pose sets as separate files
  • Cross-Scene β€” Use the same pose set in different scenes
  • Complete Preservation β€” All features saved: poses, dialogs, cameras, triggers, fade settings, canvas settings, font settings
  • Import β€” Load preset files to add poses to current scene or replace existing ones
Workflow:

  1. Create a complete story sequence, save as preset
  2. Share preset file with community
  3. Load preset in new scene to reuse poses
  4. Backup your work before making changes
How it works: Presets are JSON files that contain everything: all poses with their complete data (atom positions, morphs, dialogs, camera checkpoints, triggers, fade settings, etc.), plus plugin settings (canvas position, font preferences, etc.). You can save presets at any time and load them later, even in different scenes (as long as atom UIDs match).


⏱️ Timeline Import​

What it does: Import poses from Timeline plugin JSON exports, extracting animation clip poses including morphs.

What you can do:

  • Import from Timeline β€” Extract poses from Timeline plugin's JSON export files
  • Complete Import β€” Imports bone positions/rotations AND morph values from timeline
  • Morph Handling β€” Properly resets morphs not in JSON to 0
  • Merge Mode β€” Update existing poses with matching names
  • Add Mode β€” Create new poses with Timeline_{AnimationName} naming
  • Atom Selection β€” Choose which Person atom to apply poses to
Workflow benefits:

  • Convert Timeline animations into PoseSaver poses with full morph support
  • Reuse animation work in pose sequences
  • Merge Timeline poses with manually created poses
  • Build pose libraries from existing animations
  • Import complete pose data including character morphs
How it works: You select a Timeline JSON export file. The plugin extracts pose data from each animation clip's Pose tab, including geometry storable with all morph values. Morphs not present in the JSON are automatically reset to 0, ensuring consistent character appearance. Eyes, EyelidControl, and eyeTargetControl are excluded to maintain compatibility with Cue plugin.

Import Process​

  1. Select Timeline JSON file and choose import mode (Add New or Merge)
  2. Select which Person atom to apply poses to
  3. Plugin extracts pose data from each animation clip's Pose tab
  4. For each clip, creates or updates a pose named Timeline_{AnimationName}

Multi-Atom Handling​

  • Single Atom Import: When you select one Person atom, only that atom's data is imported/updated
  • Merge Mode with Multiple Atoms:If a pose already exists with multiple atoms:
    • Scenario: you have a dancing scene with 2 Person atoms and 10 animations in Timeline
    • Step 1: Import Timeline for Person 1 in Add New mode β†’ PoseSaver creates 10 poses for Person 1
    • Step 2: Import Timeline for Person 2 in Merge mode β†’ PoseSaver does not create 10 new poses. Instead, it adds Person 2 data on top of the existing 10 poses
    • Result: you end up with the same 10 poses, but now each pose has both Person 1 and Person 2 animation data combined
  • Add Mode: Creates new poses with only the selected atom's data (use this for the first atom you import)
You can either merge with existing poses (updates matching names) or add as new poses.


🎨 Smart Font System​

What it does: Remembers and reuses your last used subtitle/pitch black/canvas button font settings so you don't have to reconfigure them for every pose.

How it behaves:

  • Per-Pose Overrides: If a pose has its own font settings saved, those are used.
  • Last State Defaults: If a pose has no font settings, it automatically uses the last font family, style, size, color, and position you used anywhere in the plugin.
  • Consistent Look: Makes it easy to keep subtitles and pitch black text visually consistent across many poses without manual copy/paste.
  • Font Source & Limitation: PoseSaver reuses the font asset bundle from the vamOverlays plugin. Important: If you have vamOverlays already loaded in your scene and then load PoseSaver Extended, you will only see Arial font in PoseSaver's font list. This happens because VaM doesn't allow loading the same asset bundle twice in a scene. Changing the bundle name doesn't solve this issue. (HELP) πŸ˜…

πŸ•Ή Canvas Button System​

What it does: Displays screen-space buttons (like thumbnails) that stay at fixed spots on the screen, allowing users to progress through poses or fire custom triggers without opening any UI. You can now add multiple canvas buttons per pose, creating interactive sequences where buttons appear one after another.

What you can do:

  • Multiple Buttons Per Pose β€” Add unlimited canvas buttons per pose, similar to pitch black segments
  • Sequential Display β€” Buttons appear one after another in sequence, creating interactive storytelling flows
  • Next Pose Button β€” Use "next" type button that always loads the next pose in the sequence (only one allowed per pose, must be last)
  • Trigger Buttons β€” Add unlimited "trigger" type buttons with full VaM trigger panel (EventTrigger) to fire any custom actions (load scene, start Timeline, play audio, etc.)
  • Per-Button Enable/Disable β€” Turn individual buttons on/off per pose for flexible control
  • Delay After Click β€” Each button can have a delay timer that starts after clicking the previous button, creating natural pacing

How Sequential Display Works​

  1. First Button: Appears after the pose loads (with optional delay that starts after fade-in completes if fade is enabled)
  2. User Clicks: When user clicks the button, it hides and triggers its action (load next pose or custom trigger)
  3. Delay Timer: If the next button has a delay set, the timer starts counting after the click on the previous button
  4. Next Button Appears: After the delay completes, the next button appears
  5. Sequence Continues: Process repeats until all buttons are shown
  6. Next Button Restriction: Only one "Next" type button is allowed per pose, and it must always be the last button in the sequence

Position & Appearance​

  • Screen-Attached (not world-space): Buttons are anchored to the screen (Top-Right, Center-Right, Bottom-Right, etc.), same principle as the thumbnail canvas β€” they do not float in 3D space
  • Per-Button Positioning: Each button can have its own position preset and X/Y offsets
  • Size & Colors: Control button size, background color, opacity, and text color per button
  • Text: Set custom label for each button (e.g. "Next", "Continue", "Start", "Skip", "Choose Path A", etc.)

Animations​

  • Fade-In β€” Optional fade-in animation for each button
  • Pulse β€” Optional pulsing effect to draw attention (starts after fade-in if enabled)
  • Text Animations β€” Per-button text animation types: Fade In, Scale In, Slide In, Glow, or None

Smart Last-State Styling (shared idea with Smart Font System)​

  • All canvas button style fields (font family, style, size, text color, background color, opacity, size, position preset, fade/pulse settings, text animation type, duration, intensity) behave like last state values
  • Per-Button Overrides: If you set a value for a button, that button uses its own settings
  • Last State Defaults: If you leave a field empty/zero on a button, it automatically reuses the last used values from any previous button
  • This lets you define your canvas button look once, then only tweak it on specific buttons while the rest inherit the same style automatically

Timer Management​

  • Automatic Cleanup: All button timers are automatically stopped and destroyed when a new pose loads, preventing conflicts and ensuring clean transitions
  • Delay Timing: Button delays start counting after fade-in completes (if fade is enabled), or immediately if no fade transition is used

Creative Applications​

  • Interactive Stories β€” "Click to continue" buttons that appear at key moments
  • Branching Narratives β€” Multiple trigger buttons that lead to different paths
  • Timed Interactions β€” Buttons appear after specific delays, creating natural pacing
  • Multi-Step Actions β€” Sequence of buttons that guide users through complex interactions
  • Presentation Control β€” Buttons that let viewers control the pace of a presentation

πŸ”§ Advanced Features​

Morph Management​

What it does: Intelligently handles character morphs with proper reset behavior.

What you can do:

  • Save morph values with poses
  • Toggle morph saving on/off per pose
  • Properly reset morphs not in saved pose to 0
  • Import morphs from Timeline exports with proper reset behavior

Physics & Transitions​

What it does: Poses are always loaded instantly using VaM's PresetManager system, with automatic physics freezing to prevent interference.


🎯 Use Cases & Creative Applications​

Storytelling​

Create complete narrative sequences with poses, dialogs, camera movements, and fade transitions. Build chapters, scenes, and dramatic moments with automatic progression.

Photo Shoots​

Set up automatic pose sequences for hands-free photography. Use auto-play with camera sequences to capture multiple angles automatically.

Animation​

Import poses from Timeline, create smooth transitions, and build complex sequences. Use triggers to create branching animations.

Scene Building​

Save different scene states (standing, sitting, action) and switch between them instantly. Include props and lighting in each state.

Presentations​

Create automatic demos that cycle through poses. Use screen canvas for manual control during presentations.

Content Creation​

Build pose libraries, share presets with community, and create reusable content for multiple scenes.


This plugin transforms VirtAMate into a complete storytelling and animation tool, combining the best features of multiple plugins into one unified, powerful system.

πŸ“ License Change​

Important: This update includes a license change from CC-BY 4.0 to CC-BY-SA 4.0 (Creative Commons Attribution-ShareAlike 4.0 International).

Reason: PoseSaver now uses the font asset bundle from the vamOverlays plugin for subtitle, pitch black, and canvas button text styling. To comply with the licensing requirements of the shared asset bundle, the plugin license has been updated to CC-BY-SA 4.0.

What this means: You are free to use, modify, and distribute PoseSaver Extended, but any derivative works must also be licensed under CC-BY-SA 4.0 (ShareAlike requirement).

Screenshot 2025-12-03 144114.pngScreenshot 2025-12-04 183143.pngScreenshot 2025-12-05 181440.pngScreenshot 2025-12-05 181516.png


React to this content...

Share this resource

Latest updates

  1. PoseSaver Extended - Update 6

    Update with trigger fixes, empty atom positions, thumbnail improvements, and floating button...
  2. PoseSaver Extended - Update 5

    PoseSaver Extended - Update 5 Update with camera fix, new Save character pose option, VR...
  3. Update 4

    # PoseSaver Extended - Update 4 Update with Timeline compatibility fixes, improved error...

Latest reviews

Positive
Version: 9
Posted:
A far more superior PoseMe replacement, as you can place it on an empty atom, save preset a trigger load them to load on the fly a pose set. saves lights, CUA, morphs, even empty atoms for a perfect rendition of every poses.

Absolute must have
Upvote 0
Positive
Version: 9
Posted:
Man i LOVE this plugin.
Upvote 0
Positive
Version: 8
Posted:
Dang, this plugin is damn near perfect!

Having the built-in fade transition and pitch black time is baller. My only wish is for the On Enter/Exit Triggers to fire during the pitch black time so the 'action' is in progress as the scene fades up/down. That would make it truly seamless.

Killer job Mo!
Upvote 0
Positive
Version: 8
Posted:
Very good! Also works with Ruvik's custom finger posing, which is a huge plus for me. Good stuff.
Upvote 0
Positive
Version: 2
Posted:
It's so good to have yet another version of this great plug-in, specially if it comes with a camera system, just like BL has.
Upvote 0
Back
Top Bottom