How to Save Big Bucks Creating an AR/VR App
Tags: unity3d, tutorial, augmentedreality, devops
Published: 2021-07-12 08:38:57

![1.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1626077993872/qtQOPr-8of.png)

**Attention all developers interested in creating augmented and virtual reality (AR/VR) experiences!** Looking for a way to build an AR/VR app for your business or your clients while keeping development costs low? Try this simple step — **moving your 3D assets to the cloud!**

Many developers are overwhelmed by the sheer complexity of developing AR/VR solutions — particularly, when it come to setting up a backend that can support the management and delivery of large-size three dimensional (3D) assets. **3D development costs are high and the 3D development cycle is long!**

This is where [echoAR](https://www.echoar.xyz/), one of the newest members of the Unity Verified Solutions Partners program, comes in! AR/VR companies and software development workshop can easily and quickly set up their AR/VR app backend, saving them big bucks on the development process. echoAR offers a 3D-first content management system (CMS) and delivery network (CDN) and a scalable BaaS infrastructure that enables developers to build an AR/VR app backend in minutes and easily manage and publish 3D content for a fraction of the price!

**Here’s a step-by-step guide for creating a Unity-based AR/VR app with echoAR for FREE:**

> Full documentation for how to use echoAR with ARKit, AR.js, Swift for iOS, Android Studio, Flutter, and more can be found [here](https://docs.echoar.xyz/).

## 🔑 Get an API key

* Register for FREE at [echoAR](https://console.echoar.xyz/#/auth/register) and get your own API key (also check your inbox for an automatic email with your key).
* Upon registration you will be redirected to the console (you can also use the link in the registration email to get back to the console anytime.) Make sure your key is set in the header or type and load it yourself!

![2.gif](https://cdn.hashnode.com/res/hashnode/image/upload/v1626078100762/4cRS_OPna.gif)

* **You did it! 🎉**

## 🔨 Install the Unity SDK

You can easily use echoAR as a backend for your Unity project by following these steps:

* **Download Unity SDK**: Click the “Downloads” button in the top header bar to directly download the echoAR SDK for Unity.

![3.jpg](https://cdn.hashnode.com/res/hashnode/image/upload/v1626078135747/BZguI_Cqh.jpeg)

* **Open a Unity Project**: Create a new or open an existing project in Unity (make sure your Unity version is [up to date](https://docs.unity3d.com/Manual/index.html) and has the required modules to build an app on your platform of choice!)

* **Integrate Unity SDK**: Double click on the `echoAR-Unity.unitypackage` file to import it into your Unity project. Alternativity, click `Assets > Import Package > Custom Package...` in the top menu bar and choose the `echoAR-Unity.unitypackage` file to import it into your Unity project.

![4.gif](https://cdn.hashnode.com/res/hashnode/image/upload/v1626078235250/_fykxR2rt.gif)

* That’s it! 🎉

## 🧰 Using the SDK

* **Streaming 3D holograms into Unity**: Either open the sample scene under `Assets/echoAR/Examples/sample`

![5.gif](https://cdn.hashnode.com/res/hashnode/image/upload/v1626078266278/6ibOwA5f-.gif)

* or create a new empty game object and attach the script `echoAR/echoAR.cs` to it.

![6.gif](https://cdn.hashnode.com/res/hashnode/image/upload/v1626078285762/w7bulFHqx.gif)

* In the Inspector View for the echoAR game object or the empty game object that you created, update the `API Key` field with your API key.

![7.gif](https://cdn.hashnode.com/res/hashnode/image/upload/v1626078311128/hx9MS5ihI.gif)

* [Add a 3D model](https://docs.echoar.xyz/quickstart/add-a-3d-model) through the [console](https://console.echoar.xyz/) ([here’s how](https://docs.echoar.xyz/quickstart/add-a-3d-model))

![8.gif](https://cdn.hashnode.com/res/hashnode/image/upload/v1626078382370/Z3fAzDtBH.gif)

* Go back to Unity and hit the **Play** button. The SDK will stream the 3D model into Unity.

* **Great work! 🎉**

## 📐 Transforming Content

* **Real-time updates and animations**: You can go back to the console to add more 3D models, delete 3D models, [add metadata](https://docs.echoar.xyz/web-console/manage-pages/data-page/how-to-add-data#adding-metadata), or change existing metadata associated with your entry and instantly see the changes in Unity even **while the Unity project is running**.

* For example, lets [add metadata](https://medium.com/web-console/manage-pages/data-page/how-to-add-data#adding-metadata) with the key `direction` and the value `right`.

![9.jpg](https://cdn.hashnode.com/res/hashnode/image/upload/v1626078464508/UlxxhaH6H.jpeg)

* This will make the 3D model rotated to the right.

![10.gif](https://cdn.hashnode.com/res/hashnode/image/upload/v1626078482554/jklGCzXc9.gif)

* **Build-in keywords**: Certain metadata keys are already pre-defined for you for easy control of real-time transformations (such as, scale, direction, shader, height, width). See the full list [here](https://docs.echoar.xyz/unity/transforming-content). While built-in keywords will be suggested through a drop-down list in the console, **you can [add](https://docs.echoar.xyz/web-console/manage-pages/data-page/how-to-add-data#1-adding-a-data-entry) any key and any value!**

## 👩‍💻 Edit code
* Now that you are able to successfully stream the 3D model into Unity, you can also make custom adjustments to it.
* Each hologram will be instantiated with a script named `CustomBehaviour.cs` attached.
* You can edit this script to create any behavior you would like while referencing additional data streamed from the cloud.
* Learn how to add code to your Unity project while getting data from the cloud [here](https://docs.echoar.xyz/unity/edit-code). You can also query and post metadata and listen for metadata changes.

![11.gif](https://cdn.hashnode.com/res/hashnode/image/upload/v1626078562322/hIflhLT8W.gif)

* **Great work! 🎉**

## 🤳 Adding AR capabilities
* Now that you are successfully able to stream 3D content into Unity and know how to change content, you might consider adding AR capabilities to your cloud-connected Unity project.
* Unity provides a framework purpose-built for AR development called [AR Foundation](https://unity.com/unity/features/arfoundation). It allows you to build across multiple mobile and wearable AR devices, such as Android with ARCore and iOS with ARKit.
* Clone the open-source [Unity + AR Foundation + echoAR (https://github.com/echoARxyz/Unity-ARFoundation-echoAR-example) example project on GitHub and open it in Unity.
* Setup a simple AR application with your API key and then build and run the AR application. Learn how [here](https://docs.echoar.xyz/unity/adding-ar-capabilities).

![12.gif](https://cdn.hashnode.com/res/hashnode/image/upload/v1626078653223/1ACuDqyrm.gif)

* If the model is too big or too small, go back to the console and [add metadata](https://docs.echoar.xyz/web-console/manage-pages/data-page/how-to-add-data#adding-metadata) to affect its scale. After adding metadata the model should change automatically.
* **You did it! 🎉**

## ❔ Troubleshooting

Troubleshoot issues [here](https://docs.echoar.xyz/unity/troubleshooting). You can check out our full documentation for other useful tutorials [here](https://docs.echoar.xyz/) and also reach out to our support team [here](http://go.echoar.xyz/join).

## 💫Frequently Asked Questions (FAQs):

***What are the biggest differences between pricing models?***

echoAR currently offers 4 product tiers at different price points. Each tier differs in the number of users, storage, downloads, and bandwidth it provides. Higher tiers also enjoy many priority support and premium features to streamline the 3D development process. Check out the tiers [here](https://www.echoar.xyz/pricing)!

***Is White labeling of models possible?***

Yes! For enterprise clients, white labeling is an option!

***How do I upload my own content to echoAR?***

You can upload a model by clicking “Add To Cloud” on echoAR’s main page. Check here for our [documentation](https://docs.echoar.xyz/quickstart/add-a-3d-model)!

***Is echoAR compatible with different AR/VR technologies?***

Yes! Our cross-platform system supports any AR/VR client-side SDK for developers to choose to build their app, such as ARCore, ARKit, Vuforia, WebXR, AR.js, Swift, Flutter, Oculus SDK, Unity-based SDKs, Microsoft HoloLens, MagicLeap, and more. echoAR is also a Unity Verified Solutions Partner.

***Where can I learn more?***

Check out our AR/VR dev workshop recording on [YouTube](https://www.youtube.com/watch?v=J_h_ygpxqbg&list=PLlNGTOzDSLPMaoyhYpoOm_nKPx3BHsBje) or our [website](https://www.echoar.xyz/). You can check out our full documentation for other useful tutorials [here](https://docs.echoar.xyz/).

***How do I get in touch?***

If you have any other questions, join our [Slack](http://go.echoar.xyz/join), send us an [email](support@echoar.xyz), reach out on [Facebook](https://www.facebook.com/echoARInc/), connect on [LinkedIn](https://www.linkedin.com/company/echoar/), or [tweet](https://twitter.com/_echoAR_) to say hello.

***
> echoAR (http://www.echoAR.xyz; Techstars ’19) is a cloud platform for 3D/AR/VR that provides tools and server-side infrastructure to help developers & companies quickly build and deploy 3D games, apps, and experiences.

![13.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1626078835512/nvCdG86DX0.png)