# class RemeshingProcessor

The RemeshingProcessor takes an input scene and replaces it with a lightweight proxy geometry that resembles the original, but does not share vertex data or parts of the original mesh data. The remeshed object is created and optimized for a certain on-screen pixel size - which means that holes and parts that are close to each other will have their gaps filled if the distance is below a pixel. At default settings, the proxy mesh is assumed to be viewed from the outside. Any interior mesh that cannot be seen is removed. The result is a very light-weight mesh that is highly optimized for real-time viewing, or to speed up off-line rendering of small objects. Simplygon is capable of remeshing arbitrary geometry, including non-manifold surfaces.

# Properties

Property Description
Name The name of the RemeshingProcessor object. (Inherited from Object)
Scene The scene used for remeshing processing. All mesh nodes in the whole scene tree will be replaced by one proxy mesh. Please note that internal references might be modified by the processor. The caller should refresh any reference that is cached outside the scene after running the processor.

# Methods

Method Description
AddObserver Adds a user-defined observer object to the interface, that will receive events from the interface. (Inherited from Object)
Clear Clear all internal states of the object. This will NOT clear the parameters set in the object. (Inherited from ProcessingObject)
GetBoneSettings The settings for the bone removal process.
GetClass Get the name of the RemeshingProcessor class. (Inherited from Object)
GetGeometryCullingSettings Get settings for volumetric triangle culling functionality.
GetMappingImage The MappingImage object that is generated if GenerateMappingImage is set in the MappingImageSettings. This returns mapping image index 0, use GetMappingImageForImageIndex to retrieve for a specific index. A new object is generated for each call to RunProcessing().
GetMappingImageForImageIndex The MappingImage object that is generated if GenerateMappingImage is set in the MappingImageSettings. Called with an id, it will fetch that specific mapping image if using multi-material output. A new object is generated for each call to RunProcessing().
GetMappingImageSettings The settings for the image mapping process.
GetPercentDone Returns the current progress of the processing as a value between 0 and 100. (Inherited from ProcessingObject)
GetRemeshingSettings The settings for the remeshing process.
GetVisibilitySettings The settings for handling visibility weights. Visibility settings contains the parameters for how to compute the visibility of a scene and how to use it.
IsA Returns true if RemeshingProcessor is a or is a descendant of the class named as the type parameter. (Inherited from Object)
IsNull Returns true if the RemeshingProcessor object is invalid. (Inherited from Object)
IsSameObjectAs Returns true if the RemeshingProcessor object is valid. (Inherited from Object)
NonNull Returns true if the RemeshingProcessor object is valid. (Inherited from Object)
PrintInfo Prints the content/info of the RemeshingProcessor object to the log. (Inherited from Object)
RemoveObserver Removes a previously added observer object. (Inherited from Object)
RunProcessing Runs the processing the object is designed for. (Inherited from ProcessingObject)
ToJSON Get settings as JSON for debugging purposes. (Inherited from ProcessingObject)

# Static methods

Method Description
IsClassA Returns true if the class is a or is a descendant of the class named as the type parameter. (Inherited from Object)
SafeCast SafeCast makes sure the input object is of a class that can be cast into spRemeshingProcessor, and if this is the case, returns the object cast into spRemeshingProcessor. (Inherited from Object)

# Properties details

# Name

The name of the RemeshingProcessor object. (Inherited from Object)

# Syntax

// Setter
void SetName( const char * name ) const;

// Getter
spString GetName() const;

# SetName parameters

Type Name Min Max Description
const char * name New name of the object.

# GetName return value

Type: spString

# Scene

The scene used for remeshing processing. All mesh nodes in the whole scene tree will be replaced by one proxy mesh. Please note that internal references might be modified by the processor. The caller should refresh any reference that is cached outside the scene after running the processor.

# Syntax

// Setter
void SetScene( const spScene & value ) const;

// Getter
spScene GetScene() const;

# SetScene parameters

Type Name Min Max Description
Scene value The scene to process.

# GetScene return value

Type: Scene

# Methods details

# AddObserver

Adds a user-defined observer object to the interface, that will receive events from the interface. (Inherited from Object)

# Syntax

rid AddObserver( const spObserver & observer ) const;

# Parameters

Type Name Min Max Description
Observer observer Observer is the object that will receive events.

# Return value

Type: rid

# Clear

Clear all internal states of the object. This will NOT clear the parameters set in the object.

# Syntax

void Clear() const;

# Parameters

Clear takes no parameters.

# GetBoneSettings

The settings for the bone removal process.

# Syntax

spBoneSettings GetBoneSettings() const;

# Parameters

GetBoneSettings takes no parameters.

# Return value

Type: BoneSettings

# GetClass

Get the name of the RemeshingProcessor class. (Inherited from Object)

# Syntax

spString GetClass() const;

# Parameters

GetClass takes no parameters.

# Return value

Type: spString

