Bodhi on Vision Pro
Thesis · visionOSProject details
Designed and built a Vision Pro thesis experience where a spatial AI tree uses gaze, voice, and deliberate pacing to make attention the interface.
Project highlights
5 months
research, design & build
Solo
designer · developer · researcher
visionOS
spatial AI experience
Who are you, to you?
Bloom turns that question into a Vision Pro room: an AI inhabited bodhi tree, a slow voice, and a drawing space where the visitor answers in 3D instead of typing into a box.
The first encounter is not a menu. A bodhi tree appears in the room, breathes, and begins a patient conversation.
Inside Vision Pro, the project is about presence: the tree, the voice, the room, and the marks you leave in space.
The tree settles into Bloom when the visitor stays with it long enough.
Sit with it
The tree, alive in the browser. An AI sits inside it. Talk to it.
Attention is the interface
The tree responds to where you look, not where you tap. Gaze at a branch and it stills. Look away and it drifts again.
Every question it asks has no right answer. It does not evaluate what you say. It just continues, with infinite patience.
Draw in space
The answer is not only spoken. Visitors can assemble and draw objects in 3D space, turning thought into a small spatial ritual.
A few earlier scene studies stayed in the archive, but the story now points back to the conversational spatial experience.
Measuring the calm
Calm should not be a claim. So an EEG headband read each visitor before the tree, and again after, to see what actually changed.
Four channels, read live. The meditation score rising and drowsiness falling as attention settled on the tree.
Made physical
The exhibition objects remain as proof of the thesis environment, but they now support the main interaction instead of taking over the scroll.
People sitting with it. The screen mirrored what the headset saw, so the room could watch too.
Design decisions
The calls that shaped this project: what I chose, why, and what each choice cost.
-
Made attention the only input and removed the controls
Every spatial demo answers the question of what you can do here. The thesis question was whether presence alone could hold someone, so there is no menu, no pinch-to-open, no settings panel anywhere in the room. Gaze and voice are the entire surface, and the tree responds to being looked at rather than to being operated.
TradeoffThere is no way to recover from a misunderstanding. When the voice mishears, the user has no control to reach for and no obvious way to steer, and more than one tester sat through a stretch they had no idea how to leave.
-
Slowed the voice past the point that felt comfortable
Conversational AI defaults to fast turn-taking because latency reads as failure. Here the pauses were the content. Response timing was stretched deliberately and the silence after a question was held rather than filled, so the system reads as patient instead of as waiting for input.
TradeoffThe first ninety seconds feel broken. Several testers assumed the app had hung before they understood that the pacing was the point, and I never found an onboarding line that fixes this without spoiling it.
-
Placed the tree at conversational distance instead of filling the room
The instinct on Vision Pro is scale, because scale is what the device does that a screen cannot. But a tree at room scale turns the person wearing the headset into an audience. At roughly two metres, sized to be looked at rather than looked up at, the relationship becomes a conversation.
TradeoffIt gives up the spectacle that makes spatial work legible to anyone who has not worn the headset, and in a small room the placement occasionally lands inside furniture.
Building for Vision Pro meant learning a new spatial design language from scratch. There are no flat screens to fall back on. Every UI decision is a room decision. Where the tree sits, how large it reads at arm’s length, whether the voice feels near or distant. All of it had to be felt in space, not sketched on a canvas.
What surprised me was how much the voice carried the experience. The visuals set the stage, but the moment the tree spoke, everything changed. The right pacing made it feel alive. The wrong pacing made it feel like a demo. That line was narrower than I expected, and finding it took more iteration than any technical problem.