Processing2Hologram — a Processing 4 library for Looking Glass holographic displays
Hi everyone!
I’d like to share a small open-source project I’ve been working on: Processing2Hologram, a Processing 4 library that lets you render regular P3D scenes directly to Looking Glass holographic displays.
The main idea is to keep the workflow as close to normal Processing as possible. You draw your scene using familiar PGraphics, shapes, lights, materials, textures, and transforms, and the library takes care of generating the calibrated multiview cameras, assembling the quilt, and sending it to Looking Glass Bridge.
A minimal sketch looks roughly like this:
import processing2hologram.*;
LookingGlass hologram;
float angle;
void setup() {
size(900, 700, P3D);
hologram = new LookingGlass(this);
}
void draw() {
angle += 0.012;
hologram.render(this::drawScene);
image(hologram.preview(), 0, 0, width, height);
}
void drawScene(PGraphics pg) {
pg.background(15, 18, 28);
pg.lights();
pg.pushMatrix();
pg.translate(pg.width * 0.5, pg.height * 0.5);
pg.rotateY(angle);
pg.box(150);
pg.popMatrix();
}
drawScene() is rendered once for every view in the quilt, while your animation/simulation state is updated only once per Processing frame.
The library currently supports:
-
standard Processing
P3Drendering -
calibrated multiview rendering from a single center camera
-
automatic quilt layout and view-cone configuration from the connected Looking Glass
-
direct presentation through Looking Glass Bridge
-
Windows x64 and macOS
-
center-view preview without any Looking Glass hardware
-
full quilt preview and quilt PNG export
-
adjustable holographic depth and Bridge-side zoom
One thing I particularly wanted was for the library to remain useful without owning or having the display connected. If Bridge or the hardware isn’t available, the same sketch simply runs in preview mode, so you can still develop the scene and inspect the complete quilt.
I’ve also included several examples beyond the basic cube:
Flocking — 128 interactive 3D boids
AuroraRibbons — procedural ribbons, particles, and transparent geometry
KineticBloom — a mechanical flower demonstrating lights, materials, and nested transforms
SolarSystem — an eight-planet system with an Earth–Moon pair, asteroid belt, and Saturn rings
WaveGarden — an interactive triangle-strip terrain
DepthPlayground — an interactive demo for understanding holographic depth controls
The first hardware target I’ve validated extensively is Looking Glass Portrait, but the implementation does not hard-code Portrait’s optical configuration. When a device is connected, the library asks Bridge for its recommended quilt dimensions, grid, view cone, and device information.
The project is still quite young, so I’d really appreciate feedback from Processing users — especially anyone experimenting with Looking Glass, multiview rendering, creative coding, or unusual display systems.
If you have a Looking Glass and are willing to test it on different models/hardware configurations, that would also be extremely helpful.
You can download the ready-to-use universal package from the latest GitHub Release:
Just place the extracted Processing2Hologram folder inside your Processing Sketchbook’s libraries directory and restart Processing.
Hope this is useful to someone here — and I’d love to see what people make with it!