NExT Lab
Maker SpacesFabLabNExT LabRobotics LabPrint Room and Loans
  • NExT Lab
  • Contact Details
  • NExT Lab Access
  • Sustainability
    • 3D Printing
  • Case Studies & Projects
    • |3DS|VR| Voices of Country
    • |3DP|AR| Prosthetic Habitats
    • |AR| Studio 40: The Field
    • |VR|3DP| Gravity Sketch: Door Handles
    • |3DS| 3D Scanning Examples
    • |AR|3DP| GRANULAR
  • 3D Printing |3DP|
    • 3D Printing at the NExT Lab
      • Other 3D Printing Options
    • Get Started
    • Design Approaches
    • Modelling Guidelines
    • 3D Print Farm
      • Quick-Start Guide
        • File Naming Conventions
      • Detailed Overview
        • 3D Printing Mesh Preparation
        • Submitting a Print Request
        • Post-Submission: Updating, Paying & Collecting
        • Slicing & Settings
    • Open Access Printers
      • PRUSA Open-Access
        • Workflows
          • Materials Experimentation
          • Experimental Techniques
        • Prusa i3 MK3S Fundamentals
        • Hardware Glossary
          • Extruder
          • Hotend & Nozzle
          • Print Surface, Bed & Y Axis
          • PINDA Inductive Probe
          • X-Axis Gantry
          • Z-Axis Stage
        • Software/Slicer Glossary
          • Plater/Virtual Print Bed
          • Print Settings
          • Filament Settings
          • Printer Settings
        • Troubleshooting
          • Filament Jam/Clog
          • Worn Nozzle
          • Broken/Loose Heatbreak
          • First Layer Issues/Prints Not Sticking to Bed
          • Stringing & Oozing Hotend
    • Use Own Filament
    • Key Techniques
      • Hollowing Models
      • Combating Warping
      • Split Models & Joints
      • Joints and Connections
      • Fillets & Chamfers
      • Accuracy, Precision & Tolerancing
      • Post-Processing & Finishing
        • No Sanding Method
        • Sanding Method
        • Epoxy Method
        • Fillers Method
      • Printing for Transparency
      • Mesh Techniques
        • Meshes 101
        • Working with Meshes
        • Repairing Meshes
        • Other Techniques
          • Thicken a Mesh with Grasshopper
          • Mesh Manipulation with Blender
          • Custom Supports in Meshmixer
      • Topography Models
      • Using the Makerbot Experimental Extruder
      • Troubleshooting
      • Adjusting Print Settings
    • Resources
      • Downloadable Software & Accounts
      • Software Primers
        • Autodesk Meshmixer
        • Blender
    • Mold Making and Casting
  • 3D Scanning |3DS|
    • 3D Scanning at the NExT Lab
    • 3D Scanning Use Cases
    • Guides
      • Principles of 3D Scanning / Digital Reconstruction
      • Photogrammetry
        • Photogrammetry Theory
        • Photogrammetry Benchmark
        • Technical Guides
          • From Photos to 3D Spatial Data
          • Advanced Techniques
          • Taking Measurements + Visualisation
          • From Photogrammetry to 3D Printing
      • BLK360 Terrestrial LiDAR Scanner
        • BLK360 Benchmark
        • Scan
        • Register
          • Export from iPad
        • Process
      • Artec Handheld SLT Scanners
        • Using the Scanners
        • Manual Alignment
        • Fill Holes
        • Smoothing
        • Frame Selection
      • VLX LiDAR SLAM Scanner
        • VLX setup
        • Preparing to Scan
        • Using the Scanner
        • Processing the Scans
      • Working with Point Clouds
        • Point Clouds to Meshes
    • Troubleshooting
      • General
      • Artec EVA
      • Leica BLK360
      • VLX
  • Augmented Reality |AR|
    • Augmented/Mixed Reality at the NExT Lab
      • Use Case of AR
    • Guides
      • Hololens 2
      • Fologram
        • Fologram Applications
          • Fologram for Hololens
          • Fologram for Mobile
        • Fologram for Rhino
        • Fologram for Grasshopper
        • Shared Experiences / Tracked Models
        • Extended Functionality
          • Preparing Models for AR
          • Interactivity
          • Fabrication
      • Unity and Vuforia
        • Unity Primer
        • 2D Targets (Image Targets)
        • 3D Targets (Object Targets)
        • Vuforia Primer
        • Creating a Simple AR App
          • Unity Next Steps: Interaction
          • Model Recognition
    • Troubleshooting
      • Hololens & Fologram
      • FAQ: Augmented Reality
    • Resources
      • Platforms (Hardware)
        • Microsoft Hololens
        • Mobile
      • Software Packages
      • Student Contact
        • AR: Intro Sessions
        • AR: Workshops and Resources
          • UntYoung Leaders Program Workshopitled
          • Young Leaders Program Workshop
          • Construction as Alchemy
  • Virtual Reality |VR|
    • Virtual Reality at the NExT Lab
    • Guides
      • Virtual Reality Hardware Set Up
        • Meta Quest 3
          • Troubleshooting
        • HTC Vive Headsets
          • HTC Vive
            • Troubleshooting
          • HTC Vive Pro
          • HTC Vive Cosmos
            • Troubleshooting
      • Twinmotion VR
        • Twinmotion VR: Features
        • Twinmotion VR: Troubleshooting
      • Virtual Reality Experiences
        • Unreal Engine
          • Unreal Engine Primer
            • Process: Level Building, Playing & Packaging
            • Actors: Components, Content and Editors
            • Materials & Textures
            • Lighting & Mobility
            • Player: VR and non-VR
            • Interactivity & Blueprints
          • Unreal Engine: Guides
            • Setting up a VR-ready File & Templates
            • Creating a Basic VR Experience
            • Custom Collision and Navigation
            • UV and Lightmaps
            • Outputting Content
            • Unreal Troubleshooting
            • Point Cloud Visualisation
          • VR: Video Tutorial Series
            • Exporting from Rhino
            • Model Preparation in 3DS Max
            • Unreal Engine
      • Designing in Virtual Reality
        • Gravity Sketch
          • Quick Start
        • Masterpiece Creator
    • Student Contact
      • VR: Intro Sessions
  • Sensing
    • Body Tracking
      • Usage
        • Technical Specifications
      • Data Analysis in Grasshopper
        • Analysis Examples
      • Animated Point Clouds(UE)
  • ROBOTICS
    • Robotic Dog
      • Operational Health & Safety
      • Robot Dog Setup
      • Operation Setup
        • Operation Basics
        • Arm Mode
        • Programming Mode
        • Mapping Mode
      • Advanced Operations
      • Expansion Equipment / Attachments
      • Basic Simulation
      • Troubleshooting
