3D room design allows users to visualize a room using multiple pieces of furniture of their choice. This makes it fun and engaging for users. For retailers, the average transaction value increases significantly. Point105-AR technology helps create high-quality 3D content for individual pieces. We have been working on creating a high quality experience for 3D room design using glTF and USDZ files.
Google announced support for 3D Models and AR experiences on Search this Google I/O 2019. This enables immersive and intuitive 3D based experiences directly on Search for users. With this capability, 3D content owners will now be able to showcase their amazing content to billions of users around the world.
glTF files for Google Search
In order for Google Search to surface your 3D Models, you will need to convert your 3D Models to glTF and host the glTF file on your website. Google Search will index these and start showing these models to users when they search.
With this feature, another large platform is now supporting glTF formatted files (Superformat!).
<model-viewer> for glTF display
Google had introduced <model-viewer> web component to add 3D models to websites. They have now introduced an additional attribute ar to indicate that this object can be visualised in AR mode. Also, you can also specify an ios-src attribute with a USDZ formatted model to view the model using AR Quick Look feature on iOS devices.
With these features, model-viewer web component makes it easy to add 3D Models to your websites and enable AR modes on Android, iOS and Magic Leap devices.
<model-viewer> preview in Point105-AR
We have added a View in model-viewer feature in our service starting today and as users you can preview how your models look directly on our service. Try it out at https://app.point105ar.com.
Code to add 3D Models
In order to add the model-viewer web component to your website, you need to first import the scripts for the component.
<script type="module" src="https://unpkg.com/@email@example.com/dist/model-viewer.js"></script> <script nomodule src="https://unpkg.com/@firstname.lastname@example.org/dist/model-viewer-legacy.js"></script>
To display the 3D Model, use the following HTML code.
<model-viewer alt="3D Model" src="model.glb" ios-src="model.usdz" magic-leap ar>
There are additional attributes such as auto-rotate and camera-controls that allow you make the objects dynamic and interactive.
This post gives you an example V-Ray to glTF and USDZ model conversion on 3DS Max.
Example V-Ray to glTF and USDZ
Here is the V-Ray render of a chair model on 3DS Max.
This chair can now be easily converted to glTF and USDZ models using our procedure for conversion described in our webpage here.
All files for this example can be download from our Github repository:
Example steps for preparing FBX file
A few modifications required based on our recommendations is to bake Color Corrections as well as Tiled textures. In this example, one of the textures is tiled. Note the Tiling 3.0 for the following Diffuse Map.
This texture contains Color Correction. Notice that the Saturation has been altered.
In both these cases, you will need to Bake these changes into a new texture and then export a binary FBX with embedded media.
Get glTF and USDZ
Upload the FBX file to our service at https://app.point105ar.com and we will generate the glTF and USDZ files that you can download.
The below GIF shows an example output from V-Ray shown in AR Quick Look using the USDZ files generated using Point105-AR service.
We recently added support for V-Ray materials on 3DS Max. However, we did not provide a method for adding Ambient Occlusion to the model. Starting today, you can now add Ambient Occlusion.
Add Ambient Occlusion to V-Ray Materials
In order to add Ambient Occlusion (AO) to your models: 1) Bake AO, 2) Add the map to Fog Color slot, 3) Follow our export process. We will automatically read the AO Map from the Fog Color slot and add it to the output glTF and USDZ models.
Given the developments over the last year in AR/VR technology, glTF and USDZ are going to be the most important formats for 3D models. In fact, we think glTF and USDZ are now essential to most companies focussed on AR/VR. As a result, formatting your 3D models to glTF and USDZ enables a lot of user experiences. Let us look at some of them.
Apple announced their support for USDZ in WWDC 2018 as part of ARKit 2. In collaboration with Pixar, Apple launched this new open file format that enables several new experiences.
iOS 12 makes it easy to experience AR nearly anywhere in iOS.
Quick Look for AR allows users to place 3D objects in the real world to see how the objects look and feel in your space. Interestingly, this feature enables a wide range of applications such as trying out furniture in your home or experiencing an animated character in your backyard.
Most importantly, Safari supports AR Quick Look. This allows websites to link USDZ models on their webpages and users to view these models in AR directly from their Safari app. You, as a business owner, do not need a dedicated app to enable this AR experience.
Sharing across apps
Users can share USDZ objects using several apps in iOS12 such as Mail, Messages, Files, News and of course, Safari. Sharing AR experiences on these apps will be as easy as shading usdz files. This is going to be magical for users!
QLPreviewController supports AR Quick Look of 3D objects in iOS12. Integrating AR experiences in your mobile app will be as easy as integrating QLPreviewController once you have USDZ formatted models.
For more customised AR experiences on iOS with ARKit 2, USDZ now provides far more power and enables two critical abilities for developers:
- 3D modelling process encapsulation: Until now, COLLADA (or.dae) format was usually used to import models into ARKit apps. A critical issue with this approach was that software engineers have to configure texture maps and play around with lighting to ensure fidelity of representation. This needed a lot of back-and-forth between 3D artists and software engineers to create the best experience. USDZ solves this problem by using a PBR modelling paradigm and packaging the model in a fully-specified self-contained file.
- Over the network 3D models: By virtue of being a single file format and the support for runtime loading capability in ARKit 2, USDZ is the ideal format to load 3D models dynamically over the network to build magical AR experiences.
glTF is described as the JPEG of 3D by its creators. It is a runtime asset delivery format developed by Khronos Group 3D Formats Working Group. Since its creation, several platforms have started supporting glTF as a format to consume 3D content.
Several WebGL platforms such as three.js, BabylonJS, Cesium, A-Frame and many others support glTF loading. You can build rich AR/VR/WebGL experiences for your users using these.
ARCore now supports runtime loading of glTF assets without conversion to SceneForm format. As a result, you can deliver glTF formatted models over the network to your app and build AR experiences using ARCore. As with USDZ, this has amazing benefits of relatively predictable 3D model fidelity and easy over-the-network delivery of assets for apps.
Facebook AR Studio and 3D Posts
glTF formatted models are ideally suited to building AR Studio experiences as well as for 3D posts on your Facebook page. Here as well, using glTF models has the advantage that the Software Engineer or AR developer does not need to configure model parameters and textures.
glTF and USDZ Superformats
Converting your 3D assets to glTF and USDZ formats enables a lot of AR/VR/WebGL applications for your users. This can unlock new channels of engagement and business models for you. We believe these new formats are going to become fundamental to the AR/VR industry.
Do checkout our blogpost as a primer on various formats that currently used in the 3D industry.
We are very excited to be part of Cohort 6 of the Target Accelerator Program in India!
Quote about us from the article: “Point105-AR provides a holistic 3D asset management solution for augmented reality experiences.”
It is very exciting to be working with one of the best 3D CGI and retail technology teams in the world. Our product addresses the need to be able to create and manage 3D assets for creating AR experiences at scale. Along with Target, we will be exploring how we can help accelerate the roadmap for AR.
Check out webpage for more information.
In order to use the amazing 3D models and animation for your Augmented Reality experiences, you need to export them in 3D model formats. Each Augmented Reality platform understands a few model formats and there are several. It is really tricky to handle multiple 3D model formats to work with each AR platform.
3D model formats
AR platforms rely on graphics technologies to draw (or render) 3D objects. A 3D model format stores information such as the 3D mesh, animations, materials, textures, and lighting. Unfortunately, there are several formats and each graphics system relies on a different set of formats. Let us look at a few formats we work with.
COLLADA (COLLAborative Design Activity) is a widely supported 3D model format. COLLADA documents are typically identified by a .dae file extension. Most platforms support this format, including SceneKit (iOS), Unity, and WebGL. Textures or image files are kept separate and are not packed into a single file. Also, COLLADA is not a binary format.
We use COLLADA when we work across tools within our company. However, we do not recommend using this format to work directly in applications.
FBX (Filmbox) is also a widely supported format and the files are usually identified by a .fbx file extension. FBX has reliable implementations across 3D software and is especially very good with supporting animations and bones. However, SceneKit, the graphics platform provided by iOS, does not support this format natively.
We do not recommend using this format for applications directly. We could use this format to import animations into Facebook AR Studio and other software as an intermediate step.
OBJ (Wavefront) is a standard format supported by many software applications, identified by .obj file extension. One downside to OBJ is that it represents mesh geometry alone. The visual appearance or material information is stored in a separate file (or files) with a .mtl extension. The format does not have units as well. While the simplicity of the format makes it very reliable to support across applications, we do not recommend using this format to work directly in applications.
gfTF (.gltf and.glb)
glTF (GL Transmission Format) is a more recent 3D model format described as the JPEG of 3D. glTF supports a binary format, usually identified as a .glb file extension and a text format, usually identified as a .gltf extension. The self-contained binary format packs textures/images as well. As a result, the model format is very attractive to use because a single file is sufficient.
The support for this format has recently become prevalent among several applications.
- Facebook AR Studio and Facebook 3D Posts support glTF 2.0.
- Unity, SceneKit for iOS, SceneForm for ARCore have support for glTF.
We recommend using glTF as a format for applications and our users.
Apple announced support for USDZ (Universal Scene Description) format as part of ARKit 2. iOS 12's Quick Look feature allows users to experience AR directly from various system applications such as Messages, Mail, Safari, etc.
For iOS applications and users, USDZ is a powerful format to use.
Most of the AR platforms we work with support glTF (iOS, Unity, WebGL) and USDZ (iOS) now. These are our preferred 3D model format for application.