Simplygon C++ API  8.3.35800.0
SimplygonSDK::IMappingImageSettings Class Referenceabstract

#include <SimplygonSDK.h>

Inheritance diagram for SimplygonSDK::IMappingImageSettings:
SimplygonSDK::ISettingsObject SimplygonSDK::IObject

Public Member Functions

virtual bool GetAllowTransparencyMapping ()=0
 
virtual real GetAutomaticTextureSizeMultiplier ()=0
 
virtual bool GetChartAggregatorLockUVRotation ()=0
 
virtual unsigned int GetChartAggregatorMode ()=0
 
virtual rstring GetChartAggregatorOriginalChartProportionsChannel ()=0
 
virtual rid GetChartAggregatorOriginalTexCoordLevel ()=0
 
virtual rstring GetChartAggregatorOriginalTexCoordLevelName ()=0
 
virtual bool GetChartAggregatorSeparateOverlappingCharts ()=0
 
virtual const char * GetClass ()
 
virtual bool GetForcePower2Texture ()=0
 
virtual bool GetGenerateMappingImage ()=0
 
virtual bool GetGenerateTangents ()=0
 
virtual bool GetGenerateTexCoords ()=0
 
virtual unsigned int GetGutterSpace ()=0
 
virtual unsigned int GetGutterSpace (unsigned int id)=0
 
virtual unsigned int GetHeight ()=0
 
virtual unsigned int GetHeight (unsigned int id)=0
 
virtual unsigned int GetInputMaterialCount ()=0
 
virtual int GetInputOutputMaterialMapping (unsigned int InMaterialId)=0
 
virtual rstring GetMappingImageName ()=0
 
virtual rstring GetMappingImageName (unsigned int id)=0
 
virtual unsigned int GetMaximumLayers ()=0
 
virtual unsigned int GetMultisamplingLevel ()=0
 
virtual unsigned int GetMultisamplingLevel (unsigned int id)=0
 
virtual bool GetOnlyParameterizeInvalidUVs ()=0
 
virtual unsigned int GetOutputMaterialCount ()=0
 
virtual real GetParameterizerLargeChartsImportance ()=0
 
virtual real GetParameterizerMaxStretch ()=0
 
virtual bool GetReplaceMappingImages ()=0
 
virtual unsigned int GetTexCoordGeneratorType ()=0
 
virtual rid GetTexCoordLevel ()=0
 
virtual rstring GetTexCoordLevelName ()=0
 
virtual bool GetUseAutomaticTextureSize ()=0
 
virtual bool GetUseFullRetexturing ()=0
 
virtual bool GetUseVertexWeights ()=0
 
virtual unsigned int GetWidth ()=0
 
virtual unsigned int GetWidth (unsigned int id)=0
 
virtual bool IsA (const char *type) const
 
virtual void SetAllowTransparencyMapping (bool value)=0
 
virtual void SetAutomaticTextureSizeMultiplier (real value)=0
 
virtual void SetChartAggregatorLockUVRotation (bool value)=0
 
virtual void SetChartAggregatorMode (unsigned int value)=0
 
virtual void SetChartAggregatorOriginalChartProportionsChannel (const char *value)=0
 
virtual void SetChartAggregatorOriginalTexCoordLevel (rid value)=0
 
virtual void SetChartAggregatorOriginalTexCoordLevelName (const char *value)=0
 
virtual void SetChartAggregatorSeparateOverlappingCharts (bool value)=0
 
virtual void SetForcePower2Texture (bool value)=0
 
virtual void SetGenerateMappingImage (bool value)=0
 
virtual void SetGenerateTangents (bool value)=0
 
virtual void SetGenerateTexCoords (bool value)=0
 
virtual void SetGutterSpace (unsigned int id, unsigned int value)=0
 
virtual void SetGutterSpace (unsigned int value)=0
 
virtual void SetHeight (unsigned int id, unsigned int value)=0
 
virtual void SetHeight (unsigned int value)=0
 
virtual void SetInputMaterialCount (unsigned int value)=0
 
virtual void SetInputOutputMaterialMapping (unsigned int InMaterialId, unsigned int OutMaterialId)=0
 
virtual void SetMappingImageName (const char *name)=0
 
virtual void SetMappingImageName (unsigned int id, const char *name)=0
 
virtual void SetMaximumLayers (unsigned int value)=0
 
virtual void SetMultisamplingLevel (unsigned int id, unsigned int value)=0
 
virtual void SetMultisamplingLevel (unsigned int value)=0
 
virtual void SetOnlyParameterizeInvalidUVs (bool value)=0
 
virtual void SetOutputMaterialCount (unsigned int value)=0
 
virtual void SetParameterizerLargeChartsImportance (real value)=0
 
virtual void SetParameterizerMaxStretch (real value)=0
 
virtual void SetReplaceMappingImages (bool value)=0
 
virtual void SetTexCoordGeneratorType (unsigned int value)=0
 
