Introduction to Scene Items#
The Scene Item class is an abstract class that defines any items that a have transformation in 3D space. The class also defines the concept of pivot point, item parenting and constraints.
For example, Cameras, Geometries, Scatterers, Lights etc... are all Scene Items.
All Scene Items share a large set of attributes.
While scene items can be manipulated interactively using the manipulation tools (Translate, Rotate, Scale and Transform tools), it is possible to manipulate them by modifying their attributes using the Attribute Editor.
To move an item you can directly modify the Translate its attributes. Please note that Translate attributes are expressed in local space.
To rotate items simply modify their Rotate attributes. By default, the rotation order is in YXZ. You can change the order of rotation by modifying the Rotation Order attribute. The Rotate attribute is expressed in local space.
Please note modifying rotation order only reinterprets the actual order of rotation. It doesn't recompute the actual rotation order for the new one.
To scale items simply modify their Scale attributes. The Scale attribute is expressed in local space.
Setting/Removing Motion Keys#
When scene items are selected, it is possible to set or remove a motion keys. To add motion keys go to Animate > Set Motion Key... or press Enter key. To delete motion keys go to Animate > Delete Motion Key...
Set Motion Key
(1) Set Keys at (2) Keys Interpolation Type (3) Keyed Motion channels
Pivot Points and Offsets#
Pivot points and Offsets control how scene items are translated, rotated or scaled. Scene Items Transformations are always relative to their pivot points.
You can edit the pivot of your scene item by using the Attribute Editor or by pressing the Ins key while using a translate, rotate or scale tool.
It is also possible to use the Animate menu in the main application menu bar to modify pivots and offsets.
|Center Pivot to BBox||Center pivots and offsets of the selected items to their bounding box|
|Center Pivot to Ground||Same as Center Pivot to BBox but pivots and offsets are offset in such way that their Y components is snapped to their lower Y bound.|
|Reset Pivots||Reset Pivots to 0|
|Conform Pivots||Move transforms pivot to item's global pivots|
|Remove Offsets||Transfer offsets to the item transformation|
|Record Offsets||Record current offsets|
To parent an item simply connect the parent item in the Parent attribute of the child item. To unparent an item simply connect the item. It is also possible to manage parenting using the Hierarchy View.
By default, the feature Parent In Place is activated. This means that parenting and unparent items automatically compensate item transformation so that the item stays in place. To disable Parent In Place go to Edit > Preferences... > Layout and disable Parent In Place.
Constraints allow you to constrain the transformation of scene items. For more information about constraints please refer to Constraints.
Scene Objects are also an abstract class that inherit from Scene Items. They are defined within an enclosed bounding box and are meant to be rendered.
There are 3 different types of scene objects to consider:
- Geometries that are defining the actual geometries such as particles, implicit spheres or polygonal meshes.
- Scene Object Trees which are an assembly of multiple Scene Objects such as scatterers and combiners.
- Geometry Bundles which represents a set of geometries within a single item in the scene.
Scene Objects share a lot of common attributes to control render settings. Please refer to Scene Object Render Flags for more information.
By default, Clarisse considers the frame 0 to be the base pose of geometries. The Reference Frame attribute allows you to set explicitly the frame for which the Scene Object defines its base pose. The base pose of objects is used during the computation of tessellation, texture projections and geometry sampling when generating particles on geometries for example.
Reference Frame set to 0 Note how the texture is stretching
Reference Frame set to 25 current rendered frame Note how the texture stretch vanishes
There are many different kinds of geometries available in Clarisse. Some are implicit, others are defined from a file while the later are procedurally generated.
A geometry is always a 3D object made of particles (point/vertices) and/or primitives. Primitives are always boundable parametric surfaces. In other words, for a set of parametric UVW, a primitive must return a coherent position in local space. Primitives are also always mapped to a single shading group that is used to attach materials.
All geometries can define arbitrary properties which are sometimes called attributes or primvars in other packages. Properties are attached to primitives and vertices. They can define normal, vertex color, UV maps or arbitrary data.
In Clarisse, geometric properties can be accessed using Extract Property texture operator. Vertex color maps on the other hand are accessed using the Vertex Color Map texture.
Geometries also define Shading Groups (see below).
Shading groups are named partitions of primitives always defined by geometries. In other packages, they are sometimes called clusters, surfaces or geometry parts. When you import geometries Clarisse, their shading group definition is also imported.
Shading groups are very important since they are used by Clarisse to assing materials and displacements to primitives. By default, all shading groups are assigned to the default material
There can be many shading groups defined per geometry and since they are named partitions, a single primitive can only be part of a single shading group of a geometry.
Geometries can also be deformed using deformers.