Articles
Textures and Materials
The Physically-Based Material

The Physically-Based Material

A 3D model of a hand giving the thumbs up emerges from a black hole at the bottom of the scene.

Use a physically based material to create realistic looking objects in Spark AR Studio. The different properties in this material allow you to add surface roughness, metallic effects, and lighting that mimics real world light.

Physically-based materials work best on modern devices. Spark AR Studio won't show physically-based materials in effects on older devices.

Textures you'll need

For a complete physically-based material, you'll need:

  • A base texture - this will form the base of your material. Use it to add color and details.
  • An ORM texture - this will allow you to define the roughness, metallic details and occlusion strength of the material.
  • A Normal map - to create the appearance of real-world texture like bumps, grooves and rivets without adding extra geometry to your object.

Creating a physically-based material

To create a physically-based material:

  • Select the material in the Assets panel.
  • Set the Shader Type to Physically-Based in the Inspector.

Editing a physically-based material

When you've created a physically-based material you'll be able to edit these properties in the Inspector:

Albedo

Albedo is the base color and texture of the material. You'll see 2 options here:

  • Color - use this option to choose the base color of your material.
  • Texture - Apply a base texture. The texture will be modulated by the color you've selected.

Below, we've added an Albedo texture:

A 3D model of a hand can be seen in the Simulator. The properties of the hand's material are open.

Surface Parameters and ORM texture

This is where you'll apply an ORM texture, using the dropdown next to ORM Texture. You can then adjust the sliders, to control:

  • Occlusion - this option approximates soft shadows baked into the creased areas of a surface.
  • Roughness - to add rough surface details.
  • Metallic - to add metallic surface details.

Spark AR Studio packs ORM values into the RGB channels in that order.

Here, we've added an ORM texture to a physically-based material:

A 3D model of a hand can be seen in the Simulator. The properties of the hand's material are open.

Normal

This is where you'll add a normal map. The normal map lets you create the appearance of bumps, grooves and rivets without adding extra geometry to your object. Representing these details as a texture instead of geometry will increase the performance of your effect.

To add a normal map:

  1. Check the box next to Normal
  2. Import a texture using the dropdown next to Texture.

The surface of the object now looks textured, and more like a real material:

The hand now has a more realistic texture.

You’ll notice that as well as adding the normal map texture, we also change the Strength. This value changes the strength of the normal map texture, which has the effect of making the texture more or less prominent. Values between 0 and 1 will limit the texture’s effect. Values above 1 will exaggerate it. Negative values will invert the normal map

Emission

Check this box to allow your material to illuminate from itself. Light emitted will only affect your material, not other materials in your scene - like a standard light source would.

You can also use the Color option to:

  • Add an emission color.
  • Apply a texture.

The emission texture and color will modulate.

Environment

Apply either a preset environment texture, or import your own.

Environment textures use images to provide lighting that mimics lighting in a real-life setting. For example the lighting in an office or outside on the beach.

Below, we've added an environment light, ORM texture and normal map:

>A 3D model of a hand can be seen in the Simulator. The sunny park environment texture is being used, as shown in the Properties panel.

Tiling textures

Tile

Scale the textures you've applied to your material.

Offset

Shift the origin of your textures.

Render Options and Advanced Render Options

Edit these properties to control how the material renders in the scene.

Used By

The object this material is applied to.

Was this article helpful?