virtual void SetTexCoordLevel (rid value)=0
 
virtual void SetTexCoordLevelName (const char *value)=0
 
virtual void SetUseAutomaticTextureSize (bool value)=0
 
virtual void SetUseFullRetexturing (bool value)=0
 
virtual void SetUseVertexWeights (bool value)=0
 
virtual void SetWidth (unsigned int id, unsigned int value)=0
 
virtual void SetWidth (unsigned int value)=0
 
- Public Member Functions inherited from SimplygonSDK::ISettingsObject
virtual rstring GetErrorString ()=0
 
virtual bool ValidateSettings ()=0
 
- Public Member Functions inherited from SimplygonSDK::IObject
virtual rid AddObserver (robserver *Observer, rid EventId)=0
 
virtual void AddRef ()=0
 
virtual rstring GetName ()=0
 
virtual void * GetUserComponentArea (rid userid)=0
 
virtual void PrintInfo ()=0
 
virtual void Release ()=0
 
virtual void RemoveObserver (rid ObserverId)=0
 
virtual void SetName (const char *Name)=0
 

Static Public Member Functions

static bool IsClassA (const char *type)
 
static IMappingImageSettingsSafeCast (IObject *ptr)
 
- Static Public Member Functions inherited from SimplygonSDK::ISettingsObject
static bool IsClassA (const char *type)
 
static ISettingsObjectSafeCast (IObject *ptr)
 
- Static Public Member Functions inherited from SimplygonSDK::IObject
static bool IsClassA (const char *type)
 
static IObjectSafeCast (IObject *ptr)
 

Detailed Description

Settings for the Simplygon mapping classes These settings control the properties of the mapping image that will be generated in the current simplification processor (reducer/remesher etc). The mapping image will be used when casting a new texture on the simplified geometry. In the settings object, the user is able to set the dimensions of the image (width/height) as well as whether the LOD should have new texture coordinates and some parameters for how they should be generated and all other settings regarding the mapping image.

Definition at line 12096 of file SimplygonSDK.h.

Member Function Documentation

◆ GetAllowTransparencyMapping()

virtual bool SimplygonSDK::IMappingImageSettings::GetAllowTransparencyMapping ( )
pure virtual

Get the AllowTransparencyMapping flag. If true, the remeshing processor will allow mapped transparency in the generated mapping image. This allows material casting where gaps filled by the remeshing processor will be cast as transparent.

Returns
the current value of AllowTransparencyMapping

◆ GetAutomaticTextureSizeMultiplier()

virtual real SimplygonSDK::IMappingImageSettings::GetAutomaticTextureSizeMultiplier ( )
pure virtual

Get the current automatic texture size multiplier.

Returns
the current multiplier

◆ GetChartAggregatorLockUVRotation()

virtual bool SimplygonSDK::IMappingImageSettings::GetChartAggregatorLockUVRotation ( )
pure virtual

Only used when the TexCoordGeneratorType is SG_TEXCOORDGENERATORTYPE_CHARTAGGREGATOR. If ChartAggregatorLockUVRotation is enabled, only the original UV rotation will be used. Otherwise 4 rotations are used (90 degree rotations).

Returns
the current LockUVRotation

◆ GetChartAggregatorMode()

virtual unsigned int SimplygonSDK::IMappingImageSettings::GetChartAggregatorMode ( )
pure virtual

Determines which method to use when aggregating the UVs. SG_CHARTAGGREGATORMODE_TEXTURESIZEPROPORTIONS

  • Aggregated UV charts will be scaled to keep their relative pixel density relative to all other UV charts. The user can still set the size of the output texture maps. SG_CHARTAGGREGATORMODE_SURFACEAREA - Aggregated UV charts will have their size set based on its actual geometrical size. SG_CHARTAGGREGATORMODE_ORIGINALPIXELDENSITY
  • The combined atlas will be resized to fit each chart so that all charts retain the same amount of pixels as they originally had. This will override any manually set texture size. SG_CHARTAGGREGATORMODE_UVSIZEPROPORTIONS - Aggregated UV charts will have their size set based on its original UV size, disregarding the size of the texture they are used in.");
    Returns
    the current SG_CHARTAGGREGATORMODE_[...] value.

◆ GetChartAggregatorOriginalChartProportionsChannel()

virtual rstring SimplygonSDK::IMappingImageSettings::GetChartAggregatorOriginalChartProportionsChannel ( )
pure virtual

Only used when the TexCoordGeneratorType is SG_TEXCOORDGENERATORTYPE_CHARTAGGREGATOR. Set ChartAggregatorKeepOriginalChartProportionsFromChannel to an SG_MATERIAL_CHANNEL_[...]. This channel determines which texture channel to look at when determining which chart proportions to keep. The default value is SG_MATERIAL_CHANNEL_DIFFUSE.

Returns
the current ChartAggregatorKeepOriginalChartProportionsFromChannel value

◆ GetChartAggregatorOriginalTexCoordLevel()