Powered by GitBook
On this page
  • Overview
  • Tracking
  • Triggers
  • Taps
  • Collision
  • Finger Keys
  • Behaviours
  • Showing Rhino Layers
  • Showing Selected Elements [GH]
  • Incremental Slider
  • Collision Buttons
  • Air Swipes
  • Animation

Was this helpful?

  1. Augmented Reality |AR|
  2. Guides
  3. Fologram
  4. Extended Functionality

Interactivity

PreviousPreparing Models for ARNextFabrication

Last updated 2 years ago

Was this helpful?

Official Tutorials:

Overview

Tracking

Use the [Connected Devices] Component to access the connected Hololens devices properties, this gives Grasshopper an awareness of connected devices and how they are interacting with the scene, returning metadata such as device details, or positional data.

These allow you to use this to manipulate data flows and the scene itself.

Just like any other Grasshopper component, the right click context menus and list management options are also available for some components to extend their functionality.

Triggers

Triggers is the concept of how you intend a user to interact to with the scene that can 'trigger' some interactive aspect. There are two main ways provided by the Fologram for Grasshopper library.

Taps

Taps refers to the tapping gesture of the Hololens, allowing you to track if objects have been tapped. This can be tracked through the [Track Taps] component, which gives you the device that initiated the tap, and the item that was tapped. This needs to be enabled through the right-click menu of a Synced Object.

Collision

Collision can be conceptualised as when objects touch 'physically' touch. Such as your hand touching a 'button' geometry.

This can be tracked using any of the components that returns positional data, for example: [Track Device] gives the transform of the Hololens device itself [Track Hands] gives the position of the hand model vertices tracked by the camera

Finger Keys

Use finger gesture combinations to trigger behaviours. The provided script is a bare example:

19KB
211012_fingerkeys.gh

Gaze

Use your gaze (the position of the Hololens device) to trigger. The provided script is a bare example:

30KB
121021_gaze.gh

Behaviours

With the triggers set up, you can then do basic data manipulation and flows to program a variety of effects.

Showing Rhino Layers

This is a basic setup to demonstrate how to use [Track Taps] to interact with Rhino layers, while you can go through the menus through Fologram to do the same thing, this can be a more intuitive or immersive method.

More generally, this shows how a [Data Recorder] combined with [List Length] and [Modulus] can be used to create a toggling behaviour. This uses HUMAN plugin components to interact with Rhino layers.

Showing Selected Elements [GH]

This is a basic setup to demonstrate how to use [Track Taps]'s returned selected index to show an item corresponding to a button. As long as your list orders are maintained across the two sets (buttons and geometry-to-show), then [List Item] can used to selectively stream from the list. Note that any geometry that is intended to be tap-able will need to be made so via the [Sync Object]'s Right Click Menu > Clickable.

Incremental Slider

This is a basic setup to demonstrate how [Track Tap] can be used in conjunction with [State Gate] to mimic a slider using a rocker and reset button. [Counter] is used to keep track of the clicks. [Counter] increments every time its Trigger input is updated, we can take advantage of this by using the [State Gate] to toggle these inputs.

Collision Buttons

This is a basic setup to demonstrate the use of [Track Hands] to test for collision with an object to simulate a 'button' interaction by averaging the hand position to use with [Point in Brep].

Air Swipes

This is an example grasshopper script that converts [Track Hands] into data that can then be used in various ways. The script provided is the bare working essentials. Some ways that they may be used might be to inspect an object in 3D or to change a value in an immersive way.

22KB
211012_airSwipe.gh

Animation

Animation can be achieved through the [Assign Transform] component. This is used to parametrically update the transform of an already synced object - for example, it can be used to parametrically place an object, such as having it follow the user, or for animation.

Animation can be thought of as providing a series of transforms over a period of time to give the illusion of changes in time. While this could be done by syncing an object over time, using Assign Transform is more efficient as it does not need to send new geometry every transform. This also means that animation is limited to basic transformations and you should be wary about large meshes that may be too taxing on your device.

The general setup is as follows:

  1. Setup how the object should transform, you do not need to transform the object but you can use the Transform output of these components (move, rotate, orient, etc.) to get the transform.

  2. Setup the list of transforms to go through, in this case, Heteroptera's timer-based streaming component is used to scale the transform between 0 and 1 at an increment of 0.001. This could be any list of transform data though.

  3. Use Grasshopper's trigger component as a timer.

While is the easiest way to build control into the Fologram experience, for more immersive experiences or where accessing the Parameters menu inside Fologram is not desired, is article is to start you off with ways to interact with the scene more directly through things like holographic buttons.

Basic setup: use [Connected Devices] to begin tracking Hololens meta and positional data.
Syncing Parameters
TutorialsFologram
Logo