Skip to main content

Slide System

The Slide System allows presenters in a HoloMIT session to show and control a slide presentation on a virtual screen. This interaction is designed to be fully synchronized across all users in the session out-of-the-box.

Overview

The core logic for the presentation is driven by the SlideController component. It abstracts the networking and input logic, allowing you to easily drop a presentation screen into any scene without having to write custom replication code.

Key Features

  • Automatic Network Synchronization: Slide transitions are broadcasted automatically using NetworkTrigger components, ensuring all participants see the exact same slide simultaneously.
  • Input Ready: It integrates seamlessly with the Unity Input System via the HoloMITControls asset. It listens for specific actions to navigate (Next, Back, Start/Finish) without requiring custom input scripts.
  • Material-Based Rendering: Slides are simply an array of Texture2D images. The controller dynamically swaps the _MainTex property of the SlideMaterial applied to your virtual screen.

Setup Requirements

To configure a working Slide System in your scene, add the SlideController to a GameObject and provide the following in the Unity Inspector:

  1. Slides Array: An ordered array of Texture2D images representing your presentation.
  2. Screen Object: A GameObject with a MeshRenderer that will act as the projection screen (e.g., a Quad or Plane).
important

Material Requirement The system requires a material named exactly SlideMaterial to be available in a Resources folder. The SlideController will instantiate it at runtime to prevent modifying your base asset, applying it to your Screen Object automatically.

Usage

Once configured, the presentation can be driven by the user using the default bound input actions:

  • Start/Finish: Toggles the screen's visibility. Starting the presentation will always reset it to the first slide.
  • Next Slide: Advances the slide index (clamps at the last slide).
  • Back Slide: Decreases the slide index (clamps at the first slide).