virtual rid SimplygonSDK::IMappingImageSettings::GetChartAggregatorOriginalTexCoordLevel ( )
pure virtual

Only used when the TexCoordGeneratorType is SG_TEXCOORDGENERATORTYPE_CHARTAGGREGATOR. Set the texture coordinate level to get charts from. Default is 0. If the ChartAggregatorOriginalTexCoordLevelName ha been set, the ChartAggregatorOriginalTexCoordLevel is not used.

Returns
the current texture coordinate level

◆ GetChartAggregatorOriginalTexCoordLevelName()

virtual rstring SimplygonSDK::IMappingImageSettings::GetChartAggregatorOriginalTexCoordLevelName ( )
pure virtual

Only used when the TexCoordGeneratorType is SG_TEXCOORDGENERATORTYPE_CHARTAGGREGATOR. Set the name of the texture coordinate level to get charts from. If not set, it will use the ChartAggregatorOriginalTexCoordLevel (index) instead.

Returns
the current texture coordinate level name

◆ GetChartAggregatorSeparateOverlappingCharts()

virtual bool SimplygonSDK::IMappingImageSettings::GetChartAggregatorSeparateOverlappingCharts ( )
pure virtual

Only used when the TexCoordGeneratorType is SG_TEXCOORDGENERATORTYPE_CHARTAGGREGATOR. If set, charts that are overlapping in the original texture coords will be separated.

Returns
the current flag value

◆ GetClass()

virtual const char* SimplygonSDK::IMappingImageSettings::GetClass ( )
virtual

GetClass returns the name of the class of the object.

Returns
the name of the actual class of the object, as a const char string

Reimplemented from SimplygonSDK::ISettingsObject.

◆ GetForcePower2Texture()

virtual bool SimplygonSDK::IMappingImageSettings::GetForcePower2Texture ( )
pure virtual

If automatic_texture_size is enabled, then force the texture sizes to be a power of 2

Returns
the current flag

◆ GetGenerateMappingImage()

virtual bool SimplygonSDK::IMappingImageSettings::GetGenerateMappingImage ( )
pure virtual

Get the GenerateMappingImage flag. If set, the remesher will create a mapping image, that maps triangles on the reduced geometry back to triangles on the original geometry. The texture is insert into the MappingImage object. The image data will contain two fields:

ReRidArray, "TriangleIds", TupleSize:1, The id of the triangle

ReUnsignedShortArra, "BarycentricCoords", TupleSize:2, Items A & B of the barycentric coordinate on the triangle. The user can control the size of the mapped texture using the values MappingTextureWidth and MappingTextureHeight

Returns
the current GenerateMappingImage flag

◆ GetGenerateTangents()

virtual bool SimplygonSDK::IMappingImageSettings::GetGenerateTangents ( )
pure virtual

Gets the GenerateTangents flag. If true, generates a new tangent space fields at position specified by TexCoordLevel, based on the vertex normals and texture coordinates. Tangent space fields will always be created if missing, and GenerateMappingImage is enabled. If GenerateTexCoords is enabled, new tangents will always be generated.

Returns
the current GenerateTangents flag

◆ GetGenerateTexCoords()

virtual bool SimplygonSDK::IMappingImageSettings::GetGenerateTexCoords ( )
pure virtual

Gets the GenerateTexCoords flag. If true, generates a new texcoords field at the position specified by TexCoordLevel. Will be ignored and always generate texcoords if none are available in the Geometry, at same time as GenerateMappingImage is enabled.

Returns
the current GenerateTexCoords flag

◆ GetGutterSpace() [1/2]

virtual unsigned int SimplygonSDK::IMappingImageSettings::GetGutterSpace ( )
pure virtual

Get the minimum number of pixels between charts. If called with an id, it will set the width of that specific texture if using multiple mapping image outputs.

Returns
the current value of GutterSpace

◆ GetGutterSpace() [2/2]

virtual unsigned int SimplygonSDK::IMappingImageSettings::GetGutterSpace ( unsigned int  id)
pure virtual

Get the minimum number of pixels between charts. If called with an id, it will set the width of that specific texture if using multiple mapping image outputs.

Parameters
idthe texture id
Returns
the current value of GutterSpace

◆ GetHeight() [1/2]

virtual unsigned int SimplygonSDK::IMappingImageSettings::GetHeight ( )
pure virtual

Get the height of the texture to use. If called with an id, it will get the height of that specific texture if using multiple mapping image outputs.

Returns
the current value of Height

◆ GetHeight() [2/2]

virtual unsigned int SimplygonSDK::IMappingImageSettings::GetHeight ( unsigned int  id)
pure virtual

Get the height of the texture to use. If called with an id, it will get the height of that specific texture if using multiple mapping image outputs.

Parameters
idthe texture id
Returns
the current value of Height

◆ GetInputMaterialCount()

virtual unsigned int SimplygonSDK::IMappingImageSettings::GetInputMaterialCount ( )
pure virtual

