When creating Spark AR effects, you may want your objects to be sized to real-world scale. This is key when creating effects for business use cases. For example, if your effect allows users to place items from a furniture catalog in their living space, the 3D furniture should be sized based on the real-world space.
There are 2 ways to enable real world scale in Spark AR Studio depending on the type of user experience you want to create:
Before importing a 3D object, disable automatic scaling for 3D objects with these steps:
1. With planeTracker0 selected, go to the Inspector and to the right of Real-World-Scale, select the box.
2. From the Enable Effect dropdown, select one of the following the distribution methods:
To improve the user experience on all types of devices, you can build a patch graph to hide your object unless one of the following conditions is met:
To build this graph, you need a plane tracker real scale patch. To find this patch:
This patch has two outputs that each send a boolean true/false signal.
Example patch graph
In the example below, we built a patch graph so that a chair object is both hidden from users on newer devices until a real-scale signal is detected, and visible to users on unsupported devices.
When either boolean signal is true, the Or patch outputs a true signal to the First Boolean input in the And patch. The And patch checks this First Boolean signal and also checks the Second Boolean signal received from the planeTracker0 patch, which determines if the plane tracker is found or not.
The And patch only outputs a true signal to show the chair as visible if both the First and Second Boolean signals in the And patch are true, i.e.
If you’re only distributing your effect to devices with real scale, simplify your graph by disconnecting the top Real Scale supported output of the Plane Tracker Real Scale Patch and deleting the Not and OR patches:
In this example graph, the And patch sends a signal to show the chair as visible once it’s checked that both the First Boolean and Second Boolean input signals are true, i.e:
When you mirror your real-scale effect, objects under the plane tracker will appear in their real-world size, relative to their position from the camera.