Skip to content
This repository has been archived by the owner on Jan 6, 2025. It is now read-only.

Latest commit

 

History

History
35 lines (18 loc) · 3.8 KB

native.md

File metadata and controls

35 lines (18 loc) · 3.8 KB

What is the Playground?

The Playground is an activity where you can easily and quickly create, share, and play web-based VR content that makes use of the advanced features in AltspaceVR. The space consists of a space-wide browser, and all the content you experience in this activity is defined via the web. Our initial release of the Playground focuses on spawnable physics items and the creation of games, puzzles, and environments that play well with them.

How do I create an app for the Playground?

All Playground applications are created in A-Frame. Creating something with A-Frame is very similar to creating a website with HTML, and is one of the simplest ways to create a VR application. Our introduction tutorials can be found on the AltspaceVR Developer Portal. A-Frame applications can be hosted anywhere on the web. We recommend GitHub pages as a great place to start hosting your app.

What are native components?

Native components are A-Frame components that tap into the infrastructure of AltspaceVR to provide the web with capabilities that would traditionally only be feasible in native game engines. This includes features like physics, colliders, spatialized audio, and high-performance network synchronization that work across all desktop and mobile platforms supported by AltspaceVR.

What are native resources?

Often the most time-consuming part of building a VR application is gathering and optimizing the visual and auditory content you need. Native resources allow you to get started building VR web content immediately without becoming an expert in VR content creation. Our starter resources include fully realized objects like basketballs and soccer balls which bounce, sound, synchronize, and act like you would expect in real life, as well as a full interior set of walls, floors, windows, and ceilings. Native resources will automatically adapt to the performance requirements of various platforms.

What does it mean that the Playground is in Beta?

The Playground makes use of many completely new concepts and features. We expect to iterate quickly, and that new needs and issues will be found as initial content is developed. We will not ensure backward compatibility during the beta. Right now, the Playground is accessible only to AltspaceVR developers. Becoming a developer is easy, feel free to contact us on the developer Slack to gain this flag on your account.

Can I use native components with three.js?

Yes, by adding A-Frame to your three.js project, you can have A-Frame entities that use native components alongside your three.js application. This mostly involves just switching the scene your application uses to the one generated by A-Frame. Native components utilize the Entity-Component system provided by A-Frame, which is a vital abstraction that doesn’t otherwise exist in three.js.

I developed content before the release of the Playground using native effects and colliders. Why does some of it no longer work?

As we were developing native colliders and resources, we noticed some of our unreleased internal APIs being used in some applications. Those APIs were not intended for use and no longer exist. You should be able to make use of native components and resources to achieve very similar results. Feel free to reach out if you have any questions.

Can I use native resources outside of the Playground?

Our standard resources are currently only available in the Playground. We are open to adding native resources to other spaces in the future.

Can I directly control the objects created by spawners or create my own rigidbodies?

Not yet. Synchronized physics is quite difficult, and spawned objects is a sub problem that is significantly simpler to implement and reason about. That being said, it is something that we care are about and are looking into.