Get the number of input materials set earlier. 0 signifies that no in-out material mapping is used.

Returns
the current value of InputMaterialCount

◆ GetInputOutputMaterialMapping()

virtual int SimplygonSDK::IMappingImageSettings::GetInputOutputMaterialMapping ( unsigned int  InMaterialId)
pure virtual

Get the previously set material mapping for mat_id.

Parameters
InMaterialIdis the input material id
Returns
the currently mapped output material for InMaterialId. -1 means mapping is not set.

◆ GetMappingImageName() [1/2]

virtual rstring SimplygonSDK::IMappingImageSettings::GetMappingImageName ( )
pure virtual

Set the name of the mapping image generated by the processor. If called with an id, it will set the name of that specific mapping image if using multiple mapping image outputs.

Returns
the current name

◆ GetMappingImageName() [2/2]

virtual rstring SimplygonSDK::IMappingImageSettings::GetMappingImageName ( unsigned int  id)
pure virtual

Set the name of the mapping image generated by the processor. If called with an id, it will set the name of that specific mapping image if using multiple mapping image outputs.

Parameters
idthe texture id
Returns
the current name

◆ GetMaximumLayers()

virtual unsigned int SimplygonSDK::IMappingImageSettings::GetMaximumLayers ( )
pure virtual

Get the maximum number of layers in the mapping image. If a remeshed geometry has a lot of transparent triangles, use a higher number to be able to find intersections on the inside of parts of the geometry. This setting only has effect in the remeshing, when running reduction the number of layers is always

  1. Returns
    the current number of layers in the mapping image

◆ GetMultisamplingLevel() [1/2]

virtual unsigned int SimplygonSDK::IMappingImageSettings::GetMultisamplingLevel ( )
pure virtual

Get the multi-sampling level. Values 1-8 are accepted. If called with an id, it will set the multi-sampling level of that specific texture if using multiple mapping image outputs.

Returns
the current value of MultiSamplingLevel

◆ GetMultisamplingLevel() [2/2]

virtual unsigned int SimplygonSDK::IMappingImageSettings::GetMultisamplingLevel ( unsigned int  id)
pure virtual

Get the multi-sampling level. Values 1-8 are accepted. If called with an id, it will set the multi-sampling level of that specific texture if using multiple mapping image outputs.

Parameters
idthe texture id
Returns
the current value of MultiSamplingLevel

◆ GetOnlyParameterizeInvalidUVs()

virtual bool SimplygonSDK::IMappingImageSettings::GetOnlyParameterizeInvalidUVs ( )
pure virtual

If enabled, will aggregate all the valid original UVs. If there are invalid original UVs, those parts will receive new parameterized UVs.

Returns
the current flag

◆ GetOutputMaterialCount()

virtual unsigned int SimplygonSDK::IMappingImageSettings::GetOutputMaterialCount ( )
pure virtual

Get the number of output mapping images that are to be generated.

Returns
the current value of OutputMaterialCount

◆ GetParameterizerLargeChartsImportance()

virtual real SimplygonSDK::IMappingImageSettings::GetParameterizerLargeChartsImportance ( )
pure virtual

Only used when the TexCoordGeneratorType is SG_TEXCOORDGENERATORTYPE_PARAMETERIZER. The importance value for trying to have as large and few charts as possible. The closer the value is to 1.0f, the slower it is. Having 0.0f means no extra focus will be put on reducing the number of charts. Having value 1.0f means maximum focus will be put on reducing the number of charts and thereby increasing the size of the charts.

Returns
the current large charts importance value

◆ GetParameterizerMaxStretch()

virtual real SimplygonSDK::IMappingImageSettings::GetParameterizerMaxStretch ( )
pure virtual

Only used when the TexCoordGeneratorType is SG_TEXCOORDGENERATORTYPE_PARAMETERIZER. The maximum allowed texture stretch. Range 0->1

Returns
the current maximum allowed texture stretch

◆ GetReplaceMappingImages()

virtual bool SimplygonSDK::IMappingImageSettings::GetReplaceMappingImages ( )
pure virtual

Determines whether to replace already existing mapping images in the scene

Returns
the current value

◆ GetTexCoordGeneratorType()

virtual unsigned int SimplygonSDK::IMappingImageSettings::GetTexCoordGeneratorType ( )
pure virtual

Determines which method to use when generating the texture coordinates. SG_TEXCOORDGENERATORTYPE_PARAMETERIZER generate from scratch based on the geometry. SG_TEXCOORDGENERATORTYPE_CHARTAGGREGATOR generate based on the original texture coordinates.

Returns
the current SG_TEXCOORDGENERATORTYPE_[...] value.

◆ GetTexCoordLevel()

virtual rid SimplygonSDK::IMappingImageSettings::GetTexCoordLevel ( )
pure virtual

Get the texture coordinate level used for mapping image and texture generation. Default is 0. If the TexCoordLevelName has been set, the TexCoordLevel is not used.

