class
Simplygon
Properties
Property | Description |
---|---|
GlobalAllowDirectXSetting | Allow the use of DirectX when processing. This may use a discrete GPU, or a Warp based CPU backend. |
GlobalAllowDistributionLocalFallbackSetting | Sets global AllowDistributionLocalFallback setting |
GlobalAllowGPUAccelerationSetting | Allow the use of GPU optimizations when processing. |
GlobalAllowShadingNetworkCachingSetting | Sets global AllowShadingNetworkCaching setting |
GlobalAllowTextureSamplingInterpolationSetting | Sets global AllowTextureSamplingInterpolation setting |
GlobalBatchLogPathSetting | This is the file path to use when outputting batch logs. |
GlobalCacheToDiskSetting | Sets global CacheToDisk setting |
GlobalDefaultTangentCalculatorTypeSetting | DefaultTangentCalculatorType defines the default tangent calculator type to use when calculating tangents. This can be overridden in some processors and pipelines. |
GlobalDXCPathSetting | The path to the DXC shader compiler. If the Vulkan SDK is installed, the compiler is automatically found and this path is set by Simplygon on init, but the path can be set manually by the user if the shader compiler cannot be automatically found, or to override the path. |
GlobalEnableLogSetting | Enable logging. |
GlobalEnableVulkanValidationLayersSetting | If set, the Vulkan validation layers are enabled, and will log warnings and issues to the log. Note that this should only be used for debugging, and will impact processing performance when enabled. |
GlobalFlushLogPerRowSetting | Sets global FlushLogPerRow setting |
GlobalGLSLCPathSetting | The path to the GLSLC shader compiler. If the Vulkan SDK is installed, the compiler is automatically found and this path is set by Simplygon on init, but the path can be set manually by the user if the shader compiler cannot be automatically found, or to override the path. |
GlobalGridAgentBalancerJobToleranceSetting | Specify the number of jobs that the balancer can skip before it runs. Increasing this number will reduce the efficiency of the agent usage |
GlobalGridAgentDiscoveryDelaySetting | How long SimplygonBatch pauses before searching for agents on the network again. (Milliseconds). |
GlobalGridAgentLoadLimitSetting | Use this to change the default agent load limit. The value can be set between 1-100(%). |
GlobalGridAgentsTableFilePathSetting | If Simplygon Grid distribution should use a fixed list of agents rather than mDNS discovery, this is the file path to the xml file with a table of available agents. |
GlobalGridDiscoverTimeoutSetting | The timeout that decides when SimplygonBatch should stop discover agents. |
GlobalGridEnableAgentIpSortingSetting | Set to True if you want the discovered agents to also be sorted by ip address. |
GlobalGridEnableVerboseLoggingSetting | Control whether grid should output detailed information about its internal operations and events to the console or a log file. If set to true, SimplygonBatch will produce verbose logs; otherwise, it will only produce minimal logs. |
GlobalGridOverloadedTimeoutSetting | Specify how long grid should wait for busy agents to be available for distribution again. |
GlobalGridRetryLimitForFailedJobSetting | Number of retries for a failed grid job |
GlobalIgnorePNGGammaOnImageLoadSetting | If set, will cause any function that loads a PNG image to ignore the settings in the PNG gamma chunk. |
GlobalInputSceneValidationActionSetting | The action to take when an invalid scene is input into Simplygon. |
GlobalLogDecorationMaskSetting | Sets global LogDecorationMask setting |
GlobalLogFileNameSetting | The log file to write the log to. (Enable logging and logging to file with settings EnableLogging and LogToFile) |
GlobalLogicalCoreLimitSetting | Sets global LogicalCoreLimit setting |
GlobalLogLevelSetting | the global log level, how verbose the log should be |
GlobalLogOutputToInternalLogSetting | If logging is enabled, send a copy of the log to the internal log queue. To fetch from this log, use Simplygon::PollLog in SimplygonLoader.h |
GlobalLogOutputToTraceWindowSetting | Sets global LogOutputToTraceWindow setting |
GlobalLogToFileSetting | If logging is enabled, log to a file, which is specified using the LogFileName setting |
GlobalMaskFPExceptionsSetting | Sets global MaskFPExceptions setting |
GlobalPreventDirectXThreadingOptimizationsSetting | Sets global PreventDirectXThreadingOptimizations setting |
GlobalReportErrorCodesToErrorHandlerSetting | If enabled, all non-zero EErrorCodes (any error) from processing objects, pipelines and import/export objects will be reported through the error handler. |
GlobalUnpackFBXInSimplygonTempDirectorySetting | Sets global UnpackFBXInSimplygonTempDirectory setting |
GlobalValidateProcessingAssertOnErrorSetting | Sets global ValidateProcessingAssertOnError setting |
GlobalValidateProcessingDebugLevelSetting | Sets global ValidateProcessingDebugLevel setting |
GlobalValidateProcessingOutputDirectorySetting | Sets global ValidateProcessingOutputDirectory setting |
GlobalValidateProcessingSetting | If set, an extra step of validation is run before running the process. Enabled by default, disabling it may increase performance slightly, but may cause invalid processing to crash. |
GlobalValidRealThresholdSetting | Sets global ValidRealThreshold setting |
GlobalVulkanDeviceSetting | Set this global setting string if you need to override the Vulkan device used by the processing. The string can be either the exact name of the device, or a subset of the name, such as the vendor name. |
ThreadLocalLogFileNameSetting | Sets thread local LogFileName setting |
Methods
Method | Description |
---|---|
ClearErrorMessages | Clear error messages. |
ClearWarningMessages | Clear warning messages. |
CreateAggregationPipeline | AggregationPipeline provides a pipeline for a single aggregation processor to be applied on the input scene. |
CreateAggregationProcessor | AggregationProcessor combines all specified geometries in the scene into one geometry. All materials are combined and receive a new shared texture atlas. |
CreateAggregationSettings | Settings for the AggregationSettings class. The AggregationProcessor converts entire scenes containing multiple draw calls into a single new object with a single texture per material channel. The user can set whether or not the AggregationProcessor should create new UVs based on the old UVs or create a completely new UV parameterization. |
CreateAmbientOcclusionCaster | AmbientOcclusionCaster generates an ambient occlusion map based on the original geometry, and casts it. |
CreateAmbientOcclusionCasterSettings | AmbientOcclusionCasterSettings manages settings for an ambient occlusion caster. |
CreateArray | Array is the base class for the array objects. The object contains a dynamically allocated list of tuples of the same length, which can be specified before the list is filled with values. |
CreateAttributeTessellation | Management functions for geometry attribute tessellation |
CreateAttributeTessellationData | AttributeTessellationData contains methods to access the attribute tessellation data residing within a GeometryData object. |
CreateAttributeTessellationSamplingSettings | Settings for sampling tessellated attributes from input data, either direct injected or through material casting. |
CreateAttributeTessellationSettings | Attribute tessellation settings contains the parameters for how to compute the tessellation attributes of geometries in a scene. |
CreateBillboardCloudPipeline | BillboardCloudPipeline provides a pipeline for a billboard cloud impostor processor to be applied on the input scene. |
CreateBillboardCloudSettings | Settings for the ImpostorType: BillboardCloud |
CreateBillboardCloudVegetationPipeline | BillboardCloudPipeline provides a pipeline for a billboard cloud vegetation impostor processor to be applied on the input scene. |
CreateBinaryExporter | BinaryExporter stores the geometry data into a binary file, that is specific for Simplygon. Please note that the binary file is only intended for temporary storage, and that no compatibility between versions of Simplygon is guaranteed. |
CreateBinaryImporter | BinaryImporter loads the geometry data from a binary file, that is specific for Simplygon. Please note that the binary file is only intended for temporary storage, and that no compatibility between versions of Simplygon is guaranteed. |
CreateBoneSettings | Settings for the Simplygon Reduction/Remeshing classes With the BoneSettings object, the user can setup all the parameters for how the BoneLOD processor should simplify the links between geometries and bones. Bones can be un-linked from the geometry either with a set ratio or depending on a selected pixel size on screen. |
CreateBoolArray | BoolArray is the bool implementation of ValueArray. See ValueArray for a description. |
CreateCharArray | CharArray is the char implementation of ValueArray. See ValueArray for a description. |
CreateChartAggregator | Computes new texture coordinates for a geometry with overlapping UV charts. |
CreateChartAggregatorSettings | Settings for the chart aggregator. |
CreateChunkedImageData | ChunkedImageData holds chunks for ImageData objects. ImageData objects can be referenced, and swapped in/out of memory, to secondary storage. This is useful for very large images that cannot be stored in-memory. ImageData objects can be indexed in 1-,2- or 3D, and each ImageData chunk is cloned from a source ImageData object, at setup. Fields added to ImageData chunks after setup will only be added into that chunk, and is not recommended. |
CreateColorCaster | ColorCaster is the interface used to cast basic color values. Currently supported material color value types are Ambient, Diffuse and Specular + Shininess. |
CreateColorCasterSettings | ColorCasterSettings is the interface for basic color caster settings. |
CreateComputeCaster | ComputeCaster is the interface used to cast general values, using a GPU based shader. |
CreateComputeCasterSettings | ComputeCasterSettings is the interface for the advanced compute shader based caster settings. |
CreateDisplacementCaster | DisplacementCaster is used to store the delta-values between the original and processed geometries. The values are divided by a scaling value, and clamped into the -1 -> 1 range before being stored into an image. |
CreateDisplacementCasterSettings | DisplacementCasterSettings is used to store the settings for a displacement caster |
CreateDoubleArray | DoubleArray is the double implementation of ValueArray. See ValueArray for a description. |
CreateExtents | Extents holds calculated extents, and can be used to fetch extents positions and radius of scenes and selection sets. |
CreateFBXExporter | FBX scene exporter. |
CreateFBXImporter | FBX scene importer |
CreateFieldData | FieldData represents multiple fields of data. Each field is implemented as an ValueArray object, that has a unique name, and can have complex components (such as scalars, vectors, quaternions, tensors or matrices). All fields are assumed to be of the same length. IFieldData can be seen as an array with complex tuples, where the component can be of different types. |
CreateFlipbookPipeline | FlipbookPipeline provides a pipeline for a flipbook impostor processor to be applied on the input scene. |
CreateFlipbookSettings | Settings for the ImpostorType: FlipBook |
CreateFloatArray | FloatArray is the float implementation of ValueArray. See ValueArray for a description. |
CreateFoliageSettings | Settings for the BillboardMode: Foliage |
CreateGenerateLightmapTexCoordSettings | GenerateLightmapTexCoordSettings is the interface used to manage light map uv generation. |
CreateGeometryCullingSettings | Settings for volumetric triangle culling functionality. These settings control the clipping planes and geometries that are used for triangle culling the output of Simplygon scene processors. |
CreateGeometryData | GeometryData represents a geometric structure consisting of point data (Vertices) and topological data (Triangles). GeometryData may represent a whole geometric object, but can also be used by streaming data filters, and in this way, only represents a part of the object. Different fields in the Vertices and Triangles fields data objects will contain point data and topological data. The standard naming convention used in the filters/renderers are as follows: (Case sensitive naming, other fields may also be present) 'Coords' Positional coordinates of a vertex, expressed with a 3-component real field (XYZ). 'TexCoords0' - 'TexCoords255' Texture coordinates of a vertex, expressed with a 2 components real field. By convention, the existing fields must be sequential, and must start with 'TexCoord0'. 'Normals' Normal vector for the vertex, expressed with a 3-component real field, a normalized (XYZ) vector. 'VertexIds' The id of the current vertex in the primitive. This field is present even if the vertex data is directly specified in the primitive data, to specify topology. The field is of type rid. 'MaterialIds' The material of the primitive. The field is of type rid. The 'Coords' and 'VertexIds' fields always exist in the object, but the other fields are optional. Also, there can exist user fields. |
CreateGeometryDataCaster | GeometryDataCaster is used to cast original GeometryData information to an image using mapping image |
CreateGeometryDataCasterSettings | GeometryDataCasterSettings is the interface used to manage settings for GeometryDataCaster |
CreateGeometryDataCollection | GeometryDataCollection holds a number of GeometryData objects. The objects can be looked up by their names (if they have been named with a call to SetName). |
CreateGeometryValidator | Checks the geometry for consistent indices, number of triangles etc. |
CreateGLTFExporter | glTF geometry exporter capable of exporting both glTF and GLB files determined by output path extension. Textures and binary blob files for glTF export will be placed alongside the glTF file and have names prefixed by the output file name. Note that any normal textures for the scene must be in tangent space, as generated by a normal caster with SetGenerateTangentSpaceNormals set to true. |
CreateGLTFImporter | glTF scene importer |
CreateGraphicsExporter | Base class for graphics export classes |
CreateGraphicsImporter | Base class for graphics import classes |
CreateHighDensityMeshReductionPipeline | The HighDensityMeshReductionPipeline object. |
CreateHighDensityMeshReductionProcessor | The HighDensityMeshReductionProcessor object. |
CreateHighDensityMeshReductionSettings | The HighDensityMeshReductionSettings settings object for the high density reduction pipeline and processor. |
CreateImageComparer | Compares images. |
CreateImageData | ImageData holds unpacked image data. The data is stored in an FieldData object as value fields. For simplicity all images are implemented as 3D images, but has an extent of 1 in Z for 2D images, and an extent of 1 in both Y and Z for 1D images. Cube maps are stored as a 3D image with Z-depth of 6 (one for each side) |
CreateImageDataExporter | Class for saving image data to different file formats. |
CreateImageDataImporter | Class for loading image data from different file formats. |
CreateImpostorFromSingleViewPipeline | ImpostorFromSingleViewPipeline provides a pipeline for a impostor from single view impostor processor to be applied on the input scene. |
CreateImpostorFromSingleViewSettings | Settings for the ImpostorType: ImpostorFromSingleView. |
CreateImpostorProcessor | The ImpostorProcessor generates an impostor of one of these impostor types: BillboardCloud, Flipbook or ImpostorFromSingleView. |
CreateImpostorSettings | Settings for the ImpostorProcessor |
CreateIntArray | IntArray is the int implementation of ValueArray. See ValueArray for a description. |
CreateLongArray | LongArray is the long implementation of ValueArray. See ValueArray for a description. |
CreateMappingImage | MappingImage stores the mapping between a processed geometry and the source geometry it is based on. The mapping image object also stores multisampling settings. It can be used to cast information from the original geometry to the processed geometry, such as surface transfer or calculating normal maps. See IMaterialCaster and subclasses for casting uses. |
CreateMappingImageInputMaterialSettings | Settings for the Simplygon mapping input. |
CreateMappingImageMeshData | MappingImageMeshData stores the mapped meshes and their paths in the original scene. This can be used to find a specific triangle on the original mesh in the scene from the combined id in the mapping image. |
CreateMappingImageOutputMaterialSettings | Settings for the Simplygon mapping output. |
CreateMappingImageSettings | 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. |
CreateMaterial | Material object that keeps material information used while rendering. |
CreateMaterialCaster | MaterialCaster is the base interface for material casting interfaces. The interface exports methods for defining input geometries & mapping image, materials, output image paths & formats |
CreateMaterialCasterSettings | MaterialCasterSettings is the base interface for material casting settings |
CreateMaterialCasterSource | MaterialCasterSource is used to save and load the data needed for a material casting. This can be used to run a casting at a later time, or on another machine. |
CreateMaterialEvaluationShader | MaterialEvaluationShader is used to setup information used during compute casting to aid in texture baking complicated shader graphs. |
CreateMaterialEvaluationShaderAttribute | MaterialEvaluationShaderAttribute is used to bind geometry data fields to the generated compute caster. |
CreateMaterialEvaluationShaderAttributeTable | MaterialEvaluationShaderAttributeTable keeps information on material attributes used while setting up compute casting using the material evaluation shader. |
CreateMaterialEvaluationShaderDefine | MaterialEvaluationShaderDefine are used to setup shader preprocessor define in the generated compute shader. |
CreateMaterialEvaluationShaderDefineTable | MaterialEvaluationShaderDefineTable keeps information on material Defines used while setting up compute casting using the material evaluation shader. |
CreateMaterialEvaluationShaderSerializer | |
CreateMaterialTable | MaterialTable keeps information on materials used while rendering. Note that the table will make sure that the names of objects added are unique within the table, and will rename objects with non-unique names. |
CreateMatrix4x4 | Matrix4x4 is used to represent and manipulate 4x4 transformation matrices, which can be either standard matrices, or homogeneous 4x4 matrices used to transform 3D homogeneous coordinates [x y z w]. The transformations are defined in row-major order. |
CreateModularSeamAnalyzer | |
CreateModularSeams | |
CreateModularSeamSettings | |
CreateNormalCalculationSettings | Settings for the normal recalculation |
CreateNormalCaster | NormalCaster is the interface used to cast normals data onto the receiving geometry. |
CreateNormalCasterSettings | NormalCasterSettings is the interface used to manage settings for a normal caster |
CreateNormalRepairer | Repairs normals on a processed geometry. |
CreateObjectCollection | ObjectCollection and its specializations handles a collection of Objects. There are methods for adding, removing and iterating through the objects. |
CreateOcclusionMeshPipeline | OcclusionMeshPipeline provides a pipeline for a single occlusion mesh processor to be applied on the input scene. |
CreateOcclusionMeshProcessor | The occlusion mesh processor creates a reconstruction of the input mesh from its silhouette. This means concavities and internal geometry disappear. WARNING: Experimental. Generates nice meshes, but currently very slow at high settings. Recommended onscreensize ~100 |
CreateOcclusionMeshSettings | Settings for occlusion meshes |
CreateOpacityCaster | OpacityCaster is the interface used to cast opacity values. To be used when opacity is needed as a separate texture. IMPORTANT: Make sure to set OpacityChannel to the channel you want to cast, since this caster bakes opacity rather than the channel set in the MaterialChannel setting like most other casters. |
CreateOpacityCasterSettings | OpacityCasterSettings is the interface used to manage settings for an opacity caster. IMPORTANT: Make sure to set the OpacityChannel setting to the channel you want to cast, since this caster bakes opacity rather than the channel set in the MaterialChannel setting like most other casters. |
CreatePackedGeometryData | PackedGeometryData keeps the same information as GeometryData, but with all corner data fields moved into per-vertex fields. No per-corner fields exist, apart from the VertexIds field. Please note that the number of vertices in an PackedGeometryData is commonly higher than in an GeometryData, as vertices must be split to accommodate for different corner data. |
CreateParameterizer | Computes texture coordinates for arbitrary geometry. |
CreateParameterizerSettings | Settings for the parameterizer. |
CreatePartRemover | The PartRemover tool can identify unconnected sub-meshes, and remove meshes that fall below a set size threshold. This size threshold can be set globally for the entire geometry, or per-material to be able to remove things like decals effectively. |
CreatePartRemoverSettings | The PartRemoverSettings settings object for the PartRemover tool as well as Reduction pipeline and processor. |
CreatePassthroughPipeline | PassthroughPipeline provides an empty pipeline for creating a cascading pipeline using a single dummy root node. It does not process the input scene in any way. |
CreatePipeline | Pipeline is the interface for a processing pipeline, which applies a number of processing operations on an input scene to generate an output scene. The input and output scenes can be any file format supported by Simplygon. |
CreatePipelineBatch | Control object to launch pipelines in batches, both locally and distributed |
CreatePipelineSerializer | |
CreatePipelineSettings | PipelineSettings is the interface used to manage settings for a pipeline |
CreateProcessingObject | ProcessingObject is the abstract base class for all processing objects in Simplygon. Processing objects take parameters, exports the RunProcessing to run the main processing and Clear to clear the internal states of the processing object. All processing objects also export information on how far the process has moved and the possibility to cancel long running processings. |
CreateQuadReductionPipeline | QuadReductionPipeline provides a pipeline for the quad reduction processor. |
CreateQuadReductionProcessor | QuadReductionProcessor reduces quad meshes while trying to maintain the mesh structure. This requires that the input GeometryData in the input scene has valid QuadFlags fields, which are used to interpret pairs of triangles as quadrilaterals. |
CreateQuadReductionSettings | Settings for the QuadReductionProcessor class. This contains the fundamental reduction settings like stop conditions and reduction targets. |
CreateRealArray | RealArray is the real implementation of ValueArray. See ValueArray for a description. |
CreateRecommendedTextureSizeCalculator | Estimates a coarse recommended UV size (width and height) for a geometry based on only its surface area and either the distance it is allowed to deviate or its intended on screen size. The UVs are assumed to be unique i.e. not tiled/repeated. RecommendedWidth and RecommendedHeight will only differ from each other if ForcePower2Texture is enabled. |
CreateReductionPipeline | ReductionPipeline provides a pipeline for a single reduction processor to be applied on the input scene. |
CreateReductionProcessor | ReductionProcessor welds, removes t-junctions, removes double-triangles and reduces the triangle count of the Geometry. It also calculates new normals for the reduced and optimized Geometry. |
CreateReductionSettings | Settings for the ReductionProcessor class. Handles all the settings for Simplygons simplification algorithms. The user can tell the reduction processor which features are important by using the 'FeatureFlags' parameter, and also the relative importance of these features using the Set{feature}Importance methods. Also settings for things like symmetry are set here. |
CreateRemeshingPipeline | RemeshingPipeline provides a pipeline for a single remeshing processor to be applied on the input scene. |
CreateRemeshingProcessor | 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. |
CreateRemeshingSettings | Remeshing settings for the RemeshingProcessor class. |
CreateRepairSettings | Settings for handling unconnected parts and unwanted gaps in the geometry. It consists of two parts, Welding and T-junction removal. Welding merges vertices that are closer than a set distance from each other. T-junction removal finds open edges that lies within a set distance from other open edges, but without matching vertices. It then splits those triangles into smaller, matching triangles and fuses them together. |
CreateRidArray | RidArray is the rid implementation of ValueArray. See ValueArray for a description. |
CreateScene | Scene is the main keeper of a scene and scene graph in simplygon. The scene is self-contained, with materials, textures, etc. to describe a full scene. |
CreateSceneBone | SceneBone is the bone node in the simplygon scene graph |
CreateSceneBoneTable | SceneBoneTable keeps information on bones used while rendering. |
CreateSceneCamera | SceneCamera is the camera node in the Simplygon scene graph. SceneCamera contains settings that specify how the camera works and it contains a number of views for that type of camera. A view is a combination of a CameraPosition and a TargetPosition. The SceneCamera can contain any number of views but every element in TargetPositions has to correspond to a tuple element in CameraPosition. TargetPositions is not needed if the camera is set to being omni directional. |
CreateSceneExporter | Class for saving scene data to different file formats depending on the extension of the set file name. |
CreateScenegraphExporter | Scenegraph exporter. |
CreateScenegraphImporter | Scenegraph importer |
CreateSceneImporter | Class for loading scene data from different file formats. |
CreateSceneLodGroup | SceneLodGroup is a LOD grouping for the scene graph |
CreateSceneMesh | SceneMesh is the mesh node in the simplygon scene graph |
CreateSceneNode | SceneNode is the base class for all scene graph nodes in simplygon. It has relative transformation to its parent, and functions to add children to the node. |
CreateSceneNodeCollection | SceneNodeCollection holds a number of SceneNode objects. The objects can be looked up by their names (if they have been named through SetName()). |
CreateScenePlane | ScenePlane is the plane node in the simplygon scene graph that can be used in various processes, for example as a cutting plane in the RemeshingProcessor. |
CreateSceneValidator | Checks the Scene based on currently set validation flags. |
CreateSelectionSet | SelectionSet is a set of scene node GUIDs referencing scene nodes in a scene. |
CreateSelectionSetTable | SelectionSetTable keeps a table of SelectionSet. Note that the table will make sure that the names of objects added are unique within the table, and will rename objects with non-unique names. |
CreateSettingsObject | SettingsObject is the abstract base class for all settings objects in Simplygon. Settings objects contains parameters for processing objects to use. These settings objects will have their data set and reached from a ProcessingObject and then used therein. |
CreateShaderEvaluationFunction | |
CreateShaderEvaluationFunctionTable | ShaderEvaluationFunctionTable keeps information on shader parameter used while setting up compute casting using the material evaluation shader. |
CreateShaderGenerator | Given a material, the shader data class keeps the relevant shader data and is able to generate a GLSL/HLSL shader. |
CreateShaderParameter | ShaderParameter is the parent of all ShaderParameters |
CreateShaderParameterBuffer | ShaderParameterBuffer defines a custom buffer which is used by the evaluation shader. The buffer data is served to the shader as is, and is not interpolated. |
CreateShaderParameterSampler | ShaderParameterSampler defines a sampler used by the evaluation shader to sample data from a specified texture. |
CreateShaderParameterSamplerState | ShaderParameterSamplerState defines a named sampler state that override default sampler state and can be shared between multiple spShaderParameterSampler's. |
CreateShaderParameterTable | ShaderParameterTable keeps information on shader parameter used while setting up compute casting using the material evaluation shader. |
CreateShaderParameterTexture | ShaderParameterTexture defines a texture which is used by the evaluation shader to fetch data from a bound texture. |
CreateShaderParameterTextureArray | ShaderParameterTextureArray defines a texture array, which is used by the evaluation shader to fetch data from a bound textures. |
CreateShadingAddNode | AddNode describes a single addition shading node in a shading network. Input 1 and 2 are added per-component to produce the output. |
CreateShadingBrightnessContrastNode | ShadingBrightnessContrastNode is used to adjust the Brightness & Contrast of Input 1, using Input 2 (r=Brightness change, g=Contrast change). The adjustments are in the range (-1 to 1), where 0 equals no adjustment. |
CreateShadingClampNode | ClampNode describes a single clamp shading node in a shading network. Input 1 is clamped per-component between Input 2 and 3. |
CreateShadingColorCorrectionNode | ShadingColorCorrectionNode is used to adjust the Hue & Saturation of Input 1, using Input 2 (r=Hue change, g=Saturation change). The adjustments are in the range (-1 to 1), where 0 equals no adjustment. In the case of Hue, -1 or 1 equals a full rotation in either direction. In the case of Saturation, -1 is fully grayscale, and 1 is double the saturation of before. |
CreateShadingColorNode | ColorNode describes a single color source node in a shading network |
CreateShadingCosNode | This node describes cosine of the x,y,z,w components of the input. |
CreateShadingCross3Node | This node describes the cross of the x,y,z components of the input. |
CreateShadingCustomNode | CustomNode describes a custom shading node in a shading network. The output is produced based on customizable user specified operations. The custom node has a user specified amount of input parameters. Use SetInputCount() to specify the number of inputs. The user has to assign and implement event handlers (called observers) for the custom node to be able to evaluate to colors. See CustomNodeExample and API documentation for further explanations and code samples. |
CreateShadingDivideNode | DivideNode describes a single division shading node node in a shading network. Input 1 is divided by Input 2 per-component to produce the output. |
CreateShadingDot3Node | This node describes an dot of the x,y,z components of the inputs. |
CreateShadingEqualNode | ShadingEqualNode describes an "is equal to" operator, where the per-component output is either 1 or 0 depending on if input0 is equal to input1. Basically, (Input0 == Input1) ? 1 : 0 |
CreateShadingFilterNode | FilterNode is the parent of all non-source nodes in a shading network. |
CreateShadingGeometryFieldNode | Geometry field node describes a source node for geometry field data in a shading network, such as normals and tangents. |
CreateShadingGreaterThanNode | GreaterThanNode describes the "is greater than" operator, where the per-component output is either 1 or 0 depending on if input0 is greater than input1. Basically, (Input0 > Input1) ? 1 : 0 |
CreateShadingInterpolateNode | InterpolateNode describes a single interpolating shading node node in a shading network. Input 1 and Input 2 is interpolated per-component using Input 3. Blend values below 0 and over 1 will be clamped. |
CreateShadingLayeredBlendNode | LayeredBlendNode is a node with an arbitrary number of inputs that can be blended differently. |
CreateShadingLessThanNode | LessThanNode describes the "is less than" operator, where the per-component output is either 1 or 0 depending on if input0 is LessThan to input1. Basically, (Input0 < Input1) ? 1 : 0 |
CreateShadingMaxNode | MaxNode describes a single max shading node in a shading network. The output has the per-channel max values of the two inputs. |
CreateShadingMinNode | MinNode describes a single min shading node in a shading network. The output has the per-channel min values of the two inputs. |
CreateShadingMultiplyNode | MultiplyNode describes a single multiplying shading node in a shading network. Input 1 and Input 2 is multiplied per-component. |
CreateShadingNode | ShadingNode is the parent of all nodes in a shading network. |
CreateShadingNormalize3Node | This node describes an normalization of the x,y,z components of the input. |
CreateShadingNotEqualNode | NotEqualNode describes the "is not equal" operator, where the per-component output is either 1 or 0 depending on if input0 is equal to input1. Basically, (Input0 != Input1) ? 1 : 0 |
CreateShadingPowNode | This node describes an exponentiation. The output will be Input 1 to the power of Input 2, and it is calculated per-component. |
CreateShadingSinNode | This node describes Sin of the x,y,z components of the input. |
CreateShadingSqrtNode | This node describes a square root calculation. The output will be the per-component square root of input 1 |
CreateShadingStepNode | StepNode describes a single step shading node, where the per-component output is either 1 or 0 depending on if input0 is larger or smaller than input1. Basically, (Input0 >= Input1) ? 1 : 0 |
CreateShadingSubtractNode | SubtractNode describes a single subtracting shading node in a shading network. Input 2 is subtracted from input 1 per-component. |
CreateShadingSwizzlingNode | SwizzlingNode describes a node that can remap the input to the specified output. |
CreateShadingTextureNode | TextureNode describes a texture source node in a shading network. |
CreateShadingVertexColorNode | VertexColorNode describes a vertex color source node in a shading network. |
CreateShortArray | ShortArray is the short implementation of ValueArray. See ValueArray for a description. |
CreateStringArray | StringArray is the string implementation of ValueArray. See ValueArray for a description. |
CreateSurfaceMapper | ISurfaceMapper creates a mapping image between two user-defined geometries. The mapper basically looks for the source geometry in the inverse normal direction from the outwardly offset destination geometry, and maps pixels accordingly. This means that you can modify the normals of the destination geometry to adjust the search direction to your liking. The geometries can either be set as IGeometryDatas or as the root nodes of scenes. If both are set, the scene is used. If only a single source or a destination is set, or if the source and destination are the same scene or geometry, the surface mapper will map the mesh onto itself. |
CreateTable | Table is the base class for tables objects, where items are added into an id-indexed array of objects. |
CreateTangentCalculator | TangentCalculator calculates tangent vectors for geometry data objects. One corner field of texture coordinates must exist, as well as normals. The tangents are placed into two corner fields called "Tangents" and "Bitangents". If any of these fields already exists, it is replaced by the new field. |
CreateTexCoordAdjuster | Adjusts texture coordinates to cover pixel centers. |
CreateTexture | Texture describes a texture object, containing either image data or a path that is referenced by texture nodes in materials. |
CreateTextureTable | TextureTable keeps information on textures used while rendering. Note that the table will make sure that the names of objects added are unique within the table, and will rename objects with non-unique names. |
CreateTJunctionEliminator | Removes t-junctions by subdividing triangles and welding vertices |
CreateTransform3 | Transform3 handles homogeneous 4x4 transforms, i.e. transformations which can be represented by multiplying a 4x4 matrix with a homogeneous 3D coordinate. Transform3 can either pre-multiply a matrix onto the transformation, which will add a transform around the current transform, or it can post-multiply the matrix, which will add a transform inside the current transform. Post-multiply is the default mode. |
CreateUnsignedCharArray | UnsignedCharArray is the uchar implementation of ValueArray. See ValueArray for a description. |
CreateUnsignedIntArray | UnsignedIntArray is the uint implementation of ValueArray. See ValueArray for a description. |
CreateUnsignedLongArray | UnsignedLongArray is the ulong implementation of ValueArray. See ValueArray for a description. |
CreateUnsignedShortArray | UnsignedShortArray is the ushort implementation of ValueArray. See ValueArray for a description. |
CreateUSDExporter | USD scene exporter |
CreateUSDImporter | USD scene importer |
CreateValueArray | ValueArray adds methods to arrays to generically add, set and get tuples, through real values. |
CreateVertexColorCaster | VertexColorCaster. |
CreateVertexColorCasterSettings | VertexColorCasterSettings is the interface for basic vertex color caster settings. |
CreateVertexWeightSettings | This settings object contains all settings related to how the user-set weighting field "VertexWeights" is setup and used in different contexts. The values in the field can be considered an "importance" factor. Generally, weights set to 1.0 are handled normally, values >1.0 are given greater importance, and values <1.0 are given less. These weights can either be manually set in the input geometry data or converted from vertex color sets using the WeightsFromColor settings. See the documentation of the WeightsFromColorMode property to see the details of how color intensity is mapped to vertex weight. Vertex weights can be used to reduce more or less aggressively on different parts of the mesh, or used to scale UV allocation in the parameterizers to give more or less texture area to different areas. |
CreateVisibilitySettings | Visibility settings contains the parameters for how to compute the visibility of a scene and how to use it, both in the ReductionProcessor and the RemeshingProcessor. The visibility information is computed for each part of the mesh determined by the visibility from the selected SceneCamera objects. Cameras are selected using the CameraSelectionSetID. The visibility can be used to guide the reducer and/or texture coordinates generator (parameterizer) with the flags UseVisibilityWeightsInReducer respective UseVisibilityWeightsInTexcoordGenerator. There is also an option to completely throw away triangles that are deemed not visible, using the CullOccludedGeometry flag. |
CreateWavefrontExporter | Wavefront .obj geometry exporter. |
CreateWavefrontImporter | OBJ scene importer |
CreateWelder | Welds vertices within the geometry or scene together. |
EnableLogToFile | Enable logging to default file (%SIMPLYGON_10_SHARED%\Simplygon.log). |
EnableLogToFile | Enable logging to file of your choice. |
ErrorOccurred | Check if any errors occurred. |
GetErrorMessages | Get error messages. |
GetVersion | Get the current version of Simplygon. |
GetWarningMessages | Get warning messages. |
WarningOccurred | Check if any warnings occurred. |
Properties details
GlobalAllowDirectXSetting
Allow the use of DirectX when processing. This may use a discrete GPU, or a Warp based CPU backend.
GlobalAllowDistributionLocalFallbackSetting
Sets global AllowDistributionLocalFallback setting
GlobalAllowGPUAccelerationSetting
Allow the use of GPU optimizations when processing.
GlobalAllowShadingNetworkCachingSetting
Sets global AllowShadingNetworkCaching setting
GlobalAllowTextureSamplingInterpolationSetting
Sets global AllowTextureSamplingInterpolation setting
GlobalBatchLogPathSetting
This is the file path to use when outputting batch logs.
GlobalCacheToDiskSetting
Sets global CacheToDisk setting
GlobalDefaultTangentCalculatorTypeSetting
DefaultTangentCalculatorType defines the default tangent calculator type to use when calculating tangents. This can be overridden in some processors and pipelines.
GlobalDXCPathSetting
The path to the DXC shader compiler. If the Vulkan SDK is installed, the compiler is automatically found and this path is set by Simplygon on init, but the path can be set manually by the user if the shader compiler cannot be automatically found, or to override the path.
GlobalEnableLogSetting
Enable logging.
GlobalEnableVulkanValidationLayersSetting
If set, the Vulkan validation layers are enabled, and will log warnings and issues to the log. Note that this should only be used for debugging, and will impact processing performance when enabled.
GlobalFlushLogPerRowSetting
Sets global FlushLogPerRow setting
GlobalGLSLCPathSetting
The path to the GLSLC shader compiler. If the Vulkan SDK is installed, the compiler is automatically found and this path is set by Simplygon on init, but the path can be set manually by the user if the shader compiler cannot be automatically found, or to override the path.
GlobalGridAgentBalancerJobToleranceSetting
Specify the number of jobs that the balancer can skip before it runs. Increasing this number will reduce the efficiency of the agent usage
GlobalGridAgentDiscoveryDelaySetting
How long SimplygonBatch pauses before searching for agents on the network again. (Milliseconds).
GlobalGridAgentLoadLimitSetting
Use this to change the default agent load limit. The value can be set between 1-100(%).
GlobalGridAgentsTableFilePathSetting
If Simplygon Grid distribution should use a fixed list of agents rather than mDNS discovery, this is the file path to the xml file with a table of available agents.
GlobalGridDiscoverTimeoutSetting
The timeout that decides when SimplygonBatch should stop discover agents.
GlobalGridEnableAgentIpSortingSetting
Set to True if you want the discovered agents to also be sorted by ip address.
GlobalGridEnableVerboseLoggingSetting
Control whether grid should output detailed information about its internal operations and events to the console or a log file. If set to true, SimplygonBatch will produce verbose logs; otherwise, it will only produce minimal logs.
GlobalGridOverloadedTimeoutSetting
Specify how long grid should wait for busy agents to be available for distribution again.
GlobalGridRetryLimitForFailedJobSetting
Number of retries for a failed grid job
GlobalIgnorePNGGammaOnImageLoadSetting
If set, will cause any function that loads a PNG image to ignore the settings in the PNG gamma chunk.
GlobalInputSceneValidationActionSetting
The action to take when an invalid scene is input into Simplygon.
GlobalLogDecorationMaskSetting
Sets global LogDecorationMask setting
GlobalLogFileNameSetting
The log file to write the log to. (Enable logging and logging to file with settings EnableLogging and LogToFile)
GlobalLogicalCoreLimitSetting
Sets global LogicalCoreLimit setting
GlobalLogLevelSetting
the global log level, how verbose the log should be
GlobalLogOutputToInternalLogSetting
If logging is enabled, send a copy of the log to the internal log queue. To fetch from this log, use Simplygon::PollLog in SimplygonLoader.h
GlobalLogOutputToTraceWindowSetting
Sets global LogOutputToTraceWindow setting
GlobalLogToFileSetting
If logging is enabled, log to a file, which is specified using the LogFileName setting
GlobalMaskFPExceptionsSetting
Sets global MaskFPExceptions setting
GlobalPreventDirectXThreadingOptimizationsSetting
Sets global PreventDirectXThreadingOptimizations setting
GlobalReportErrorCodesToErrorHandlerSetting
If enabled, all non-zero EErrorCodes (any error) from processing objects, pipelines and import/export objects will be reported through the error handler.
GlobalUnpackFBXInSimplygonTempDirectorySetting
Sets global UnpackFBXInSimplygonTempDirectory setting
GlobalValidateProcessingAssertOnErrorSetting
Sets global ValidateProcessingAssertOnError setting
GlobalValidateProcessingDebugLevelSetting
Sets global ValidateProcessingDebugLevel setting
GlobalValidateProcessingOutputDirectorySetting
Sets global ValidateProcessingOutputDirectory setting
GlobalValidateProcessingSetting
If set, an extra step of validation is run before running the process. Enabled by default, disabling it may increase performance slightly, but may cause invalid processing to crash.
GlobalValidRealThresholdSetting
Sets global ValidRealThreshold setting
GlobalVulkanDeviceSetting
Set this global setting string if you need to override the Vulkan device used by the processing. The string can be either the exact name of the device, or a subset of the name, such as the vendor name.
ThreadLocalLogFileNameSetting
Sets thread local LogFileName setting
Methods details
ClearErrorMessages
Clear error messages.
ClearWarningMessages
Clear warning messages.
CreateAggregationPipeline
AggregationPipeline provides a pipeline for a single aggregation processor to be applied on the input scene.
CreateAggregationProcessor
AggregationProcessor combines all specified geometries in the scene into one geometry. All materials are combined and receive a new shared texture atlas.
CreateAggregationSettings
Settings for the AggregationSettings class. The AggregationProcessor converts entire scenes containing multiple draw calls into a single new object with a single texture per material channel. The user can set whether or not the AggregationProcessor should create new UVs based on the old UVs or create a completely new UV parameterization.
CreateAmbientOcclusionCaster
AmbientOcclusionCaster generates an ambient occlusion map based on the original geometry, and casts it.
CreateAmbientOcclusionCasterSettings
AmbientOcclusionCasterSettings manages settings for an ambient occlusion caster.
CreateArray
Array is the base class for the array objects. The object contains a dynamically allocated list of tuples of the same length, which can be specified before the list is filled with values.
CreateAttributeTessellation
Management functions for geometry attribute tessellation
CreateAttributeTessellationData
AttributeTessellationData contains methods to access the attribute tessellation data residing within a GeometryData object.
CreateAttributeTessellationSamplingSettings
Settings for sampling tessellated attributes from input data, either direct injected or through material casting.
CreateAttributeTessellationSettings
Attribute tessellation settings contains the parameters for how to compute the tessellation attributes of geometries in a scene.
CreateBillboardCloudPipeline
BillboardCloudPipeline provides a pipeline for a billboard cloud impostor processor to be applied on the input scene.
CreateBillboardCloudSettings
Settings for the ImpostorType: BillboardCloud
CreateBillboardCloudVegetationPipeline
BillboardCloudPipeline provides a pipeline for a billboard cloud vegetation impostor processor to be applied on the input scene.
CreateBinaryExporter
BinaryExporter stores the geometry data into a binary file, that is specific for Simplygon. Please note that the binary file is only intended for temporary storage, and that no compatibility between versions of Simplygon is guaranteed.
WARNING
This method is marked as deprecated and will be removed in a future version.
CreateBinaryImporter
BinaryImporter loads the geometry data from a binary file, that is specific for Simplygon. Please note that the binary file is only intended for temporary storage, and that no compatibility between versions of Simplygon is guaranteed.
WARNING
This method is marked as deprecated and will be removed in a future version.
CreateBoneSettings
Settings for the Simplygon Reduction/Remeshing classes With the BoneSettings object, the user can setup all the parameters for how the BoneLOD processor should simplify the links between geometries and bones. Bones can be un-linked from the geometry either with a set ratio or depending on a selected pixel size on screen.
CreateBoolArray
BoolArray is the bool implementation of ValueArray. See ValueArray for a description.
CreateCharArray
CharArray is the char implementation of ValueArray. See ValueArray for a description.
CreateChartAggregator
Computes new texture coordinates for a geometry with overlapping UV charts.
CreateChartAggregatorSettings
Settings for the chart aggregator.
CreateChunkedImageData
ChunkedImageData holds chunks for ImageData objects. ImageData objects can be referenced, and swapped in/out of memory, to secondary storage. This is useful for very large images that cannot be stored in-memory. ImageData objects can be indexed in 1-,2- or 3D, and each ImageData chunk is cloned from a source ImageData object, at setup. Fields added to ImageData chunks after setup will only be added into that chunk, and is not recommended.
CreateColorCaster
ColorCaster is the interface used to cast basic color values. Currently supported material color value types are Ambient, Diffuse and Specular + Shininess.
CreateColorCasterSettings
ColorCasterSettings is the interface for basic color caster settings.
CreateComputeCaster
ComputeCaster is the interface used to cast general values, using a GPU based shader.
CreateComputeCasterSettings
ComputeCasterSettings is the interface for the advanced compute shader based caster settings.
CreateDisplacementCaster
DisplacementCaster is used to store the delta-values between the original and processed geometries. The values are divided by a scaling value, and clamped into the -1 -> 1 range before being stored into an image.
CreateDisplacementCasterSettings
DisplacementCasterSettings is used to store the settings for a displacement caster
CreateDoubleArray
DoubleArray is the double implementation of ValueArray. See ValueArray for a description.
CreateExtents
Extents holds calculated extents, and can be used to fetch extents positions and radius of scenes and selection sets.
CreateFBXExporter
FBX scene exporter.
CreateFBXImporter
FBX scene importer
CreateFieldData
FieldData represents multiple fields of data. Each field is implemented as an ValueArray object, that has a unique name, and can have complex components (such as scalars, vectors, quaternions, tensors or matrices). All fields are assumed to be of the same length. IFieldData can be seen as an array with complex tuples, where the component can be of different types.
CreateFlipbookPipeline
FlipbookPipeline provides a pipeline for a flipbook impostor processor to be applied on the input scene.
CreateFlipbookSettings
Settings for the ImpostorType: FlipBook
CreateFloatArray
FloatArray is the float implementation of ValueArray. See ValueArray for a description.
CreateFoliageSettings
Settings for the BillboardMode: Foliage
CreateGenerateLightmapTexCoordSettings
GenerateLightmapTexCoordSettings is the interface used to manage light map uv generation.
CreateGeometryCullingSettings
Settings for volumetric triangle culling functionality. These settings control the clipping planes and geometries that are used for triangle culling the output of Simplygon scene processors.
CreateGeometryData
GeometryData represents a geometric structure consisting of point data (Vertices) and topological data (Triangles). GeometryData may represent a whole geometric object, but can also be used by streaming data filters, and in this way, only represents a part of the object. Different fields in the Vertices and Triangles fields data objects will contain point data and topological data. The standard naming convention used in the filters/renderers are as follows: (Case sensitive naming, other fields may also be present) 'Coords' Positional coordinates of a vertex, expressed with a 3-component real field (XYZ). 'TexCoords0' - 'TexCoords255' Texture coordinates of a vertex, expressed with a 2 components real field. By convention, the existing fields must be sequential, and must start with 'TexCoord0'. 'Normals' Normal vector for the vertex, expressed with a 3-component real field, a normalized (XYZ) vector. 'VertexIds' The id of the current vertex in the primitive. This field is present even if the vertex data is directly specified in the primitive data, to specify topology. The field is of type rid. 'MaterialIds' The material of the primitive. The field is of type rid. The 'Coords' and 'VertexIds' fields always exist in the object, but the other fields are optional. Also, there can exist user fields.
CreateGeometryDataCaster
GeometryDataCaster is used to cast original GeometryData information to an image using mapping image
CreateGeometryDataCasterSettings
GeometryDataCasterSettings is the interface used to manage settings for GeometryDataCaster
CreateGeometryDataCollection
GeometryDataCollection holds a number of GeometryData objects. The objects can be looked up by their names (if they have been named with a call to SetName).
CreateGeometryValidator
Checks the geometry for consistent indices, number of triangles etc.
CreateGLTFExporter
glTF geometry exporter capable of exporting both glTF and GLB files determined by output path extension. Textures and binary blob files for glTF export will be placed alongside the glTF file and have names prefixed by the output file name. Note that any normal textures for the scene must be in tangent space, as generated by a normal caster with SetGenerateTangentSpaceNormals set to true.
CreateGLTFImporter
glTF scene importer
CreateGraphicsExporter
Base class for graphics export classes
CreateGraphicsImporter
Base class for graphics import classes
CreateHighDensityMeshReductionPipeline
The HighDensityMeshReductionPipeline object.
CreateHighDensityMeshReductionProcessor
The HighDensityMeshReductionProcessor object.
CreateHighDensityMeshReductionSettings
The HighDensityMeshReductionSettings settings object for the high density reduction pipeline and processor.
CreateImageComparer
Compares images.
CreateImageData
ImageData holds unpacked image data. The data is stored in an FieldData object as value fields. For simplicity all images are implemented as 3D images, but has an extent of 1 in Z for 2D images, and an extent of 1 in both Y and Z for 1D images. Cube maps are stored as a 3D image with Z-depth of 6 (one for each side)
CreateImageDataExporter
Class for saving image data to different file formats.
CreateImageDataImporter
Class for loading image data from different file formats.
CreateImpostorFromSingleViewPipeline
ImpostorFromSingleViewPipeline provides a pipeline for a impostor from single view impostor processor to be applied on the input scene.
CreateImpostorFromSingleViewSettings
Settings for the ImpostorType: ImpostorFromSingleView.
CreateImpostorProcessor
The ImpostorProcessor generates an impostor of one of these impostor types: BillboardCloud, Flipbook or ImpostorFromSingleView.
CreateImpostorSettings
Settings for the ImpostorProcessor
CreateIntArray
IntArray is the int implementation of ValueArray. See ValueArray for a description.
CreateLongArray
LongArray is the long implementation of ValueArray. See ValueArray for a description.
CreateMappingImage
MappingImage stores the mapping between a processed geometry and the source geometry it is based on. The mapping image object also stores multisampling settings. It can be used to cast information from the original geometry to the processed geometry, such as surface transfer or calculating normal maps. See IMaterialCaster and subclasses for casting uses.
CreateMappingImageInputMaterialSettings
Settings for the Simplygon mapping input.
CreateMappingImageMeshData
MappingImageMeshData stores the mapped meshes and their paths in the original scene. This can be used to find a specific triangle on the original mesh in the scene from the combined id in the mapping image.
CreateMappingImageOutputMaterialSettings
Settings for the Simplygon mapping output.
CreateMappingImageSettings
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.
CreateMaterial
Material object that keeps material information used while rendering.
CreateMaterialCaster
MaterialCaster is the base interface for material casting interfaces. The interface exports methods for defining input geometries & mapping image, materials, output image paths & formats
CreateMaterialCasterSettings
MaterialCasterSettings is the base interface for material casting settings
CreateMaterialCasterSource
MaterialCasterSource is used to save and load the data needed for a material casting. This can be used to run a casting at a later time, or on another machine.
CreateMaterialEvaluationShader
MaterialEvaluationShader is used to setup information used during compute casting to aid in texture baking complicated shader graphs.
CreateMaterialEvaluationShaderAttribute
MaterialEvaluationShaderAttribute is used to bind geometry data fields to the generated compute caster.
CreateMaterialEvaluationShaderAttributeTable
MaterialEvaluationShaderAttributeTable keeps information on material attributes used while setting up compute casting using the material evaluation shader.
CreateMaterialEvaluationShaderDefine
MaterialEvaluationShaderDefine are used to setup shader preprocessor define in the generated compute shader.
CreateMaterialEvaluationShaderDefineTable
MaterialEvaluationShaderDefineTable keeps information on material Defines used while setting up compute casting using the material evaluation shader.
CreateMaterialEvaluationShaderSerializer
CreateMaterialTable
MaterialTable keeps information on materials used while rendering. Note that the table will make sure that the names of objects added are unique within the table, and will rename objects with non-unique names.
CreateMatrix4x4
Matrix4x4 is used to represent and manipulate 4x4 transformation matrices, which can be either standard matrices, or homogeneous 4x4 matrices used to transform 3D homogeneous coordinates [x y z w]. The transformations are defined in row-major order.
CreateModularSeamAnalyzer
CreateModularSeams
CreateModularSeamSettings
CreateNormalCalculationSettings
Settings for the normal recalculation
CreateNormalCaster
NormalCaster is the interface used to cast normals data onto the receiving geometry.
CreateNormalCasterSettings
NormalCasterSettings is the interface used to manage settings for a normal caster
CreateNormalRepairer
Repairs normals on a processed geometry.
CreateObjectCollection
ObjectCollection and its specializations handles a collection of Objects. There are methods for adding, removing and iterating through the objects.
CreateOcclusionMeshPipeline
OcclusionMeshPipeline provides a pipeline for a single occlusion mesh processor to be applied on the input scene.
CreateOcclusionMeshProcessor
The occlusion mesh processor creates a reconstruction of the input mesh from its silhouette. This means concavities and internal geometry disappear. WARNING: Experimental. Generates nice meshes, but currently very slow at high settings. Recommended onscreensize ~100
CreateOcclusionMeshSettings
Settings for occlusion meshes
CreateOpacityCaster
OpacityCaster is the interface used to cast opacity values. To be used when opacity is needed as a separate texture. IMPORTANT: Make sure to set OpacityChannel to the channel you want to cast, since this caster bakes opacity rather than the channel set in the MaterialChannel setting like most other casters.
CreateOpacityCasterSettings
OpacityCasterSettings is the interface used to manage settings for an opacity caster. IMPORTANT: Make sure to set the OpacityChannel setting to the channel you want to cast, since this caster bakes opacity rather than the channel set in the MaterialChannel setting like most other casters.
CreatePackedGeometryData
PackedGeometryData keeps the same information as GeometryData, but with all corner data fields moved into per-vertex fields. No per-corner fields exist, apart from the VertexIds field. Please note that the number of vertices in an PackedGeometryData is commonly higher than in an GeometryData, as vertices must be split to accommodate for different corner data.
CreateParameterizer
Computes texture coordinates for arbitrary geometry.
CreateParameterizerSettings
Settings for the parameterizer.
CreatePartRemover
The PartRemover tool can identify unconnected sub-meshes, and remove meshes that fall below a set size threshold. This size threshold can be set globally for the entire geometry, or per-material to be able to remove things like decals effectively.
CreatePartRemoverSettings
The PartRemoverSettings settings object for the PartRemover tool as well as Reduction pipeline and processor.
CreatePassthroughPipeline
PassthroughPipeline provides an empty pipeline for creating a cascading pipeline using a single dummy root node. It does not process the input scene in any way.
CreatePipeline
Pipeline is the interface for a processing pipeline, which applies a number of processing operations on an input scene to generate an output scene. The input and output scenes can be any file format supported by Simplygon.
CreatePipelineBatch
Control object to launch pipelines in batches, both locally and distributed
CreatePipelineSerializer
CreatePipelineSettings
PipelineSettings is the interface used to manage settings for a pipeline
CreateProcessingObject
ProcessingObject is the abstract base class for all processing objects in Simplygon. Processing objects take parameters, exports the RunProcessing to run the main processing and Clear to clear the internal states of the processing object. All processing objects also export information on how far the process has moved and the possibility to cancel long running processings.
CreateQuadReductionPipeline
QuadReductionPipeline provides a pipeline for the quad reduction processor.
CreateQuadReductionProcessor
QuadReductionProcessor reduces quad meshes while trying to maintain the mesh structure. This requires that the input GeometryData in the input scene has valid QuadFlags fields, which are used to interpret pairs of triangles as quadrilaterals.
CreateQuadReductionSettings
Settings for the QuadReductionProcessor class. This contains the fundamental reduction settings like stop conditions and reduction targets.
CreateRealArray
RealArray is the real implementation of ValueArray. See ValueArray for a description.
CreateRecommendedTextureSizeCalculator
Estimates a coarse recommended UV size (width and height) for a geometry based on only its surface area and either the distance it is allowed to deviate or its intended on screen size. The UVs are assumed to be unique i.e. not tiled/repeated. RecommendedWidth and RecommendedHeight will only differ from each other if ForcePower2Texture is enabled.
CreateReductionPipeline
ReductionPipeline provides a pipeline for a single reduction processor to be applied on the input scene.
CreateReductionProcessor
ReductionProcessor welds, removes t-junctions, removes double-triangles and reduces the triangle count of the Geometry. It also calculates new normals for the reduced and optimized Geometry.
CreateReductionSettings
Settings for the ReductionProcessor class. Handles all the settings for Simplygons simplification algorithms. The user can tell the reduction processor which features are important by using the 'FeatureFlags' parameter, and also the relative importance of these features using the Set{feature}Importance methods. Also settings for things like symmetry are set here.
CreateRemeshingPipeline
RemeshingPipeline provides a pipeline for a single remeshing processor to be applied on the input scene.
CreateRemeshingProcessor
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.
CreateRemeshingSettings
Remeshing settings for the RemeshingProcessor class.
CreateRepairSettings
Settings for handling unconnected parts and unwanted gaps in the geometry. It consists of two parts, Welding and T-junction removal. Welding merges vertices that are closer than a set distance from each other. T-junction removal finds open edges that lies within a set distance from other open edges, but without matching vertices. It then splits those triangles into smaller, matching triangles and fuses them together.
CreateRidArray
RidArray is the rid implementation of ValueArray. See ValueArray for a description.
CreateScene
Scene is the main keeper of a scene and scene graph in simplygon. The scene is self-contained, with materials, textures, etc. to describe a full scene.
CreateSceneBone
SceneBone is the bone node in the simplygon scene graph
CreateSceneBoneTable
SceneBoneTable keeps information on bones used while rendering.
CreateSceneCamera
SceneCamera is the camera node in the Simplygon scene graph. SceneCamera contains settings that specify how the camera works and it contains a number of views for that type of camera. A view is a combination of a CameraPosition and a TargetPosition. The SceneCamera can contain any number of views but every element in TargetPositions has to correspond to a tuple element in CameraPosition. TargetPositions is not needed if the camera is set to being omni directional.
CreateSceneExporter
Class for saving scene data to different file formats depending on the extension of the set file name.
CreateScenegraphExporter
Scenegraph exporter.
CreateScenegraphImporter
Scenegraph importer
CreateSceneImporter
Class for loading scene data from different file formats.
CreateSceneLodGroup
SceneLodGroup is a LOD grouping for the scene graph
CreateSceneMesh
SceneMesh is the mesh node in the simplygon scene graph
CreateSceneNode
SceneNode is the base class for all scene graph nodes in simplygon. It has relative transformation to its parent, and functions to add children to the node.
CreateSceneNodeCollection
SceneNodeCollection holds a number of SceneNode objects. The objects can be looked up by their names (if they have been named through SetName()).
CreateScenePlane
ScenePlane is the plane node in the simplygon scene graph that can be used in various processes, for example as a cutting plane in the RemeshingProcessor.
CreateSceneValidator
Checks the Scene based on currently set validation flags.
CreateSelectionSet
SelectionSet is a set of scene node GUIDs referencing scene nodes in a scene.
CreateSelectionSetTable
SelectionSetTable keeps a table of SelectionSet. Note that the table will make sure that the names of objects added are unique within the table, and will rename objects with non-unique names.
CreateSettingsObject
SettingsObject is the abstract base class for all settings objects in Simplygon. Settings objects contains parameters for processing objects to use. These settings objects will have their data set and reached from a ProcessingObject and then used therein.
CreateShaderEvaluationFunction
CreateShaderEvaluationFunctionTable
ShaderEvaluationFunctionTable keeps information on shader parameter used while setting up compute casting using the material evaluation shader.
CreateShaderGenerator
Given a material, the shader data class keeps the relevant shader data and is able to generate a GLSL/HLSL shader.
CreateShaderParameter
ShaderParameter is the parent of all ShaderParameters
CreateShaderParameterBuffer
ShaderParameterBuffer defines a custom buffer which is used by the evaluation shader. The buffer data is served to the shader as is, and is not interpolated.
CreateShaderParameterSampler
ShaderParameterSampler defines a sampler used by the evaluation shader to sample data from a specified texture.
CreateShaderParameterSamplerState
ShaderParameterSamplerState defines a named sampler state that override default sampler state and can be shared between multiple spShaderParameterSampler's.
CreateShaderParameterTable
ShaderParameterTable keeps information on shader parameter used while setting up compute casting using the material evaluation shader.
CreateShaderParameterTexture
ShaderParameterTexture defines a texture which is used by the evaluation shader to fetch data from a bound texture.
CreateShaderParameterTextureArray
ShaderParameterTextureArray defines a texture array, which is used by the evaluation shader to fetch data from a bound textures.
CreateShadingAddNode
AddNode describes a single addition shading node in a shading network. Input 1 and 2 are added per-component to produce the output.
CreateShadingBrightnessContrastNode
ShadingBrightnessContrastNode is used to adjust the Brightness & Contrast of Input 1, using Input 2 (r=Brightness change, g=Contrast change). The adjustments are in the range (-1 to 1), where 0 equals no adjustment.
CreateShadingClampNode
ClampNode describes a single clamp shading node in a shading network. Input 1 is clamped per-component between Input 2 and 3.
CreateShadingColorCorrectionNode
ShadingColorCorrectionNode is used to adjust the Hue & Saturation of Input 1, using Input 2 (r=Hue change, g=Saturation change). The adjustments are in the range (-1 to 1), where 0 equals no adjustment. In the case of Hue, -1 or 1 equals a full rotation in either direction. In the case of Saturation, -1 is fully grayscale, and 1 is double the saturation of before.
CreateShadingColorNode
ColorNode describes a single color source node in a shading network
CreateShadingCosNode
This node describes cosine of the x,y,z,w components of the input.
CreateShadingCross3Node
This node describes the cross of the x,y,z components of the input.
CreateShadingCustomNode
CustomNode describes a custom shading node in a shading network. The output is produced based on customizable user specified operations. The custom node has a user specified amount of input parameters. Use SetInputCount() to specify the number of inputs. The user has to assign and implement event handlers (called observers) for the custom node to be able to evaluate to colors. See CustomNodeExample and API documentation for further explanations and code samples.
CreateShadingDivideNode
DivideNode describes a single division shading node node in a shading network. Input 1 is divided by Input 2 per-component to produce the output.
CreateShadingDot3Node
This node describes an dot of the x,y,z components of the inputs.
CreateShadingEqualNode
ShadingEqualNode describes an "is equal to" operator, where the per-component output is either 1 or 0 depending on if input0 is equal to input1. Basically, (Input0 == Input1) ? 1 : 0
CreateShadingFilterNode
FilterNode is the parent of all non-source nodes in a shading network.
CreateShadingGeometryFieldNode
Geometry field node describes a source node for geometry field data in a shading network, such as normals and tangents.
CreateShadingGreaterThanNode
GreaterThanNode describes the "is greater than" operator, where the per-component output is either 1 or 0 depending on if input0 is greater than input1. Basically, (Input0 > Input1) ? 1 : 0
CreateShadingInterpolateNode
InterpolateNode describes a single interpolating shading node node in a shading network. Input 1 and Input 2 is interpolated per-component using Input 3. Blend values below 0 and over 1 will be clamped.
CreateShadingLayeredBlendNode
LayeredBlendNode is a node with an arbitrary number of inputs that can be blended differently.
CreateShadingLessThanNode
LessThanNode describes the "is less than" operator, where the per-component output is either 1 or 0 depending on if input0 is LessThan to input1. Basically, (Input0 < Input1) ? 1 : 0
CreateShadingMaxNode
MaxNode describes a single max shading node in a shading network. The output has the per-channel max values of the two inputs.
CreateShadingMinNode
MinNode describes a single min shading node in a shading network. The output has the per-channel min values of the two inputs.
CreateShadingMultiplyNode
MultiplyNode describes a single multiplying shading node in a shading network. Input 1 and Input 2 is multiplied per-component.
CreateShadingNode
ShadingNode is the parent of all nodes in a shading network.
CreateShadingNormalize3Node
This node describes an normalization of the x,y,z components of the input.
CreateShadingNotEqualNode
NotEqualNode describes the "is not equal" operator, where the per-component output is either 1 or 0 depending on if input0 is equal to input1. Basically, (Input0 != Input1) ? 1 : 0
CreateShadingPowNode
This node describes an exponentiation. The output will be Input 1 to the power of Input 2, and it is calculated per-component.
CreateShadingSinNode
This node describes Sin of the x,y,z components of the input.
CreateShadingSqrtNode
This node describes a square root calculation. The output will be the per-component square root of input 1
CreateShadingStepNode
StepNode describes a single step shading node, where the per-component output is either 1 or 0 depending on if input0 is larger or smaller than input1. Basically, (Input0 >= Input1) ? 1 : 0
CreateShadingSubtractNode
SubtractNode describes a single subtracting shading node in a shading network. Input 2 is subtracted from input 1 per-component.
CreateShadingSwizzlingNode
SwizzlingNode describes a node that can remap the input to the specified output.
CreateShadingTextureNode
TextureNode describes a texture source node in a shading network.
CreateShadingVertexColorNode
VertexColorNode describes a vertex color source node in a shading network.
CreateShortArray
ShortArray is the short implementation of ValueArray. See ValueArray for a description.
CreateStringArray
StringArray is the string implementation of ValueArray. See ValueArray for a description.
CreateSurfaceMapper
ISurfaceMapper creates a mapping image between two user-defined geometries. The mapper basically looks for the source geometry in the inverse normal direction from the outwardly offset destination geometry, and maps pixels accordingly. This means that you can modify the normals of the destination geometry to adjust the search direction to your liking. The geometries can either be set as IGeometryDatas or as the root nodes of scenes. If both are set, the scene is used. If only a single source or a destination is set, or if the source and destination are the same scene or geometry, the surface mapper will map the mesh onto itself.
CreateTable
Table is the base class for tables objects, where items are added into an id-indexed array of objects.
CreateTangentCalculator
TangentCalculator calculates tangent vectors for geometry data objects. One corner field of texture coordinates must exist, as well as normals. The tangents are placed into two corner fields called "Tangents" and "Bitangents". If any of these fields already exists, it is replaced by the new field.
CreateTexCoordAdjuster
Adjusts texture coordinates to cover pixel centers.
CreateTexture
Texture describes a texture object, containing either image data or a path that is referenced by texture nodes in materials.
CreateTextureTable
TextureTable keeps information on textures used while rendering. Note that the table will make sure that the names of objects added are unique within the table, and will rename objects with non-unique names.
CreateTJunctionEliminator
Removes t-junctions by subdividing triangles and welding vertices
CreateTransform3
Transform3 handles homogeneous 4x4 transforms, i.e. transformations which can be represented by multiplying a 4x4 matrix with a homogeneous 3D coordinate. Transform3 can either pre-multiply a matrix onto the transformation, which will add a transform around the current transform, or it can post-multiply the matrix, which will add a transform inside the current transform. Post-multiply is the default mode.
CreateUnsignedCharArray
UnsignedCharArray is the uchar implementation of ValueArray. See ValueArray for a description.
CreateUnsignedIntArray
UnsignedIntArray is the uint implementation of ValueArray. See ValueArray for a description.
CreateUnsignedLongArray
UnsignedLongArray is the ulong implementation of ValueArray. See ValueArray for a description.
CreateUnsignedShortArray
UnsignedShortArray is the ushort implementation of ValueArray. See ValueArray for a description.
CreateUSDExporter
USD scene exporter
CreateUSDImporter
USD scene importer
CreateValueArray
ValueArray adds methods to arrays to generically add, set and get tuples, through real values.
CreateVertexColorCaster
VertexColorCaster.
CreateVertexColorCasterSettings
VertexColorCasterSettings is the interface for basic vertex color caster settings.
CreateVertexWeightSettings
This settings object contains all settings related to how the user-set weighting field "VertexWeights" is setup and used in different contexts. The values in the field can be considered an "importance" factor. Generally, weights set to 1.0 are handled normally, values >1.0 are given greater importance, and values <1.0 are given less. These weights can either be manually set in the input geometry data or converted from vertex color sets using the WeightsFromColor settings. See the documentation of the WeightsFromColorMode property to see the details of how color intensity is mapped to vertex weight. Vertex weights can be used to reduce more or less aggressively on different parts of the mesh, or used to scale UV allocation in the parameterizers to give more or less texture area to different areas.
CreateVisibilitySettings
Visibility settings contains the parameters for how to compute the visibility of a scene and how to use it, both in the ReductionProcessor and the RemeshingProcessor. The visibility information is computed for each part of the mesh determined by the visibility from the selected SceneCamera objects. Cameras are selected using the CameraSelectionSetID. The visibility can be used to guide the reducer and/or texture coordinates generator (parameterizer) with the flags UseVisibilityWeightsInReducer respective UseVisibilityWeightsInTexcoordGenerator. There is also an option to completely throw away triangles that are deemed not visible, using the CullOccludedGeometry flag.
CreateWavefrontExporter
Wavefront .obj geometry exporter.
CreateWavefrontImporter
OBJ scene importer
CreateWelder
Welds vertices within the geometry or scene together.
EnableLogToFile
Enable logging to default file (%SIMPLYGON_10_SHARED%\Simplygon.log).
EnableLogToFile
Enable logging to file of your choice.
ErrorOccurred
Check if any errors occurred.
GetErrorMessages
Get error messages.
GetVersion
Get the current version of Simplygon.
GetWarningMessages
Get warning messages.
WarningOccurred
Check if any warnings occurred.