Getting Started
Introduction
Welcome to DeepAR Studio 4.0. To get started right away you can download a premade project file here:
You can also follow along with one of our tutorials and create a simple filter.
The new Studio UI
The Studio window consists of multiple dockable panels
Hierarchy
The node hierarchy panel provides a hierarchical view of model nodes. To edit certain properties of the node and meshes inside those nodes, the user needs to select the node in the hierarchy.
A node doesn't necessarily have a visual representation in the scene, it can just be a container for other nodes and scene objects.
Usually, the leaf node elements are objects like meshes that are visible in the scene or bone objects belonging to a skeleton.
Nodes that contain components such as the Mesh renderer will be marked with the component icons.
Nodes can be moved to a different parent by dragging and dropping.
Editor
The 3D editor panel allows you to preview the effect in 3D space, move, rotate or scale the objects by dragging the gizmos, and select nodes by clicking on the meshes contained in their mesh renderers.
Node properties
When a node is selected, the right-hand view will display the widgets that pertain to it.
Position
, Rotation
, and Scale
parameters in the x, y, and z-axis can be set on any node. Transform parameters can be set on parent nodes or on child nodes. Editing transformation parameters on a parent result in moving/rotating/scaling all of its children by the same amount.
Enabled
If the node is disabled it is removed from the rendering process along with all its children. The node is not removed from the hierarchy, but the engine skips the processing of the node if the value is set to false. The default value is true.
Animation Enabled
If animation is disabled on a node, transform and blend shape animations are not applied to this node. The default value is true.
Position mode
The position mode determines where the object will be placed. This property can only be set on the root node. There are the following options:
Position in face space: the object will track the face - it will match the translation and rotation of the face
Position in camera space: the object will NOT track the face - it will have a fixed position, rotation, and scale relative to the camera.
Dynamic UVs
Texture (UV) coordinates are dynamically calculated and can be used to apply Camera
texture or a user-created Render
texture to a deformed Mesh. The possible modes are:
Disabled
Camera texture UV1
- Project the first texture coordinate set of the mesh to theCamera
textureCamera texture UV2
- Project the second texture coordinate set of the mesh to theCamera
texture, typically used in conjunction with alpha and lighting masks.Render texture UV1
- Project the first texture coordinate set of the mesh to aRender
textureRender texture UV2
- Project the second texture coordinate set of the mesh to theRender
texture, typically used in conjunction with alpha and lighting masks.
Selected value can be applied to all of the node's children recursively by clicking on the icon right of the combo box.
Layer
Nodes in the virtual scene can be placed in layers that allow the user to adjust the rendering order for each node. The higher the layer value for the node is, the later the rendering of a given node will occur. This provides the user with the basic z-ordering functionality for node objects.
This is comparable to the layer objects in Photoshop or Gimp. Some layers such as the Postprocessing
layers have special behaviors and should only be used for their intended purpose. Layers 0
and Overlay
are orthographic and will behave differently than perspective layers.
Selected value can be applied to all of the node's children recursively by clicking on the icon right of the combo box.
Depth
Allows the user to adjust the rendering order within a single layer.
Nodes with greater depth values will be rendered later.
Depth has no bearing on nodes in different layers.
Selected value can be applied to all of the node's children recursively by clicking on the icon right of the text box.
Resources
The Resources
panel allows you to view the resources for the project, add new resources by dragging them to the resources panes, or drag them from the Resources panel to an appropriate slot, eg. Drag a Texture
to a texture slot in the Material Editor
.
Material Editor
The Materials
panel allows the user to edit properties for the selected material. The materials states can control the rendering behavior of the material.
States
The materials states can control the rendering behavior of the material.
RGB write
: renderer will write toRGB color buffer
.Alpha write
: renderer will write toAlpha buffer
.Depth write
: renderer will write toDepth buffer
.Depth test
: every fragment's output depth value will be tested against theDepth buffer
.
Blend modes
DeepAR studio supports all the standard blending mode options which are set as material parameters:
Off
- blending turned offAdd
Alpha
Darken
Lighten
Multiple
Normal
Screen
Linear burn
Culling modes
Geometry face culling options in the DeepAR Studio:
Off
- no cullingClockwise
- defaultCounterclockwise
Shader specific uniforms
Each material needs a shader assigned which defines how it will be rendered.
Shader Builder
The Shader
builder panel allows the more advanced users who wish to use custom shaders to edit the shader uniforms, their types, their default values, and editability. You can also edit the types of your vertex attributes.
Preview Toolbar
Launch or stop the Preview app in the native macOS SDK (macOS only) or on the Web. This will allow you to view the changes you make on the project in real-time when needed, and not waste computer processing when the live preview is not needed.