Returns
the current texture coordinate level

◆ GetTexCoordLevelName()

virtual rstring SimplygonSDK::IMappingImageSettings::GetTexCoordLevelName ( )
pure virtual

Set the texture coordinate level name used for mapping image and texture generation. If new UVs are created, they will replace the old coordinates in the texture channel with the TexCoordLevelName. If no texture level with this name exists. It will be created. If the TexCoordLevelName is not set, the TexCoordLevel (index) will be used instead.

Returns
the current texture coordinate level name

◆ GetUseAutomaticTextureSize()

virtual bool SimplygonSDK::IMappingImageSettings::GetUseAutomaticTextureSize ( )
pure virtual

Set the UseAutomaticTextureSize flag. If true, then texture sizes will be computed for the reduced mesh depending on its pixel size on screen.

Returns
the current flag

◆ GetUseFullRetexturing()

virtual bool SimplygonSDK::IMappingImageSettings::GetUseFullRetexturing ( )
pure virtual

Set/Get the UseFullRetexturing flag. If set, all original texture sets are replaced by the one generated for the mapping image, and the TexCoordLevel value is always set to 0. This flag has no effect on the remeshing, which always does a full retexturing.

Returns
the current UseFullRetexturing flag

◆ GetUseVertexWeights()

virtual bool SimplygonSDK::IMappingImageSettings::GetUseVertexWeights ( )
pure virtual

Scales the resulting UVs based on the vertex weights. Larger weights mean more detailed texture coordinates.

Returns
the current flag

◆ GetWidth() [1/2]

virtual unsigned int SimplygonSDK::IMappingImageSettings::GetWidth ( )
pure virtual

Get the width of the texture to use. If called with an id, it will get the width of that specific texture if using multiple mapping image outputs.

Returns
the current value of Width

◆ GetWidth() [2/2]

virtual unsigned int SimplygonSDK::IMappingImageSettings::GetWidth ( unsigned int  id)
pure virtual

Get the width of the texture to use. If called with an id, it will get the width of that specific texture if using multiple mapping image outputs.

Parameters
idthe texture id
Returns
the current value of Width

◆ IsA()

virtual bool SimplygonSDK::IMappingImageSettings::IsA ( const char *  type) const
virtual

The IsA function returns true if the object is a or is a descendant of the class named as the type parameter

Parameters
typeis the name of the class to check if the object is, or is a descendant of
Returns
true if the object is of the specified class, false if not

Reimplemented from SimplygonSDK::ISettingsObject.

◆ IsClassA()

static bool SimplygonSDK::IMappingImageSettings::IsClassA ( const char *  type)
inlinestatic

The IsClassA function returns true if IMappingImageSettings is a or is a descendant of the class named as the type parameter

Parameters
typeis the name of the class to check if the class is, or is a descendant of
Returns
true if the class is of the specified class, false if not

Definition at line 12117 of file SimplygonSDK.h.

◆ SafeCast()

static IMappingImageSettings* SimplygonSDK::IMappingImageSettings::SafeCast ( IObject ptr)
inlinestatic

SafeCast makes sure the pointer is of a class that can be cast into a IMappingImageSettings pointer, and if this is possible, returns the cast pointer.

Parameters
ptris the pointer to be cast into a IMappingImageSettings pointer
Returns
a pointer to the IMappingImageSettings object, if the cast can be made, and a NULL pointer otherwise

Definition at line 12130 of file SimplygonSDK.h.

◆ SetAllowTransparencyMapping()

virtual void SimplygonSDK::IMappingImageSettings::SetAllowTransparencyMapping ( bool  value)
pure virtual

Set the AllowTransparencyMapping flag. If true, the remeshing processor will allow mapped transparency in the generated mapping image. This allows material casting where gaps filled by the remeshing processor will be cast as transparent.

Parameters
valuethe desired value of AllowTransparencyMapping

◆ SetAutomaticTextureSizeMultiplier()

virtual void SimplygonSDK::IMappingImageSettings::SetAutomaticTextureSizeMultiplier ( real  value)
pure virtual

Set a texture dimension length multiplier for the automatic texture size.

Parameters
valuethe desired multiplier

◆ SetChartAggregatorLockUVRotation()

virtual void SimplygonSDK::IMappingImageSettings::SetChartAggregatorLockUVRotation ( bool  value)
pure virtual

Only used when the TexCoordGeneratorType is SG_TEXCOORDGENERATORTYPE_CHARTAGGREGATOR. If ChartAggregatorLockUVRotation is enabled, only the original UV rotation will be used. Otherwise 4 rotations are used (90 degree rotations).

Parameters
valuethe new LockUVRotation

◆ SetChartAggregatorMode()

virtual void SimplygonSDK::IMappingImageSettings::SetChartAggregatorMode ( unsigned int  value)
pure virtual