# GetGeometryCullingSettings

Get settings for volumetric triangle culling functionality.

# Syntax

spGeometryCullingSettings GetGeometryCullingSettings() const;

# Parameters

GetGeometryCullingSettings takes no parameters.

# Return value

Type: GeometryCullingSettings

# GetMappingImage

The MappingImage object that is generated if GenerateMappingImage is set in the MappingImageSettings. This returns mapping image index 0, use GetMappingImageForImageIndex to retrieve for a specific index. A new object is generated for each call to RunProcessing().

# Syntax

spMappingImage GetMappingImage() const;

# Parameters

GetMappingImage takes no parameters.

# Return value

Type: MappingImage

# GetMappingImageForImageIndex

The MappingImage object that is generated if GenerateMappingImage is set in the MappingImageSettings. Called with an id, it will fetch that specific mapping image if using multi-material output. A new object is generated for each call to RunProcessing().

# Syntax

spMappingImage GetMappingImageForImageIndex( rid OutputMaterialId ) const;

# Parameters

Type Name Min Max Description
rid OutputMaterialId The value for the OutputMaterialId.

# Return value

Type: MappingImage

# GetMappingImageSettings

The settings for the image mapping process.

# Syntax

spMappingImageSettings GetMappingImageSettings() const;

# Parameters

GetMappingImageSettings takes no parameters.

# Return value

Type: MappingImageSettings

# GetPercentDone

Returns the current progress of the processing as a value between 0 and 100.

# Syntax

real GetPercentDone() const;

# Parameters

GetPercentDone takes no parameters.

# Return value

Type: real

# GetRemeshingSettings

The settings for the remeshing process.

# Syntax

spRemeshingSettings GetRemeshingSettings() const;

# Parameters

GetRemeshingSettings takes no parameters.

# Return value

Type: RemeshingSettings

# GetVisibilitySettings

The settings for handling visibility weights. Visibility settings contains the parameters for how to compute the visibility of a scene and how to use it.

# Syntax

spVisibilitySettings GetVisibilitySettings() const;

# Parameters

GetVisibilitySettings takes no parameters.

# Return value

Type: VisibilitySettings

# IsA

Returns true if RemeshingProcessor is a or is a descendant of the class named as the type parameter. (Inherited from Object)

# Syntax

bool IsA( const char * type ) const;

# Parameters

Type Name Min Max Description
const char * type Name of the class to check if RemeshingProcessor is, or is a descendant of.

# Return value

Type: bool

# IsNull

Returns true if the RemeshingProcessor object is invalid. (Inherited from Object)

# Syntax

bool IsNull() const;

# Parameters

IsNull takes no parameters.

# Return value

Type: bool

# IsSameObjectAs

Returns true if the RemeshingProcessor object is valid. (Inherited from Object)

# Syntax

bool IsSameObjectAs( const spObject & object ) const;

# Parameters

Type Name Min Max Description
Object object Object to compare with.

# Return value

Type: bool

# NonNull

Returns true if the RemeshingProcessor object is valid. (Inherited from Object)

# Syntax

bool NonNull() const;

# Parameters

NonNull takes no parameters.

# Return value

Type: bool

# PrintInfo

Prints the content/info of the RemeshingProcessor object to the log. (Inherited from Object)

# Syntax

void PrintInfo() const;

# Parameters

PrintInfo takes no parameters.

# RemoveObserver

Removes a previously added observer object. (Inherited from Object)

# Syntax

void RemoveObserver( rid observerId ) const;

# Parameters

Type Name Min Max Description
rid observerId ObserverId is the id returned by AddObserver when the observer was added.

# RunProcessing

Runs the processing the object is designed for.

# Syntax

Simplygon::EProcessStatus RunProcessing() const;

# Parameters

RunProcessing takes no parameters.

# Return value

Type: EProcessStatus

Key Value Comment
Finished 0 The process finished with no error
Skipped 1 The process was skipped, in most cases because of a missing or invalid object, or that there was nothing to process. See the log for details.

# ToJSON

Get settings as JSON for debugging purposes.

# Syntax

spString ToJSON() const;

# Parameters

ToJSON takes no parameters.

# Return value

Type: spString

# Static methods details

# IsClassA

Returns true if the class is a or is a descendant of the class named as the type parameter. (Inherited from Object)

# Syntax

static bool IsClassA( const char * type ) const;

# Parameters

Type Name Min Max Description
const char * type Name of the class to check if the class is, or is a descendant of.

# Return value

Type: bool

# SafeCast

SafeCast makes sure the input object is of a class that can be cast into spRemeshingProcessor, and if this is the case, returns the object cast into spRemeshingProcessor. (Inherited from Object)

# Syntax

static spRemeshingProcessor SafeCast( const spObject & object ) const;

# Parameters

Type Name Min Max Description
Object object Object to cast.

# Return value

Type: RemeshingProcessor