Here are a few things to keep in mind while you are preparing 3D content for Adobe Aero.

To prepare your 3D content for Aero, remember that simpler your 3D model is, the better it will perform in Aero. Aero supports models up to 130K Polygons.

New to 3D content?

AR relies on principles of good design and compelling content. You might already posses the skills needed to work with 2D digital assets. To work with AR-ready 3D content, you need to begin by 'thinking in Z'. Here is a brief on how to navigate X, Y and Z axis.

X and Y coordinates represent a distance relative to an origin point which usually is the upper left corner of a 2D image, window, or any other rectangular container.

  • X is the distance left or right.
  • Y is the up or down distance relative to the origin.

For example, if there is a digital image that is 20 pixels wide by 20 pixels tall, then the pixel at “10, 10” is near the center of that image.

3D allows you to move that single pixel forward or backward by using the “Z” axis (X, Y, Z). A pixel location of “(10, 10, 10)” tells you that the pixel is still within the middle of the screen when looking straight on, but it’s 10 pixels away from you or the viewer. “(10, 10, -10)” means the pixel is still in the middle of the screen when looking at it straight on, but it’s 10 pixels towards you or the viewer.

image depicting x, y and z axis

Note:

A common term for 3D content is a model. A 3D model is 3D representation of an object either real or stylized that has volume, shape and texture in 3D space. 

Concepts that are good to know

Animation

Aero supports animated 3D objects. You can create or source 3D animated objects and characters.

Type Description
Rigid body animation A rigid body animation is an animation consisting of rotation, scaling, and translation (movement) of an object as a whole over time. This is often used to move solid objects, such as vehicles, doors, or machinery.
Skeletal animation  Skeletal animations are animations consisting of movement, rotation, or scaling, of a structure of bones over time. Often one or more 3D meshes is mapped to the bones with “painted weights” that indicate which areas of the mesh should deform based on which of the bones. This is often used to animate bendy things, such as animals and plants.
Keyframes, Mocap, and Procedural animation Rigid Body and Skeletal animations are often created using “key frame animation”, in which an animator decides where each object should be at certain “key” frames, and all in-between frames are computed automatically. Key frame animation results in the smallest file sizes for animation. Motion Capture animation is animation data that is acquired using motion capture cameras. This type of animation data can be extremely large. Procedural animation is animation that is automatically computed from equations in software. Procedural animation will need to be converted into keyframe data when exporting, which is likely to make it large like motion capture data. 
Other types of animation  Other types of animations such as fluid or cloth simulation output, morph shapes, and animations of textures, cannot be imported by Aero at this time. Fluid and cloth simulations are used for realistic movement of liquids, gasses, and cloth. Morph shapes are often used for facial expressions, but can also be used for many other purposes. Texture animations are often used for rippling water surfaces or similar effects.

Points to note

  • Models that contain animation or skeletons will be unable to load if they are too large to fit in memory.
  • Aero supports both rigid body animation (rotation, scale, translation) and skeletal animation when importing GLB or FBX files.  Currently, only one animation (or “take”) per file is supported. 
  • For skeletal animation, each bone can be animated, but weights / blend shapes / morph shapes cannot be animated. 
  • Please note that, if you are using Blender, version 2.81 or above is required for authoring animation for Aero. 
  • Up to 6 bones can influence any given vertex. 

Materials

Aero uses physically-based rendering system of materials with modifications to enable real-time performance.

Supported Material Layers

  • Base Color/ ‘Albedo’

  • Metalness 

  • Roughness*

  • Ambient Occlusion 

  • Emission*

  • Alpha 

Large Textures

All textures will have their resolution scaled down to 2K resolution (2048 x 2048 pixels) upon import into Aero and may be further reduced automatically by Aero during playback if memory / real-time performance requires it.

Note:

For best display outcomes, import textures or images which are square and 'power of 2' pixel width and height into Aero.

Examples:

  • 64 x 64
  • 128 x 128 
  • 256 x 256
  • 512 x 512
  • 1024 x 1024

Raytracing and Offline Rendering vs Live Rendering

Your assets may look different in Aero from Dimension’s render view and other ‘pre-rendered’ contexts. 

In Aero your content needs to be rendered many times per second which places a limit on the complexity of material that can be rendered each frame. Certain features like reflection (low roughness) and emission may behave differently than you expect – specifically you will not see the reflection of actual objects or the world when looking at low-roughness objects, nor will you see the effect of emitted light from an emissive object play upon any other objects in the scene. Additionally, translucency is not supported. Opacity (or “alpha blending”) can be used in place of translucency but has a different visual effect.

Alpha Blending vs Translucency

Aero does not currently support translucency and other material properties that affect the way light moves through a solid material. Instead, Aero supports opacity similarly to layers in photoshop. A foreground object that is not fully opaque will show through to the background objects behind it, but the effect will not take into consideration thickness of the transparent object, internal color, or the diffusion or bending of light within the foreground object.

Alpha Blending and Performance

Alpha blending two objects together requires your hardware to do twice as much work as displaying a single object. For performance reasons it’s important to design your content with this in mind.

To ensure good performance on most devices, design your scenes so that the average pixel shows no more than three transparent objects. For example, if you create a scene with more than three transparent objects, some of these should be small or far enough apart from each other that the user cannot position their phone anywhere that the whole screen will be filled with more than three layers of transparencies.

What's next?

We've helped you get started with understanding 3D content concepts. Now, you can start by sourcing assets.

Have a question or an idea?

If you have a question to ask or an idea to share, come and participate in Adobe Aero Community

Don’t forget to showcase your work on Behance and seek inspiration from others' work as well.