A rule can match a wide range of object attributes that can be split into two different types. While some attributes require a regular expression, others can be matched by a combination of numerical and logical expressions.
Attributes with the prefix
Mesh
only match mesh nodes, while those with the prefixNode
can match all node types, including both meshes and group nodes.
The following attributes can be matched by regular expressions (ECMA, ignore-case):
Path | Node hierarchy path |
---|---|
Name | Node name |
Mesh.Material.Name |
Material name |
(Custom Attribute) |
Any user-defined attribute within a mesh's metadata can be used. Select the 'Object Inspector' in InstaLOD Studio to review all available custom attributes on a selected mesh. |
Some attributes can be matched using relational operators. Multiple expressions can be combined with the logical operator AND
. The following expression matches all values within the range from 500-20000:
>= 500 and <= 20000
For example, it could be used to match a scene rule with all meshes with the given polygon count.
These attributes support match value expressions:
Attribute | Description |
---|---|
Node.ChildCount |
Amount of child nodes |
Node.Path.Depth |
Depth of nodes a root-node can have |
Mesh.Polygons.Count |
Polygon count |
Mesh.Vertex.Count |
Vertex count |
Mesh.Vertex.Boundary.Count |
Vertex count along a boundary |
Mesh.BoundingBox.Volume |
Bounding box volume in units |
Mesh.BoundingSphere.Radius |
Bounding sphere radius in units |
Mesh.WedgeColorSet.Count |
Amount of vertex color sets |
Mesh.WedgeTexCoordSet.Count |
Amount of texture coordinate sets |
Mesh.AABB.Mins.X |
Minimum AABB boundary of mesh in X-Axis in units |
Mesh.AABB.Mins.Y |
Minimum AABB boundary of mesh in Y-Axis in units |
Mesh.AABB.Mins.Z |
Minimum AABB boundary of mesh in Z-Axis in units |
Mesh.AABB.Maxs.X |
Maximum AABB boundary of mesh in X-Axis in units |
Mesh.AABB.Maxs.Y |
Maximum AABB boundary of mesh in Y-Axis in units |
Mesh.AABB.Maxs.Z |
Maximum AABB boundary of mesh in Z-Axis in units |
Match rules are utilized in InstaLOD's analysis profile for data scoring. When performing an analysis, InstaLOD assigns scores based on a set of match rules that are defined in the profile. Match rules can be used here with the previously mentioned attributes to either increase or decrease the overall score when a rule matches a mesh. Additionally, an analysis profile contains scene rules that affect the analysis score based on certain scene metrics. These can be evaluated through the following attributes:
Attribute | Description |
---|---|
MeshCountMinimum |
Minimum amount of meshes in the scene |
MeshCountMaximum |
Maximum amount of meshes in the scene |
HierarchyDepthMaximum |
The maximum depth of a hierarchy structure |
SceneDimensionsMins |
Minimum scene dimensions in XYZ |
Example: "-100 -100 -100" | |
SceneDimensionsMaxs |
Maximum scene dimensions in XYZ |
Example: "100 100 100" |
Finally, a score can also be awarded for the file-naming scheme. If a scene rule matches a file with a certain FileNameRegEx
, a FileNameRegExMatchingScore
is awarded.
InstaLOD Pipeline is shipped with an example profile that demonstrates how an analysis operation can be configured. After installing InstaLOD Pipeline, it can be found under "Profiles/Analyze.json".