3D Modeling for
Spatial Computing

March 2024

Introduction

This project is about exploring the opportunities and challenges of designing 3D modeling software for a spatial operating system. The prototype is made in Unity 3D and tested with Meta Quest 3. I'd also like to thank Matthäus Krenn for mentoring me during this project.

True spatial 3D with "Surround Mode"

On 2D monitors, the 3D scene has to be projected onto a flat viewport. This is sometimes preferable, but entering the "Surround Mode", allows you to view your 3D scene with true spatial properties. Viewing surfaces and volumes with accurate scale and proportions, and with true depth, allows you to get a much better understanding of the model you are working on and how it will turn out once you build it in real life.

Familiar input method

The input method for this system is keyboard and mouse. Can you use 3D software on a flat monitor, you can use it here. Viewing 3D objects with a spatial UI is extremely useful when working on objects and environments that will become real later on, like interior spaces and large constructions.

Multi-tasking

Using parallel apps are a huge part of the "3D use-case". You rarely only use the 3D app itself, often you also want to listen to music, have a video call, searching up reference images, looking at a tutorial etc. My concept utilizes the familiar UI pattern of windows, while still enabling a truly spatial 3D experience.

Panels

Not being limited to the hardware of monitors, we can have panels that extend outwards from the app window. This way they can take up the space they need, while still not covering the 3D content. The panel children are connected to the parent window with a "leash". They have a forced proximity to the window, keeping the workspace organized. This mechanic also avoids strange UI behaviors (as shown 10:43 in the long form video further down this page ).

Panel grouping

Too many free floating panels makes it hard to keep the workspace organized. Panel grouping allow the user to create a structure for how they want to work in a dynamic and flexible way.

Cursor behaviour

Using a two dimensional input method, like a mouse, in a three dimensional OS, forced me to develop a cursor with unique behaviors. This is not a novel problem and people have already come up with solutions similar to what I ended up with, but it was hard to find information online on how it was done. While 3D cursors are not quite as stable as cursors on normal monitors, they are still behaving in a predictable way that makes it comfortable and familiar to use.

Real-life 1:1 scale

One unique property of spatial computing is that scale can be perceived accurately. One meter feels like one meter, which makes this technology great for use-cases like interior design.

Full video

I made a long form video where I went through all the interesting things I learned about this problem. I go much deeper into all the benefits and drawbacks to a system like this and the concepts and conclusion I developed.

00:00
01:00
02:26
08:07
14:30
26:16
28:27

Introduction
Windows
Surround Mode
Panels
Flat 3D vs True 3D
Some things you may be wondering about
Outro

The end

If you have any questions around this topic, feel free to email me at: simon.ljungblahd@gmail.com.

While there are a lot of problems around these types of systems that should not be ignored, I'm still very optimistic about volumetric interfaces and the practical and poetic experiences they can provide.