Welcome to the 6D.ai Developer Portal

Founded in 2017, 6D.ai was spun out from Oxford University’s Active Vision Lab, building APIs to help developers augment reality in ways that users would find meaningful, useful and exciting. Our mission is to build the 6D Reality Platform, which developers interact with through SDKs with multi-platform support, that will allow you to create apps that interact with reality at room, house, city, or even world scale. Our Reality Platform enables you to have assets that go around and behind objects, and remembers where persistent objects were placed - weeks, months, or even years ago.

We are excited to have you join us on this journey!

About the 6D Reality Platform

The 6D Reality Platform is built around a set of innovative cloud services and mobile native SDKs which enhance the AR apps you build, helping them interact with the world in a natural and realistic way. Current AR limits a user to a small area, with no way to occlude objects, where content is lost as soon as an app is closed. Apps built with the 6D Reality Platform use a standard single-lens smartphone camera to build a crowdsourced, three-dimensional semantic map of the world in real-time, all in the background on your users' device. Users can interact with a full mesh of what their camera sees in less than a second. We store these maps in the 6D AR Cloud, so that we can automatically expand the map beyond what the users camera sees in any location that has been previously visited by any 6D based app.

What functionality is in the current beta SDK

Our SDK currently runs on iOS devices, with Android beta signup underway for true cross-platform multiplayer support. Note that all of the data collection, processing, and output is handled directly on device, not requiring any external services or cloud computing! We only use the 6D AR Cloud to store your maps and return them at a later date to keep your coordinate system consistent for that location across user sessions, and to expand maps for a richer 3D experience.

  • Real time 3D mesh reconstruction: The first ever real-time, high-fidelity 3D reconstruction from monocular RGB capability in the industry! We call this feature "meshing" as it outputs a realtime updated 3D mesh of the environment around the user. This mesh is updated many times per second, and developers have access to it within seconds of an app being opened by a user.

    Just like relocalization enables multiplayer and persistence, meshing enables critical augmented reality features: occlusion, physics, real world interaction, and procedural augmentation.

  • Real time object occlusion: In 3D graphic design, occlusion is the effect of one object in a 3D space blocking another object from view. Our mesh allows for this type of interaction between AR objects and real world objects. This helps you create powerful, natural feeling, experiences for your augmented reality app.

    Use the Ball Pit scene in the 6D Sample App to interact with our real time mesh and occlusion of objects.

  • Persistence of content: Content created in an AR app session can be saved to the AR Cloud and retrieved later in another app session, or on other devices. In other words, digital content can be placed somewhere and still be there waiting days (or even months) later!
  • No-click multiplayer: No convoluted procedures or rituals are needed to begin a multiplayer AR session. Player 1 starts a session, Player 2 joins it. We take the UX for AR multiplayer seriously, and will continue to do our best to make it frictionless.
  • iOS support: The SDK is currently fully compatible with:
    • iPhone 11, iPhone 11 Pro, iPhone 11 Pro Max, iPhone XS Max, iPhone XS, iPhone XR, iPhone X, iPhone 8 Plus, iPhone 8, iPhone 7 Plus, iPhone 7
    • iPad Pro (All generations and sizes), iPad Mini (2019, 5th Gen), iPad Air (2019, 3rd Gen), iPad (2019, 7th Gen), iPad (2018, 6th Gen)
    • iOS 11.4 or newer
  • Unity Sample App: A Unity app with four scenes to illustrate how to implement the powerful functionality of the 6D.ai SDK.
  • SceneKit Sample App: A simple SceneKit app written with Swift to illustrate how to implement the powerful functionality of the 6D.ai SDK.

What am I supposed to do now?

If you haven't registered for the beta, do that first. Once you recieve your beta welcome email, we want you to experiment with a sample app with Unity, built on top of the 6D Reality Platform SDK framework for iOS. The scenes within the app are designed to demonstrate our ability to support the features we listed above, including Object Persistence, Multiplayer, Real Time 3D Mesh Creation, and Real Time Object Occlusion. We recommend starting with the Basic Sample App, then moving on to Muti-player, Meshing or the fun Ball Pit game. Please use our C# code as a reference to understand how to implement your own experiences on top of the SDK, and reach out on our 6D Developer Slack channels for any help.

If you have experience working with SceneKit and Swift, we have a separate version of our SDK bundle that contains a sample app that is similar to the Ball Pit Unity sample app.

We would like you to build these apps and test them out. Once you've built one, be sure to read through the API docs and change the game around. Try to break things, try to add your own functionality, and let us know everything - good or bad - so we can ensure we are working on items that will benefit you the most.

As you test our sample apps, and develop your own experiences, we encourage you to post widely on social media and we will rebroadcast - please tag with #6d_ai.

The only thing we ask during this beta period is that you share any negative feedback or bad experiences with us privately first and give us a chance to resolve things - you will see that we are a ferociously developer-friendly team 😀

If you are working on an AR project, please try to use our SDK to power it. Let us know if we are missing key functionality you need. If things are working well, and you would like to release a project built on top of the 6D Reality Platform, please contact our developer relations team at developers@6d.ai to discuss next steps.

Steps to build the apps:

Check System Requirements
You WILL have issues that we can't support if you don't ensure your developement environment is matching our requirements.

  • iPhone 11, iPhone 11 Pro, iPhone 11 Pro Max, iPhone XS Max, iPhone XS, iPhone XR, iPhone X, iPhone 8 Plus, iPhone 8, iPhone 7 Plus, iPhone 7
  • iPad Pro (All generations and sizes), iPad Mini (2019, 5th Gen), iPad Air (2019, 3rd Gen), iPad (2019, 7th Gen), iPad (2018, 6th Gen)
  • iOS 11.4 or newer
  • Xcode 10+
  • Unity3D 2019.2+
  • Unity Hub 2.0+

Download your API keys
We require API keys to connect to the AR Cloud so we've pregenerated a set of keys for you. You will want to download your unique SixDegreesSDK.plist file and keep it handy for the next step.
* You only need to download your keys once and save them - they will work will all future versions of the SDK
Download the SDK Sample App bundle
We've packaged everything you need to build an app in Unity including the tutorials and code documentation referenced on this site in the core Unity SDK Samples file. If you are used to working with .unitypackage, then grab the Unity Package. If SceneKit is your thing, snag the SceneKit bundle - note this code is not yet as mature as the Unity sample code but is getting better each week.
Read the Installation Tutorial and build the game
Read through our Sample App installation tutorial where we explain how to build the app in a few easy steps.
Read "How to Play" the game
Read through our Sample App game tutorials where we explain how to play the app so you can experience Persistence, Multiplayer, Meshing and Occlusion.
Read the Code Documentation
Our proprietary computer vision and neural network libraries are exposed via a .h file that you will find in the Plugins folder in Unity. This documentation will give you more info if you want to modify our sample app to add your own custom functionality.
Join our Developer Community
Join the 6D.ai team and a group of your peers that are in the beta program Slack channels. We are active with the community, and enjoy seeing the community discuss ideas and solutions amongst themselves as well.