Search
Start typing to search...

Augmented Reality

Author:

Introduction

In this documentation, we will talk about creating an AR scene using Aximmetry SE. We will cover adding a model, adding shadows, and reflections, and some additional information to make it more realistic.
You can read about AR production in general here.

Importing the required compounds

To be able to render an AR scene you will need the following compounds:

  • [Common_Studio]:Compounds\Render\Render_General.xcomp / Render_General_PBR compound
  • [Common_Studio]:Camera\ARCam\ARCam_3-Cam.xcomp Camera Compound
  • Your AR model

Drag-n-drop them into the flow editor and set up the connections like so:

After this, you can position your model in the 3D space.

With tracking system

First, you should set up your inputs:
- Go to the INPUTS Control Board and select the INPUT X module.

 - in the property editor specify your Camera Device and Tracking Device:

Note: If you have your Tracking Device calibrated using Aximmetry Calibrator or Basic Calibrator you should also load the Calibration Profile here.

Now you should be able to see your AR model.
In some cases, you might need to look around with the camera as the object might be behind it.

Once you have found it you can move it to the desired location.
You can turn on the Transformation Gizmo to make positioning easier:
You can learn more about the transformation gizmo here.

Without Tracking system

There might be some special cases when you do not have a tracking system but you still want to do some preparations.
In this case:
- Go to the INPUTS Control Board and select the INPUT X module

 - in the property editor specify your Camera Device

 - Use the Transformation values of your model to move it in front of the camera:
Note that you might have to play a little with the values to be able to see the model
Please note that the position of the models will have to be readjusted when a tracking system is added to the setup.


You can turn on the Transformation Gizmo to make positioning easier:
You can learn more about the transformation gizmo here

After this, You can set up its materials.

Adding Shadows

To be able to add shadows to your AR object you should add one or more dynamic lights to your scene.
You can learn more about dynamic lights here.

Adding a Shadow Catcher

A shadow catcher is a transparent object on which only the shadow is visible.
Add a Scene Node and a Rectangle to your scene and connect them like so:

Position the Rectangle so that it covers the location where you want the shadows to be:

Adding Shadow Catcher above the ground

If you wish to add shadow to let's say a table, you will need to take some extra steps:
First, you need to measure the size of your real table. Its depth, length, and height.
Then you have to adjust the 3D Rectangles sizes accordingly.
Let's say you have a table that is 0.9m wide, 0.5m deep and its height is 0.75m.

The properties of the Rectangle should be the following:

  • Plane: XZ(1) - This makes the Rectangle face upwards.
  • X Start and X End - These values set the width of the Rectangle
  • Y Start and Y End - These values set the depth of the Rectangle


Then you should position the Scene Node to the height of the real table, 0,75m in this example:

Then you can use the Transformation Gizmo to rough position the plane at the table:
You can learn more about the transformation gizmo here

You can fine-tune the position of the Rectangle using the Transformation properties of the Scene Node.

Adding the Shadow Catcher shader

Add a [Common]:Shaders\Special\Transp_ShadowOnly.xshad and connect it to the Rectangle:

Set the Transparency property of the shader to Normal(1):

You can adjust the opacity of the shadow using the Opacity property.
The image on the right shows the current settings for this shadow:

We see that the Sphere is now casting a shadow but it looks a bit too dark in this environment.
To add more realism we can add Ambient Light to our scene as well:
More on lights here.

This is the result:

Using IBL with an AR scene

To make an AR object blend in with the environment in the best possible way you can apply Image Based Lighting to it.
When using IBL for your AR objects there are 3 possible ways as described here. - coming soon
To be able to use IBL with your ar object you should set up their shaders as described here.
Each method should give a similar result:

Adding Reflections

To be able to add reflections to the scene we need to add a reflection plane:
You should add a Rectangle the same way you did for the Shadow Catcher.

NOTE: You can do it more easily by copying the Shadow Catcher.

  • Select the Shadow Catcher's Scene Node and Rectangle.
    Press Alt and Drag-n-Drop them to duplicate.
    Disconnect the Transp_ShadowOnly shader from the duplicate.

Add a [Common]:Shaders\Mirror\Mirror_Flat.xshad shader and connect it to the rectangle:

Follow the instructions on adding Planar Reflections here and connect the MIRROR-1 tunnel to the Mirror Image input of the shader:

Set the Transparency property of the shader to Add(2):

Placing the Reflection

Position the Reflection Catcher the same way you did with the Shadow Catcher.
As the Shadow Catcher and the Reflection Catcher are at the same height only the Shadow Catcher will be visible.
Select the Mirror catcher's Scene Node and raise its height by 0.001 meters.
In the case of floor reflection, I have moved it from 0 to 0.001 meters:

And in the case of table reflection, I have moved it from 0.75 to 0.751 meters:

Your flow editor should look like this:

And your output should be something similar:

To make the reflection more realistic you can have a look at our Planar Reflections documentation.

Article content

Loading
Close
Loading spinner icon
1/10