Determines which method to use when aggregating the UVs. SG_CHARTAGGREGATORMODE_TEXTURESIZEPROPORTIONS

  • Aggregated UV charts will be scaled to keep their relative pixel density relative to all other UV charts. The user can still set the size of the output texture maps. SG_CHARTAGGREGATORMODE_SURFACEAREA - Aggregated UV charts will have their size set based on its actual geometrical size. SG_CHARTAGGREGATORMODE_ORIGINALPIXELDENSITY
  • The combined atlas will be resized to fit each chart so that all charts retain the same amount of pixels as they originally had. This will override any manually set texture size. SG_CHARTAGGREGATORMODE_UVSIZEPROPORTIONS - Aggregated UV charts will have their size set based on its original UV size, disregarding the size of the texture they are used in.");
    Parameters
    valueis the ChartAggregaotrMode value to use

◆ SetChartAggregatorOriginalChartProportionsChannel()

virtual void SimplygonSDK::IMappingImageSettings::SetChartAggregatorOriginalChartProportionsChannel ( const char *  value)
pure virtual

Only used when the TexCoordGeneratorType is SG_TEXCOORDGENERATORTYPE_CHARTAGGREGATOR. Set ChartAggregatorKeepOriginalChartProportionsFromChannel to an SG_MATERIAL_CHANNEL_[...]. This channel determines which texture channel to look at when determining which chart proportions to keep. The default value is SG_MATERIAL_CHANNEL_DIFFUSE.

Parameters
valuethe new ChartAggregatorKeepOriginalChartProportionsFromChannel value

◆ SetChartAggregatorOriginalTexCoordLevel()

virtual void SimplygonSDK::IMappingImageSettings::SetChartAggregatorOriginalTexCoordLevel ( rid  value)
pure virtual

Only used when the TexCoordGeneratorType is SG_TEXCOORDGENERATORTYPE_CHARTAGGREGATOR. Set the texture coordinate level to get charts from. Default is 0. If the ChartAggregatorOriginalTexCoordLevelName ha been set, the ChartAggregatorOriginalTexCoordLevel is not used.

Parameters
valuethe desired texture coordinate level

◆ SetChartAggregatorOriginalTexCoordLevelName()

virtual void SimplygonSDK::IMappingImageSettings::SetChartAggregatorOriginalTexCoordLevelName ( const char *  value)
pure virtual

Only used when the TexCoordGeneratorType is SG_TEXCOORDGENERATORTYPE_CHARTAGGREGATOR. Set the name of the texture coordinate level to get charts from. If not set, it will use the ChartAggregatorOriginalTexCoordLevel (index) instead.

Parameters
valuethe desired texture coordinate level name

◆ SetChartAggregatorSeparateOverlappingCharts()

virtual void SimplygonSDK::IMappingImageSettings::SetChartAggregatorSeparateOverlappingCharts ( bool  value)
pure virtual

Only used when the TexCoordGeneratorType is SG_TEXCOORDGENERATORTYPE_CHARTAGGREGATOR. If set, charts that are overlapping in the original texture coords will be separated.

Parameters
valueis the value to which ChartAggregatorSeparateOverlappingCharts is set

◆ SetForcePower2Texture()

virtual void SimplygonSDK::IMappingImageSettings::SetForcePower2Texture ( bool  value)
pure virtual

If automatic_texture_size is enabled, then force the texture sizes to be a power of 2

Parameters
valuethe desired flag

◆ SetGenerateMappingImage()

virtual void SimplygonSDK::IMappingImageSettings::SetGenerateMappingImage ( bool  value)
pure virtual

Set the GenerateMappingImage flag. If set, the remesher will create a mapping image, that maps triangles on the reduced geometry back to triangles on the original geometry. The texture is insert into the MappingImage object. The image data will contain two fields:

ReRidArray, "TriangleIds", TupleSize:1, The id of the triangle

ReUnsignedShortArra, "BarycentricCoords", TupleSize:2, Items A & B of the barycentric coordinate on the triangle. The user can control the size of the mapped texture using the values MappingTextureWidth and MappingTextureHeight

Parameters
valuethe desired GenerateMappingImage flag

◆ SetGenerateTangents()

virtual void SimplygonSDK::IMappingImageSettings::SetGenerateTangents ( bool  value)
pure virtual

Sets the GenerateTangents flag. If true, generates a new tangent space fields at position specified by TexCoordLevel, based on the vertex normals and texture coordinates. Tangent space fields will always be created if missing, and GenerateMappingImage is enabled. If GenerateTexCoords is enabled, new tangents will always be generated.

Parameters
valuethe desired GenerateTangents flag

◆ SetGenerateTexCoords()

virtual void SimplygonSDK::IMappingImageSettings::SetGenerateTexCoords ( bool  value)
pure virtual

Sets the GenerateTexCoords flag. If true, generates a new texcoords field at the position specified by TexCoordLevel. Will be ignored and always generate texcoords if none are available in the Geometry, at same time as GenerateMappingImage is enabled.

