Definitions
Overview
Throughout this documentation, you will encounter the following terms frequently. Understanding these definitions will help you navigate and make the most of Ornatrix.
Guide
A guide is a basic strand structure used to define the approximate shape of hair. Guides are typically interpolated later to generate denser hairs. In the context of mesh modeling, guides are similar to a base mesh cage before subdivision.
Root
A structure used to uniquely define the position and orientation of a hair strand. Every strand in a dense or a sparse hair model must have a unique root. There are two types of roots in Ornatrix:
- Roots relative to object.
Contain information about their location in object space. They do not deform and only change their orientation as the object moves. - Roots relative to surface.
Contain information about their location on a surface and deform with the object.
Segment
A segment is a primitive structure used to represent hair in Ornatrix. Typically, it consists of two points (vertices) forming a finite line. Hair strands internally consist of linked segments, each sharing a point with the next and previous segments.
Strand
A strand is a virtual curve representing a single hair consisting of a rigid linked list of hair segments. The word virtual means that its structure doesn't always uniquely define its final shape. For example, a strand can start out with two segments, then get modified to contain 12 segments, and in the final render, its structure can contain 50 segments and change from frame to frame.
Node: For the purpose of hair grooming, Guide and Strand can be used interchangeably in this documentation.
Strand Approximation
Hair strands in nature are true curves with microscopic follicle structure. This structure is extremely hard to reproduce on a computer, and therefore it is approximated by using linked segments (see definition of strand). Strand approximation is a term used to describe how well these segments represent their true curvature. Usually the more segments you have, the better the approximation and the longer the computational times. Ornatrix doesn't guarantee that strands will retain the same approximation throughout its pipeline. For example, one can start out with 2 segments and end up with hundreds of them during rendering. Ornatrix uses Bezier approximation of 3rd degree to switch between lower and higher detail.
Hair Dependency Branch
Hair is usually made dependent on guides that created it. For animation and modeling purposes it is desirable that hair inherits its form from guides. Even guides can depend on a form of some other guides. This structure of interdependent strands is called the hair dependency branch.
Brush
A brush in Ornatrix is a real-time interface that allows user to indirectly manipulate hair guides through user mouse input.
Channel
Data attached to Ornatrix guides that allows the storage of extra information of some type. This is similar to vertex channels used in meshes and can hold values which can drive and affect various hair effects down the hair pipeline.
Backlighting
An effect where hair is placed between a camera and a source of light. Denser hair blocks part of light rays while, due to its translucency, sparse hair allows light through.
Braiding
The process of manipulating two or more guides into a canonical pattern that evolves around an imaginary braid stem. Read more about braiding in the edit guides document.
Parting
A division of hair into separate groups of direction. In Ornatrix partings are used to separate two distinct hair flows.
Cluster Knot
An internal Ornatrix structure that (when used in arrays) controls the shape and form of clusters along a hair strand.
Cluster Stem
An imaginary (sometimes guide-based) strand that is used to pull surrounding hair towards it to form a cluster.
Hair Cluster
A group of hair held together by some force. Hair often tend to form clusters after movement due to static charges.
Sinks
Virtual structures in space that are used to visualize points where vector fields exhibit their cusps. These points usually appear to 'suck in' or repel everything around them. For example, in surface comb modifier sinks are used to display where the hair is being repelled or attracted.
State Converter
A plugin that converts an Ornatrix object from one state to another. For example, converting mesh to guides, or guide to hair, or hair to rasters.
Data Set
A structure that is designed to carry data from one location to another. "Data set" is a general term used to describe a collection of any type of data.
Hair State
You may hear the term 'hair state' used often in this documentation. There are three main hair states: guide hair, dense hair, and strands (for more info on guide and dense hair look <a href="../concepts/sparse_and_dense_hair.html"><em>here</em></a>). Some modifiers only accept guide or dense hair. This is done for a reason- guide hair carry more information (such as selection, freeze, and hide info) than dense hair. However there are some plugins which don't care about which state the hair is on (guide or dense). These modifiers accept the strand state, which is a sub-state of both guide and dense hair. Therefore both guides and dense hair can be converted to strands, but not the other way around.
Hair Tangent
Avery hair strand consists of a finite number of segments that approximate it. Often it is required to retrieve the tangential vector along some point of the strand. Tangent is basically the direction of flow of a strand at a specific point.
Strand Transform
Any transformation occurring in the canonical space formed by strand. It is generally safe to assume that anything happening in strand space will 'flow' with the strand along its length from root to tip.
Tangent
A vector that is parallel to a specified point on a surface or a curve. Tangent can be looked at as a pencil of vectors perpendicular to a surface normal.
Dependency Graph
A term used to describe a system of nodes connected to each other via dependency/reference links. This tree is structured in such a way that multiple nodes can affect another node. Ornatrix only uses acyclic guide-hair dependency relationship.
Hair Shader
A light scattering model designed specifically to work with hair. Although Ornatrix hair shaders can be just as well used on objects they're designed for optimal performance on hair. One of the main distinctions is that object normals point away from the surface while hair tangents always point in the direction of shaded segment.
Occlusion
Occlusion generally refers to the blocking of light through direct or indirect means. In Ornatrix, term occlusion is used to combine object-hair, hair-object, and self-shadowing algorithms into one category. Therefore occlusion means complete interaction of hair and light that falls on it.
Rasterization
Taking a geometric data set and converting it to a bitmap data set (consisting of pixels). Rasterization is generally done through scan conversion.
Scan Conversion
The process of taking a vector-based structure (such as a polygon or a line), projecting it into screen coordinates, and breaking it up into rasters (integer horizontal lines). Then a single loop can very quickly fill in the spaces between horizontal lines thus 'drawing' the structure to screen.
Self-Shadowing
The phenomena of hair strands casting shadows onto themselves.
Shader
Also known as phase function. A shader is an algorithm that given input lights, surface property, and camera information, completely describes the scattering of light at a given sample position in space. Shaders are used to convert irradiance functions into radiance usually in form of RGB pixel color.
Translucent
By definition synonymous to clear, lucid. In computer graphics translucency usually is a property of objects diffusing light through volume, not just reflecting it. Therefore any translucent object will reflect light, but also let it pass through it and onto other objects behind it.