Skip to content

Collision System 🧊

The collision system in StorySplat allows you to define invisible physical boundaries within your 3D scene. These boundaries prevent the camera from passing through objects in specific navigation modes like "Walk" and are essential for creating grounded, realistic experiences, especially for architectural walkthroughs or virtual tours.

Purpose of Collisions

  • Constrain Movement: Keep the user within desired areas in Walk mode.
  • Define Walkable Surfaces: Use the "Floor" type to designate where the user can stand and walk when gravity is enabled (Walk Mode).
  • Enable Teleportation (VR): Floor colliders also define valid teleport locations in VR mode (if enabled during export).
  • Prevent Clipping: Stop the camera from going through walls, furniture, or other solid objects.

Entering/Exiting Collision Edit Mode

  1. Click the "Collision" button (🧊 icon) in the vertical toolbar on the left side of the editor.
  2. The editor enters Collision Edit Mode:
    • Existing collision meshes become visible.
    • The Collision Controls panel appears, allowing you to add new meshes.
    • Selected collision meshes will be highlighted (typically in green), while unselected ones remain visible (often in red).
  3. Click the "Exit Collision Edit Mode" button in the Collision Controls panel or press the ESC key to return to normal viewing/editing. Collision meshes will become invisible again.

Collision Mesh Types

You can add several primitive shapes to act as collision boundaries:

  • Plane (â–¡): A flat, 2D surface. Useful for walls, simple floors (though 'Floor' type is preferred for walkability), or invisible barriers.
  • Cube (â– ): A 3D box. Good for blocking out rectangular areas or objects like furniture or pillars.
  • Sphere (â­•): A spherical volume. Suitable for rounded objects or defining circular boundaries.
  • Floor (â–¤): A specialized large plane optimized for defining walkable ground surfaces.
    • Crucial for Walk Mode: Enables gravity and prevents falling through the floor.
    • Required for VR Teleport: Defines areas where users can teleport in VR experiences.

Creating and Managing Collision Meshes

  1. Enter Collision Edit Mode.
  2. Select Mesh Type: In the Collision Controls panel, click the icon corresponding to the shape you want (Plane, Cube, Sphere, or Floor).
  3. Add Mesh: Click the "Add Mesh" button. The new collider will appear in the scene, usually in front of the current camera view.
  4. Select Mesh: Click on a collision mesh in the 3D view or its name in the Collision Controls panel list to select it. The selected mesh will highlight (typically green), and the transform gizmos will appear.
  5. Manipulate Mesh: Use the transform tools (activated via the bottom toolbar or keys 1, 2, 3) to precisely position, rotate, and scale the selected collision mesh:
    • Move (G): Relocate the collider.
    • Rotate (R): Orient the collider.
    • Scale (S): Resize the collider.
    • Note: The transform panel can also be used for precise numerical input.
  6. Repeat: Add and adjust as many collision meshes as needed to accurately define the boundaries of your scene.
  7. Delete Mesh: Select a mesh in the list and click the "Remove" button in the Collision Controls panel.

Important Considerations

  • Visibility: Collision meshes are only visible in Collision Edit Mode within the editor. They are invisible in the final exported scene and during regular navigation modes (Tour, Explore, Hybrid).
  • Walk/VR Mode: Collisions are primarily active in "Walk" mode and potentially for teleportation in "VR" mode (if configured during export). They generally do not affect "Tour", "Explore", or "Hybrid" modes unless specifically interacting with a feature that uses them.
  • Performance: While you can add many colliders, keep in mind that each one adds computational overhead. Use the simplest shapes and the minimum number of colliders necessary to achieve the desired boundaries for optimal performance, especially in complex scenes.

Previous: File Format Compatibility | Next: File Menu