Parameters
valuethe desired GenerateTexCoords flag

◆ SetGutterSpace() [1/2]

virtual void SimplygonSDK::IMappingImageSettings::SetGutterSpace ( unsigned int  id,
unsigned int  value 
)
pure virtual

Set the minimum number of pixels between charts. If called with an id, it will set the width of that specific texture if using multiple mapping image outputs. The gutter space has to be set to a value larger than 0.

Parameters
idthe texture id
valueis the value to which GutterSpace will be set

◆ SetGutterSpace() [2/2]

virtual void SimplygonSDK::IMappingImageSettings::SetGutterSpace ( unsigned int  value)
pure virtual

Set the minimum number of pixels between charts. If called with an id, it will set the width of that specific texture if using multiple mapping image outputs. The gutter space has to be set to a value larger than 0.

Parameters
valueis the value to which GutterSpace will be set

◆ SetHeight() [1/2]

virtual void SimplygonSDK::IMappingImageSettings::SetHeight ( unsigned int  id,
unsigned int  value 
)
pure virtual

Set the height of the texture to use. If called with an id, it will set the height of that specific texture if using multiple mapping image outputs.

Parameters
idthe texture id
valueis the value to which Height will be set

◆ SetHeight() [2/2]

virtual void SimplygonSDK::IMappingImageSettings::SetHeight ( unsigned int  value)
pure virtual

Set the height of the texture to use. If called with an id, it will set the height of that specific texture if using multiple mapping image outputs.

Parameters
valueis the value to which Height will be set

◆ SetInputMaterialCount()

virtual void SimplygonSDK::IMappingImageSettings::SetInputMaterialCount ( unsigned int  value)
pure virtual

Set the number of input materials used in the original geometry for mapping to multiple output materials. This needs to be set before you can set any specific in-out material mapping. 0 signifies that no in-out material mapping is used, ie. the process will produce one resulting mapping image.

Parameters
valueis the number of inputs Value cannot be less than 0. Value cannot be greater than SG_MAXIMUM_MAPPING_IMAGE_INPUT_MATERIAL_COUNT.

◆ SetInputOutputMaterialMapping()

virtual void SimplygonSDK::IMappingImageSettings::SetInputOutputMaterialMapping ( unsigned int  InMaterialId,
unsigned int  OutMaterialId 
)
pure virtual

Set the material mapping for mat_id, meaning what material of the generated LOD mat_id will be baked into. Both InputMaterialCount and OutputMaterialCount need to be set for this mapping to work, and all original materials need to be mapped to an existing output id.

Parameters
InMaterialIdis the input material id
OutMaterialIdis the output material id the corresponding input is to be mapped to

◆ SetMappingImageName() [1/2]

virtual void SimplygonSDK::IMappingImageSettings::SetMappingImageName ( const char *  name)
pure virtual

Set the name of the mapping image generated by the processor. If called with an id, it will set the name of that specific mapping image if using multiple mapping image outputs.

Parameters
namethe name of the mapping image

◆ SetMappingImageName() [2/2]

virtual void SimplygonSDK::IMappingImageSettings::SetMappingImageName ( unsigned int  id,
const char *  name 
)
pure virtual

Set the name of the mapping image generated by the processor. If called with an id, it will set the name of that specific mapping image if using multiple mapping image outputs.

Parameters
idthe texture id
namethe name of the mapping image

◆ SetMaximumLayers()

virtual void SimplygonSDK::IMappingImageSettings::SetMaximumLayers ( unsigned int  value)
pure virtual

Set the maximum number of layers in the mapping image. If a remeshed geometry has a lot of transparent triangles, use a higher number to be able to find intersections on the inside of parts of the geometry. This setting only has effect in the remeshing, when running reduction the number of layers is always

  1. Parameters
    valuethe desired number of layers in the mapping image

◆ SetMultisamplingLevel() [1/2]

virtual void SimplygonSDK::IMappingImageSettings::SetMultisamplingLevel ( unsigned int  id,
unsigned int  value 
)
pure virtual

Set the multi-sampling level. Values 1-8 are accepted. If called with an id, it will set the multi-sampling level of that specific texture if using multiple mapping image outputs.

Parameters
idthe texture id
valueis the value to which MultiSamplingLevel will be set

◆ SetMultisamplingLevel() [2/2]

virtual void SimplygonSDK::IMappingImageSettings::SetMultisamplingLevel ( unsigned int  value)
pure virtual

Set the multi-sampling level. Values 1-8 are accepted. If called with an id, it will set the multi-sampling level of that specific texture if using multiple mapping image outputs.

Parameters
valueis the value to which MultiSamplingLevel will be set

◆ SetOnlyParameterizeInvalidUVs()

virtual void SimplygonSDK::IMappingImageSettings::SetOnlyParameterizeInvalidUVs ( bool  value)
pure virtual

