Skip to main content

Overview

The Reset Object Transformation action resets an object back to its original position, rotation, and scale as defined in the Scene Editor. This is useful for undoing manual transformations, restarting task attempts, or returning the scene to its initial state.

When to Use

  • Reset after failed attempt: restore the scene to its original state when a learner fails a task
  • Undo user action: revert a transformation if the learner chooses to restart
  • State machine reset: prepare the scene for a new task attempt without reloading
  • Mistake recovery: quickly return misplaced objects to their starting positions
  • Training restart: reset all objects when learners restart a section

Parameters

ParameterTypeRequiredDescription
ObjectstringYesSelect the 3D object to reset from the scene hierarchy.

Key Behavior

  • Instant reset: The object returns immediately to its original state (not animated).
  • Original values only: The reset uses the position, rotation, and scale that were set in the Scene Editor when the scene was created.
  • Child objects unaffected: Resetting a parent object does not automatically reset its children; reset them individually if needed.
  • Safe operation: Resetting an object that hasn’t been transformed has no effect.

Practical Examples

Task Retry with Reset

Scenario: A learner attempts to assemble components but places one incorrectly. When they click “reset,” the misplaced component returns to its original position.
1
State AssemblyTask:
  • Scene has components in their starting positions.
  • Learner can drag component_a to try to fit it into assembly_base.
2
If learner clicks “Reset Component”:
  1. Reset Object Transformation: Object: component_a
  2. Play Audio: reset_sound.mp3
  3. Set Variable: resetCount = resetCount + 1
3
The component returns to its original position, and the learner can try again. A counter tracks how many resets occurred.

Multi-Object Reset

Scenario: After a failed assembly attempt, reset multiple components to restart the task cleanly.
1
State AssemblyFailed (triggered when assembly is incorrect):
  • Action list:
    1. Reset Object Transformation: Object: component_a
    2. Reset Object Transformation: Object: component_b
    3. Reset Object Transformation: Object: component_c
    4. Play Audio: failure_sound.mp3
    5. Set Variable: attempts = attempts + 1
    6. Transition back to AssemblyTask
2
All three components return to their starting positions, and the learner can try the assembly again.

Undo Last Action

Scenario: Learner moves an object and clicks “undo.” The object resets to its original position.
1
In a state, learner can interact with multiple objects: lever, valve, cover.
2
Each object can be moved via Transform Object actions.
3
When learner clicks “Undo Last Move” button:
  • System tracks which object was last moved (via a variable, e.g., lastObjectMoved = "lever").
  • Transition triggered with action:
    1. Reset Object Transformation: Object: (use variable) lever
4
The last-moved object snaps back to its original position.

Scene Reset Between Attempts

Scenario: An inspection training allows learners to practice multiple times. Between attempts, reset the scene to pristine condition.
1
State InspectionPractice: learner inspects components, potentially moving or marking them.
2
Transition to PrepareNextAttempt (triggered by “Next Attempt” button):
  • Action list:
    1. Reset Object Transformation: Object: component_a
    2. Reset Object Transformation: Object: component_b
    3. Reset Object Transformation: Object: inspection_marker (if it was moved)
    4. Set Variable: attemptCount = attemptCount + 1
    5. Transition back to InspectionPractice
3
All objects return to original positions for a fresh attempt.

Reset on Emergency Exit

Scenario: If a learner encounters an error or wants to restart the entire training section, reset all objects.
1
State TaskFailed (emergency exit):
  • Action list:
    1. Reset Object Transformation: (all interactive objects in the scene)
    2. Set Variable: reset all relevant tracking variables
    3. Training Navigation: “Reload to Step” (jump back to the beginning of the section)
2
Scene is cleaned up, and training restarts from a known good state.
Use Reset Object Transformation for quick corrections and retry flows. It’s much faster than reloading the entire scene (via Reload Training or Load Scene).
Resetting an object clears only the position, rotation, and scale—it does not affect variables or other state. If you want to fully reset a task, also reset related variables (e.g., taskAttempts, isComplete).
If an object was added dynamically via Add Object, it won’t have an “original” transformation defined in the Scene Editor. Calling Reset Object Transformation on a dynamically added object may have undefined behavior. Reset only objects that were placed in the Scene Editor.