ModelSimplifyFlags

Description

[Flags]
enum Tinman.Engine.Models.ModelSimplifyFlags

Flags for choosing action for simplifying models.

When the ProcessThis flag is present, these actions are performed for each Model, in the order given:

Then, the child models are processed if ProcessChildren is present. If ProcessRecursively is present, the ProcessChildren flag will be retained, otherwise it will be dropped.

See also

IModel.Simplify

Public / Constants

None

public constant None → (0:int32)

No simplification actions.

RemoveRedundant

public constant RemoveRedundant → (1:int32)

Removes redundant information from models and parts.

The following information is removed if redundant:

RemoveEmptyParts

public constant RemoveEmptyParts → (2:int32)

Remove empty model parts.

A model part is considered empty in any of these cases:

RemoveEmptyChildren

public constant RemoveEmptyChildren → (4:int32)

Remove empty child models.

A child model is considered empty in any of these cases:

ReplaceEquivalent

public constant ReplaceEquivalent → (8:int32)

Replace different IModelPart, IModelGeometry, IModelTexture and IMaterial objects that are equivalent with the first object that has been encountered?

SortParts

public constant SortParts → (16:int32)

Sorts the model parts, so that mergeable parts become arranged sequentially.

SortChildren

public constant SortChildren → (32:int32)

Sorts the child nodes: by name (ascending), then by part count (descending), then by child count (descending).

MergeParts

public constant MergeParts → (64:int32)

Merge subsequent model parts, if possible?

The IModelPart.Merge method is used for merging subsequent model parts.

ProcessThis

public constant ProcessThis → (128:int32)

Simplify the model on which IModel.Simplify is called?

ProcessChildren

public constant ProcessChildren → (256:int32)

Simplify the children of the model on which IModel.Simplify is called?

ProcessRecursively

public constant ProcessRecursively → (512:int32)

Simplify the descendants of the model on which IModel.Simplify is called?

If ProcessChildren is not present, this flag will be ignored.

All

public constant All → (1023:int32)

All simplification actions.