If enabled, will aggregate all the valid original UVs. If there are invalid original UVs, those parts will receive new parameterized UVs.

Parameters
valuethe new flag

◆ SetOutputMaterialCount()

virtual void SimplygonSDK::IMappingImageSettings::SetOutputMaterialCount ( unsigned int  value)
pure virtual

Set the number of output mapping images that are to be generated. If this is set to more than 1, the material mapping also needs to be set.

Parameters
valueis the number of outputs Value cannot be less than 1. Value cannot be greater than SG_MAXIMUM_MAPPING_IMAGE_OUTPUT_MATERIAL_COUNT.

◆ SetParameterizerLargeChartsImportance()

virtual void SimplygonSDK::IMappingImageSettings::SetParameterizerLargeChartsImportance ( real  value)
pure virtual

Only used when the TexCoordGeneratorType is SG_TEXCOORDGENERATORTYPE_PARAMETERIZER. The importance value for trying to have as large and few charts as possible. The closer the value is to 1.0f, the slower it is. Having 0.0f means no extra focus will be put on reducing the number of charts. Having value 1.0f means maximum focus will be put on reducing the number of charts and thereby increasing the size of the charts.

Parameters
valuethe desired large charts importance value

◆ SetParameterizerMaxStretch()

virtual void SimplygonSDK::IMappingImageSettings::SetParameterizerMaxStretch ( real  value)
pure virtual

Only used when the TexCoordGeneratorType is SG_TEXCOORDGENERATORTYPE_PARAMETERIZER. The maximum allowed texture stretch. Range 0->1

Parameters
valuethe desired maximum allowed texture stretch

◆ SetReplaceMappingImages()

virtual void SimplygonSDK::IMappingImageSettings::SetReplaceMappingImages ( bool  value)
pure virtual

Determines whether to replace already existing mapping images in the scene

Parameters
valuethe new value

◆ SetTexCoordGeneratorType()

virtual void SimplygonSDK::IMappingImageSettings::SetTexCoordGeneratorType ( unsigned int  value)
pure virtual

Determines which method to use when generating the texture coordinates. SG_TEXCOORDGENERATORTYPE_PARAMETERIZER generate from scratch based on the geometry. SG_TEXCOORDGENERATORTYPE_CHARTAGGREGATOR generate based on the original texture coordinates.

Parameters
valueis the TexCoordGeneratorType value to use

◆ SetTexCoordLevel()

virtual void SimplygonSDK::IMappingImageSettings::SetTexCoordLevel ( rid  value)
pure virtual

Set the texture coordinate level used for mapping image and texture generation. Default is 0. If the TexCoordLevelName has been set, the TexCoordLevel is not used.

Parameters
valuethe desired texture coordinate level

◆ SetTexCoordLevelName()

virtual void SimplygonSDK::IMappingImageSettings::SetTexCoordLevelName ( const char *  value)
pure virtual

Set the texture coordinate level name used for mapping image and texture generation. If new UVs are created, they will replace the old coordinates in the texture channel with the TexCoordLevelName. If no texture level with this name exists. It will be created. If the TexCoordLevelName is not set, the TexCoordLevel (index) will be used instead.

Parameters
valueis the TexCoord level name
Returns
the current texture coordinate level name

◆ SetUseAutomaticTextureSize()

virtual void SimplygonSDK::IMappingImageSettings::SetUseAutomaticTextureSize ( bool  value)
pure virtual

Set the UseAutomaticTextureSize flag. If true, then texture sizes will be computed for the reduced mesh depending on its pixel size on screen.

Parameters
valuethe desired flag

◆ SetUseFullRetexturing()

virtual void SimplygonSDK::IMappingImageSettings::SetUseFullRetexturing ( bool  value)
pure virtual

Set the UseFullRetexturing flag. If set, all original texture sets are replaced by the one generated for the mapping image, and the TexCoordLevel value is always set to 0. This flag has no effect on the remeshing, which always does a full retexturing.

Parameters
valuethe desired UseFullRetexturing flag

◆ SetUseVertexWeights()

virtual void SimplygonSDK::IMappingImageSettings::SetUseVertexWeights ( bool  value)
pure virtual

Scales the resulting UVs based on the vertex weights. Larger weights mean more detailed texture coordinates.

Parameters
valuethe desired flag

◆ SetWidth() [1/2]

virtual void SimplygonSDK::IMappingImageSettings::SetWidth ( unsigned int  id,
unsigned int  value 
)
pure virtual

Set the width of the texture to use. If called with an id, it will set the width of that specific texture if using multiple mapping image outputs.

Parameters
idthe texture id
valueis the value to which Width will be set

◆ SetWidth() [2/2]

virtual void SimplygonSDK::IMappingImageSettings::SetWidth ( unsigned int  value)
pure virtual

Set the width of the texture to use. If called with an id, it will set the width of that specific texture if using multiple mapping image outputs.

Parameters
valueis the value to which Width will be set

The documentation for this class was generated from the following file: