Looking Glass Documentation
Buy Looking GlassDiscord
  • Looking Glass User Guide
  • NEW! ✨Looking Glass Go✨
  • Displays
    • 🔮Looking Glass Go
      • ⚡Get Started with Looking Glass Go
      • 📱Using the Go Mobile App
      • 🔆Liteforms™
      • 🖥️Standalone and Desktop Modes
      • 🔌Power and LED States
      • 🪄Default Playlist
      • ⏭️What's Next?
      • 👜Accessories
      • ⚙️Advanced Playlist Creation
      • ⚙️Manual Firmware Update
      • ❓Common Troubleshooting Issues
    • 🔮Looking Glass 16" Light Field Displays
      • 🪄Looking Glass 16" Light Field Display (Landscape)
      • 🪄Looking Glass 16" Light Field Display (Portrait)
      • ❓Common Troubleshooting Issues
    • 🔮Looking Glass 32" Light Field Displays
      • 🪄Looking Glass 32" Light Field Display (Landscape)
      • 🪄Looking Glass 32" Light Field Display (Portrait)
      • ❓Common Troubleshooting Issues
    • 🔮Looking Glass 65" Light Field Display
    • 🔮Looking Glass Portrait
      • ⚡Get Started with Looking Glass Portrait
      • 🎇Demo Holograms
      • ❓Common Troubleshooting Issues
  • Software
    • 📚Overview
    • 🌉Looking Glass Bridge
      • ✨Using Looking Glass Bridge
      • 🪟Display Settings on Windows
      • 🍎Display Settings on macOS
      • 🐧Display Settings on Linux
      • 👷Troubleshooting
    • ⚙️Looking Glass Bridge SDK
      • 🪛Web Application Integration
      • 🔌Integrating Native Applications
      • 📓Native Function Reference
      • 🐦Looking Glass Core Migration Guide
    • 🔌Unity
      • ⚡Using Unity with Looking Glass
      • Setting up your Development Environment
      • Example Scenes
      • Prefabs
        • Hologram Camera
        • 3D Cursor
        • Dual Monitor Application
      • Script Reference
        • HologramCamera.cs
        • LKGDisplaySystem.cs
        • QuiltCapture.cs
        • Cursor3D.cs
        • OrbitControls.cs
        • BlockUploader.cs
        • MobileDMAController.cs
        • iOS Sample Scene Scripts
          • ChangeInteractionModality.cs
          • XYSlider.cs
          • XYSpotlight.cs
          • AudioRotateControl.cs
          • ModelController.cs
          • DemoIOSUIController.cs
          • PageHandler.cs
          • PageConnectHandler.cs
          • PageCalibrateHandler.cs
          • PageTestHandler.cs
          • DynamicAlcove.cs
      • Package Integrations
        • Built-in Render Pipeline Post-Processing
      • Developing for iOS
      • Depth of Field and Other Post-Processing Effects
      • Quilt Video Audio and Playback
      • Developing for Ultraleap Hand Tracking on Looking Glass
      • Looking Glass Pro (Legacy)
      • Additional Support
      • Change Log
    • 📽️Looking Glass Studio
      • 📚Using Looking Glass Studio
      • 🎬Hologram Video iOS App
      • RGB-D Photo / Video
      • Quilt Images / Video
      • iPhone Portrait Photos
      • Android Depth Photos
        • Samsung Portrait Mode
      • Light Field Photosets
      • Exporting Holograms
      • Troubleshooting
    • 👀Looking Glass Model Viewer
    • 🧊Looking Glass Blocks
      • ✨Convert any image into a hologram
      • ⬆️Uploading, editing and sharing Quilts
      • 🥽Viewing your holograms on different platforms
    • 🎨Other Creator Tools
      • 🍹Blender
      • 🔌Unreal Engine
        • 🗒️Change Log and Old Versions
        • 💽Installing the Unreal Engine plugin
        • 🎥Using the Unreal Engine Plugin
          • Using the HoloPlay Capture
          • Exporting Quilt Images and Video with Sequencer
        • Accessing HoloPlay Data with Blueprint Scripting
        • Packaging the Project
        • Unreal Engine 4 (Legacy Support)
          • Unreal Engine 4 Quick Start
            • Using the HoloPlay Capture
            • Exporting Quilt Images and Video with Sequencer
      • 🌐WebXR
        • 🔶PlayCanvas
        • 3️⃣3️⃣ Three.JS
        • ⚛️React-Three-Fiber
        • 🌈Spline
    • 🧪Experiments
      • 🔆Liteforms™
        • 🪟Get Started on Windows
        • 🍎Get Started on MacOS
        • 🧙Making Custom Liteforms
        • 🏪Configure Liteforms for Kiosk Setup
      • 📽️Media Encoder
        • ⏩Looking Glass Media Encoder
    • 🧑‍🤝‍🧑Third Party Apps and Tools
      • 🗺️ParaView
      • 🔬VTK (Visualization Toolkit)
      • 🗡️3D Slicer
      • 🔩Community Made Tools & Projects
  • Key Concepts
    • 🔑Hologram 101
      • 🎉Making great holograms
      • 🌎Holograms in the real world
      • 👾Holograms, but virtual
    • 🔍How does Looking Glass Work?
    • 📸Virtual Camera
    • 🧊3D Design Guidelines
      • Lighting
      • Post-Processing
      • Scene Composition
      • Materials & Textures
      • Performance
    • 💡Quilts
      • 🎬Quilt Video Encoding
    • 💡Light Fields
      • ⚡Linear Light Field Capture
    • 📽️Filming a Looking Glass
  • Tutorials
    • 📱Running Looking Glass Displays with iOS Devices
    • Ⓜ️Capturing Light Fields in Maya
    • 🧑‍🔬Using ShaderToy with Looking Glass
    • 🎨Sculpting with Adobe Medium and Looking Glass
    • 🔍Turn Videogames Holographic with Refract
    • 🖐️Building with Leap Motion
  • Legacy
    • Legacy Hardware
      • 🔻Looking Glass 8.9"
      • 🔻Looking Glass 15.6"
      • 🔻Looking Glass 8K
      • 🔻Looking Glass 16"
      • 🔻Looking Glass 32"
      • 🔻Looking Glass Pro
    • Legacy Software
      • 📡3D Model Importer
        • 3D Model Importer App Guide
        • 3D Model Importer App Reference
      • 🎭Diorama
        • Change Log
      • 🎞️Depth Recorder
      • 📸Lightfield Photo App
      • 🍍Looking Glass Core Overview
      • 🍽️Looking Glass Core SDK
        • C API Overview
          • HoloPlayCore.h
            • State Functions
            • General-Query-Functions
            • Device-Query-Functions
          • libHoloPlayCore.h
          • HoloPlayShaders.h
      • 🔰Looking Glass Core JS
        • API
          • HoloPlayCore.Client
          • HoloPlayCore.Message
          • HoloPlay Service Related
          • examples
  • 💬Contact Us
  • 🛠️FAQ & Troubleshooting
