Thursday, 17 December 2020

The Best AR Application services

 

The number of 3D modeling tools and file formats is very excessive and picking the best 3D model format for your AR applications because it can be somewhat frustrating and confusing this article explains what we learned from building our first AR application, and which 3D file format proved to be the strongest for the job.

 

Problem

Our XR application is powered by popular union game machines, and our CMS allows us to import new assets into our application when they run. This makes it easy to make changes to your application without having to push the entire application update to the store.

 

The first step is to decide on the 3D file format for use, and one of the main criteria is the unity must be able to swallow it. View unity documents, we learn that FBX, Dae (Collada), 3DS, DXF, OBJ, and SKP files are supported. We then narrowed this list. For example, OBJ is not an option, because it does not support animation, and 3DS only works with 3ds max, so it's too limited. We finally decided that the FBX, the 3D format that is widely used by Autodesk, is the type of file option because it functions with various software packages, OBJ, DXF, DAE, and 3DS can be easily converted to FBX using FBX. SDK, and FBX models can be seen on the web using Three.js.

 

The main problem we encounter is that the unit does not like it when you try to import 3D models during runtime, because game developers usually have all their models imported in their unitary projects before they build it ("edit time"). We found assets importers 3D models at the Store Unity Asset, which promised to allow runtime to import 40+ 3D file formats. However, our original format planned to use, FBX, only partially supported, and so we don't understand how we import models at runtime.

 

What will sketch be doing?

In the title, we originally specialized in VIDEO 360ยบ VR, so handle a new 3D model for us. That's why we decided to see Sketchfab, one of the largest 3D model websites in the world, to see if we could learn something from what they did. What we found was a pleasant surprise ...

 

 

 

Mech Drone by Willy Decarpentrie in Sketchfab

 

When we try to download the Mech model from Sketchfab, we are presented with two options: 1) Download the original file uploaded by the creator, or 2) Download the converted file in the GLTF format. GLTF?! Never heard that before! But if it is the format of choice for sketchfab, there must be something for it, and some further excavations reveal a lot of interesting information about this mysterious file format.

 

GLTF: JPEG of 3D

 

 

GLTF is "JPEG of 3D" that is self-proclaimed, and the first thing to raise us about GLTF, is that it is a format created by the Khronos group, which is a group behind WebGL standards, and includes members like Apple, Microsoft, Google, Nvidia , and many more heavyweight technology industry. In the words of the creator:

GLTF minimizes the size of 3D assets, and processing runtime needed to disassemble and use these assets. GLTF defines the format of general publications that can be expanded to 3D content tools and services that streamline workflows are writing and allow the use of interoperable content throughout the industry. "

 

As you can read in the statement above, GLTF is free of royalties, and not related to certain software packages. It also has small file sizes and extraordinary performance, making it an ideal format for cellular and web applications.

 

We also see the fact that SketchFab uses GLTF as the format of choice as the main added value, because in the future we will be happy to allow users to import their 3D models to headjack directly from their SketchFab account. Even Facebook announces support for GLTF!

 

Closer display.

On a more technical note, what is the GLTF file? Well, it's actually a combination of files, as you can see in the image below.

 

 

 

However, because we host these models on the server and have to import it into the application, it will be much easier if .gltf, the .bin, and texture files can be combined into one file. Fortunately, the GLTF standard has this option, in the form of a GLB file container with the .glb extension. In this way we only need to deal with one file, which makes many things easier and is the main benefit of file format such as obj, which does not have this option.

 

In connection with compression, the group has the following to say:

However, the design team believes that compression is a very an important part of transmission standards, and there is already a work that is being done to define compression extensions."

 

For now, however, some compression can be achieved using web3d_quantized_attributes.

 

As expected from the standard Khronos group, there is extensive support for the GLTF format. Some examples of striking tools that have supported it:

 

Unity

Sketchfab.

Three.js.

A frame

Microsoft Paint 3D.

And head jack can be added to the list after we launch our AR feature later this year!

 

Now you have hopefully as excited as us about GLTF, but how can you change your model into a GLTF file? Well, one way is to upload your model to SketchFab, and then download it as GLTF. However, a better approach is to use one of some GLTF exporters and converters out there. For example, official blenders, 3ds max and sketch exporters, and FBX2GLTF converter or obj2gltf. This GLTF model can then be seen in Unity, Paint 3D, or a very impressive viewer of clay. As you can see, there is already a very impressive ecosystem for this rather new format.

 

No comments:

Post a Comment