Zeppelin Universität · Virtual Spaces · Spring Semester 2026

The VR Confessional

A contemplative social VR space for stress relief, designed around the praxis of confession.

Jonathan Brandes · Levi Dal Canton

Demo & Project Submission · 4 May 2026

Course Instructor · Özgür Eren
§ 1 The Communication Task

What kind of communication does this space support?

A private, voice-based dialogue between a single user and a non-judgmental listener inside a contemplative virtual environment.

Theoretical grounding: Pennebaker (1997) on the therapeutic effect of disclosure; Lucas et al. (2014) on reduced disclosure inhibition with virtual humans. See §11.

§ 2 Why this scenario?

Why a confessional, not a chat room?

  1. Disclosure benefits from scaffolding. Pennebaker's expressive-disclosure paradigm shows measurable stress-reduction effects from articulating difficult experiences. A blank chat box is high-friction; a ritualised setting lowers the cost of starting.
  2. Less judgment, more disclosure. Lucas et al. find that perceived AI listeners reduce social-evaluation anxiety and increase willingness to disclose — directly applicable to our agent.
  3. Confession is a cross-cultural form. The act of speaking to an unseen, attentive listener appears in many traditions. The form is recognisable; the onboarding cost is low.

Cultural framing. The praxis is borrowed; the religion is not. The space is a temple — open to all — rather than a church. The agent's avatar reads as religious without belonging to any one tradition.

§ 3 Personas

Who is the space designed for?

Primary audience: students at Zeppelin Universität, especially those carrying acute or chronic stress.

Lena

22 · Master's student · pre-thesis

"I don't want to dump on my friends again — but I need to say it out loud."

Acute, recurring stress. Wants a low-friction outlet she can return to whenever the pressure builds.

Jonas

26 · Doctoral candidate · second year

"It's been a strange year. I just want a place that doesn't ask me to perform."

Chronic isolation. Wants quiet presence — not advice, not solutions, just being heard.

§ 4 User Stories

What does a visit look like?

§ 5 Requirements

What did we build to?

IDCategoryRequirement
F1FunctionalCurtain auto-opens on entry, closes on exit, and syncs across users.
F2FunctionalThe user can sit on the booth bench and stand back up.
F3FunctionalA candle can be picked up; it emits real light while held.
F4FunctionalThe user can set the candle down on a side table before teleporting to the seat.
F5FunctionalAn AI agent (or human role-player) occupies the listener's side of the booth.
F6FunctionalThe agent has per-user memory; conversations are not shared across visitors.
N1Non-functionalVoices in the booth do not carry to others in the temple.
N2Non-functionalAtmosphere: dim, warm, contemplative; baked lighting; one controllable point-light (the candle).
N3Non-functionalMobile-first; under 200k tris for the location, under 15k per IFX; no custom C# scripts.
§ 6 Design Decisions — Atmosphere

Why this room feels the way it does.

A temple, not a church.
The praxis of confession is a cross-cultural form of disclosure. We borrowed the practice but not the religion, so the architectural shell is a non-denominational temple. The agent's avatar follows the same logic — religious in feel, unplaceable in tradition.
Dim, warm light.
Cool or bright lighting reads as clinical or public. Warm low-key light cues "private, slow, evening" — the conditions under which honest speech is easier.
A curtain at the threshold.
A ritual needs a marked entry. The curtain physically separates "in the room" from "in the world," so crossing it is felt as a transition, not a click.
A holdable candle.
A small object for the hands lets the mind settle. The candle also gives the user a measure of agency over the light — the only changeable thing in the room.
§ 7 Design Decisions — Interaction

How the visitor moves through the space.

GenericMovable over Animator.
An Animator-based curtain proved fragile in ENGAGE — Inspector edits don't fire state listeners; triggers fire on load. A direct lerp via NetworkStateTrigger_GenericMovable between two sibling position markers was more robust and easier to debug.
ENGAGE-native seat, not custom XR.
Generic Unity XR Interaction Toolkit components are stripped by the ENGAGE pipeline. Using the SDK's own seat keeps multi-user sync working and avoids fighting the platform.
A side-table for the candle.
When the user teleports onto the booth seat, hand state doesn't carry. Adding a small table next to the seat lets the user deliberately set the candle down first — agency rather than abrupt loss.
Voice in / voice out.
Text inputs in VR break presence. Voice keeps the modality continuous with the rest of the experience and matches the real-world act of speaking aloud.
§ 8 Design Decisions — The AI Agent

Who is on the other side of the lattice?

Per-user memory.
The agent remembers each visitor's conversation, but only theirs. Memory is not shared across users. This both supports return visits and prevents the listener from being a leak channel between visitors.
Religious, but unplaceable.
The avatar is stylised so it reads as a religious figure without belonging to any particular tradition — consistent with the temple-not-church framing.
AI or human, interchangeable.
The role of the listener is a slot. Either an AI agent or another session participant can occupy it, and the rest of the space behaves the same. This is a design choice: the system should still work if the AI does not.
A lattice between sides.
The listener is suggested, not displayed plainly. Lower fidelity is forgiving; the implied presence is stronger than the explicit one.
§ 9 Team & Collaboration Model

How the two of us worked.

Jonathan Brandes and Levi Dal Canton. We built everything together — concept, design, room, code.

Our working pattern was deliberately interleaved: at every step one of us was researching while the other was deploying. Then we swapped. Same room, same screen, two pairs of hands moving in turn.

Mode. Deeply collaborative on direction; cooperative-by-task on execution. Decisions were made jointly; specific implementation moments were owned by whichever of us was at the keyboard at the time.

§ 10 Development Tasks

What we made.

AreaWork
EnvironmentSourced and integrated a temple model from Sketchfab; baked dim warm lighting; placed ambient candles.
BoothBuilt the confessional structure inside the temple, with lattice between the two sides and a table on the visitor's side.
CurtainImplemented as NetworkStateTrigger_GenericMovable with a proximity trigger zone; abandoned the Animator-based approach after debugging revealed it was fragile in ENGAGE.
Holdable candleNetwork Object pattern with light component; added the side-table for candle drop-off prior to teleport.
AI agentConfigured in ENGAGE: voice in / voice out, per-user memory, non-denominational avatar.
PresentationThis deck, deployed at confessionary.kanonindustries.com and opened on the in-world ENGAGE browser.

Each row was worked on by both of us at different points, following the research-deploy-swap pattern described in §9.

§ 11 Live Demonstration

Now: the room.

Headset on. Watch the screen.

§ 12 References & Discussion

References

  1. Pennebaker, J. W. (1997). Writing about emotional experiences as a therapeutic process. Psychological Science, 8(3), 162–166.
  2. Lucas, G. M., Gratch, J., King, A., & Morency, L.-P. (2014). It's only a computer: Virtual humans increase willingness to disclose. Computers in Human Behavior, 37, 94–100.

Thank you. Questions welcome.

Virtual Spaces · Zeppelin Universität · Spring 2026
1 / 13