Powered by GitBook

Follow us

  • Twitter
  • Instagram
  • LinkedIn
On this page
  • Getting Started
  • Setting up your renderer
  • Importing Looking Glass WebXR
  • Live Examples
  • The Basics
  • Loading a Model

Was this helpful?

  1. Software
  2. Other Creator Tools
  3. WebXR

3️⃣ Three.JS

It's never been easier to integrate your Three.js scene with the Looking Glass!

Getting Started

Setting up your renderer

In Three.JS you need to declare that your scene is suitable for XR devices. To do this you'll need to add the following line after your renderer element is declared.

renderer.xr.enabled = true

Importing Looking Glass WebXR

Using NPM/Yarn

You can import the Looking Glass WebXR library by running the following command in your web project:

npm install @lookingglass/webxr

Or, if you use the yarn package manager:

yarn install @lookingglass/webxr

Once you've got it installed simply add the following code to your main JavaScript file. This will add in Looking Glass WebXR support and set up a few recommended defaults.

import { LookingGlassWebXRPolyfill, LookingGlassConfig } from "@lookingglass/webxr"
const config = LookingGlassConfig
config.targetY = 0
config.targetZ = 0
config.targetDiam = 3
config.fovy = (40 * Math.PI) / 180
new LookingGlassWebXRPolyfill()

Using a Script Tag

Script tags allow you to easily integrate Looking Glass WebXR without using tooling like npm or yarn.

You can also use a <script> tag, like shown in the following examples:

<script type="module">
import { LookingGlassWebXRPolyfill, LookingGlassConfig } from "https://unpkg.com/@lookingglass/webxr@0.6.0/dist/@lookingglass/webxr.js"
const config = LookingGlassConfig
config.targetY = 0
config.targetZ = 0
config.targetDiam = 3
config.fovy = (40 * Math.PI) / 180
new LookingGlassWebXRPolyfill()
</script>

Live Examples

We've setup CodeSandbox demos for you here! You can try the Looking Glass WebXR Library right now by clicking the Enter Looking Glass Button on the demos below!

The Basics

Who doesn't love a rotating rectangular prism? This demo is just the basics, a rotating box with a simple color. This is a great way to understand how three.js works and change some basic settings.

Loading a Model

React

Want to use Looking Glass WebXR with React? Check out our React-Three-Fiber documentation!

PreviousPlayCanvasNextReact-Three-Fiber

Last updated 11 months ago

Was this helpful?

Boxes are only so cool, check out this even cooler space helmet! This example uses Three.JS' environment and GLTF loaders. Try swapping the model out with your favorite model, or swapping the background out with a different HDR image from .

🎨
🌐
3️⃣
Polyhaven
⚛️React-Three-Fiber
A simple 'Hello World' demo using three.js and the Looking Glass WebXR library.
A Three.JS scene demonstrating how to load a GLTF model.