communicate with anyone on the planet in the most natural and fufilling way possible
controllers
body sensors
people want information, applications, and games
in VR, people can
but they want more
they want the web
across all platforms, instantly, and safely
What makes it successful?
Traditional
Browsers
+
Low-level
VR APIs
+
Polyfills
VR Browsers
+
High-level
VR APIs
two paths to the VR web
one incremental,
one experimental
both make sense,
given goals and starting points
game engine
application
scene
browser engine
web app
getUser()
// public information about the user
// useful for nameplates / highscores
getSpace()
// information about the space
// useful for persistence
getEnclosure()
// enclosure dimensions and scaling
// useful for reactive VR design
getThreeJSTrackingSkeleton()
// returns polled skeleton as fused from all body sensors
// useful for using the location of body parts as input
getGamepads()
// returns all gamepad-like input devices, including 6dof
// useful for game input or manipulation of objects
"Fullscreen"
"Windowed"
look for the
tick marks
Live interactive lessons
<a-entity position="0.5 1.25 3" n-spawner="res:interactables/basketball">
released from Beta today
In-world or UI
Rendered natively with signed distance fields
Object
Pulls in a native 3D model
Growing library of free assets
Makes building apps / environments quick
Particle effects (like fire!) are popular
Check it out at the booth
Spawner
Rigidbody objects
Natively synced
Player lifespan
Uses a variety of components
Attach objects to a unified tracking skeleton
Zero latency
Zero bandwidth overhead
Makes use of our exisiting avatar network traffic
Native Skeleton
<a-mixin id="parent-to-head"
position="0 0.05 0.03"
n-skeleton-parent="part: head;"
sync
sync-n-skeleton-parent>
</a-mixin>
Collider
Static bodies
Integrated with movement system
Supports arbitrary meshes
Container
Counts how many objects are in a volume
Enables door triggers or lock / key setups
Internally solves many edge cases
Automatically synced via object synchronization
Sound
Spatialized
Placed at the entity transform
Ogg / MP3
Uses a variety of components
Browser
Similar to <iframe>
Enables the placement of sub-apps
Useful for events and other fullspace apps
Creates browser-ception
Natively synchronized, parsed in layout phase
Portal
Instantly travel to elsewhere in the same space,
or to another space entirely
Enables the creation of multi-space events
Use our interface, or customize it with your own