Simplygon 10 Release Notes
Simplygon 10.2.11500.0
Bug fixes
- Fix for custom string fields on scenes and geometries causing crashes when run through some processors
- Fixed crash when importing TIFF images with unexpected metadata formats
- Fixed minor spelling errors in docs
Simplygon 10.2.10100.0
Improvements & changes
Grid
- A failed grid job will now by default retry 3 times before it is considered as failed job.
- Added new input arguments to SimplygonGridAgent.exe: -MaxJobs, -LogVerbose and -LogClient. See grid settings for more information.
- Added new global settings: GridAgentDiscoveryDelay, GridRetryLimitForFailedJob, GridAgentBalancerJobTolerance, GridEnableAgentIpSorting, GridOverloadedTimeout and GridEnableVerboseLogging. See grid settings for more information.
Unreal Engine
- Updated UE5 python helper file (in plugin's content folder) to be without warnings and easier to read.
Documentation
- Updated Unity remeshing with material baking scripting example with correct method call to set texture width
Bug fixes
- Fixed bug which prevented very large arrays from being written to disk correctly.
Grid
- Addressed the hangs and stability issues of discover requests when the CPU load was high. This also fixed the problem of missing some agents during discovery.
- Fixed mDNS crash when there are high amount of discover requests.
- Successful local fallback processing should no longer throw exception when a grid job has failed.
Simplygon 10.2.8400.0
New features
Unreal Engine
- Added support for Unreal Engine 5.3.
Unity
- Added support for Unity 2022.3.11 LTS.
Billboard cloud processor
- Tight fitting impostors with minimal overdraw (controlled with GeometricComplexity). The billboard cloud processor now reads the input opacity map and allows interior holes in the impostor geometry to closely follow the subject.
Improvements & changes
Grid
- Agents versions must now match the client SDK version in order for the agent to be available for distribution. The agent will still show up when running -Discover.
Unreal Engine
- Weld spGeometryData if 'HardEdge' attribute in FMeshDescription has hard edges.
- Removed support for Unreal Engine 5.1.
Bug fixes
- Run parameterization if no TexCoord field matching LightmapTexCoordLevel and LightmapTexCoordName is found.
- Fixed a bug in the Gltf importer where multi-primitive geometries did not get the geometry name set
Grid
- Fixed false positive Found unknown sub-info errors.
- Fixed an issue where the agent could get stuck reading mDNS queries that were retransmitted between subnets. This put -Discover in a state where it could not find this agent.
- Fixed an issue where the fallback flag was not properly respected when, for example, an ongoing batch process on agents was manually terminated.
- Fixed an issue where the Vulkan status was reported incorrectly when running the agent as a service.
Unreal Engine
- Fix Clipping plane visualization, now all axes have a green and a red side which will switch when changing the Halfspace setting.
- Fix for LOD Recipe commandlet crashing when using -OnlyStaticMeshes or -OnlySkeletalMeshes flags.
- Fix for Skeletal meshes not getting dirtied when LOD Recipes are built.
- For 5.x versions: Fix for Stand-In pipelines not being possible to reach or change through python.
Unity
- Fix for URP/HDRP hlsl shortcircuit parsing error.
Documentation
- New and improved documentation for the Unreal Engine 5 plugin.
- Added figure captions
- Figures are now centered
- Styled info boxes
Simplygon 10.2.5200.0
New features
ComputeCaster
- ComputeCaster now supports externally built shaders, for workflows which reuse shaders a lot
Ambient Occlusion Caster
- New setting FlipBackfacingNormals can be used to generate more consistent occlusion sampling directions for assets with inconsistent input normals when used with RemeshingProcessor.
Improvements and changes
Remeshing processor
- Clipping geometry algorithms reworked to be more conservative and consistent.
Quad reduction processor
- Fixed bug that caused field discontinuities after some collapses.
Grid
- Improved agent utilization when distributing pipelines asynchronously. Grid jobs should now be better balanced between agents.
- New global setting: BatchLogPath. Useful when you want check SimplygonBatch log when executing pipelines in
RunInNewProcess
orRunDistributedUsingSimplygonGrid
- New global setting: GridLoadLimit. Use it to limit agent(s) maximum load limit.
- New global setting: GridDiscoverTimeout. The time SimplygonBatch waits before presenting agents found during
-Discover
Documentation
- Added image captions and image zoom capability
- Minor spelling error fixes
- Added HDRP article to getting started in Unity section
- Updated supported features table with URP and HDRP support in Unity
Maya
- Added Maya 2024 support (without the new Standard Surface Material).
- Added Reflectivity material channel support for standard materials.
Bug fixes
- Fix for doubled suffix when flattening cascaded scene and exporting to FBX.
- SgPipelineBatch QueueFile should assert on nullptr or empty paths.
Flipbook processor
- Fixed issue where flipbook processor wasn't using the correct texcoord level set in the mapping image settings.
Grid
- Fixed an issue where the environment variable
SIMPLYGON_10_GRID_IFINDEX
was not being properly respected in certain scenarios.
FBX
- Fix to avoid creating bind poses for static meshes
Unreal Engine
- Fixed Flipbook shader issues where the normal was wrong whenever the up-vector and view direction were non-perpendicular to each other.
- Unreal Engine 4.27: Fix plugin code generating unnecessary warnings.
Blender
- Fix for blender glTF add-on refactoring that caused crash.
Unity
- Fix for handling broken root joint exported from Unity to USD.
Known issues
Grid
- Breaking Change: Updating the agent to this version without updating the client SimplygonSDK will make the agent unusable for distribution.
- When agent is started it produces an error saying that IPv6 address was not found, so the agent won't listen to any traffic on IPv6. However, the agent does still run normally using IPv4.
Simplygon 10.2.400.0
New features
Remeshing processor
Added settings:
- RemeshingSettings::PopulateAttributeTesselationDisplacement
- RemeshingProcessor can now populate floating point vector displacement attribute tesselation fields, as set up by AttributeTessellationSettings, with displacement to the original mesh, without doing any sort of post process cast to texture and baking the texture into the displacement fields.
- AttributeTessellationSettings::AttributeTessellationDensityMode::OnScreenSize
- New mode for density in the attributetessellation settings where every tessellated sample gets max edge length ~2 pixels, making the actual triangles take up ~1 pixel on screen.
- APipelineSettings::ApplyAttributeTesselation
- Pipelines can now apply the attribute tessellation generated by the processors before export.
- RemeshingSettings::PopulateAttributeTesselationDisplacement
Major back-end tech rework of RemeshingProcessor.
- Significantly lower memory consumption at larger OnScreenSizes.
- Significantly faster processing at larger OnScreenSizes.
- Known limitation
- RemeshingMode::INSIDE is currently not fully implemented - Always selects center of mesh as "Inside" point instead of intelligently finding it. Will be fixed in coming updates.
AttributeTessellation displacement integration with RemeshingProcessor
- Generate tessellated displacement directly in the processor which can be exported as GLTF micromesh textures or applied to the mesh to create a densely tessellated output mesh.
- Automatic conversion from floating point displacement to scalar displacement to be able to seamlessly export micromesh. Exporting GLTF with populated displacement fields will also export the micromesh texture by default.
Billboard cloud processor
- Added FoliageSetting: "SeparateFoliageMaterials" which lets the user specify the names of the materials that should be processed as foliage and replaced by impostors.
NormalCaster
- Added setting: "Flip Backfacing Mode". If FlipBackfacingNormals setting is checked, this new setting decides which source normal we should compare the destination normal with when deciding if the normal is back-facing or not. Changing this from the default "Pixel Normal" to the new mode "Face Normal" can be beneficial for two-sided assets like leaves that can get weirdly flipped pixel normals with the default setting. Mostly beneficial when using the Flipbook processor.
FbxExporter
- Added setting: "ImportFilePath". Path to the imported FBX file used for processing. If set the contents of the file are merged with the processed scene and exported.
- Added setting: "FlattenCascadedScene". If enabled the cascaded scenes are flattened in depth first order. Name clashes are removed by prefixing with _LOD[Index]. Where index is index of the scene after flattening.
SceneExporterPipelineSetting
- Added setting: "ImportFilePath". Path to the imported FBX file used for processing. If set the contents of the file are merged with the processed scene and exported.(Only valid for FBX files)
- Added setting: "FlattenCascadedScene". "If enabled the cascaded scenes are flattened in depth first order. Name clashes are removed by prefixing with _LOD[Index]. Where index is index of the scene after flattening.(Only valid for FBX files)
PipelineSetting
- Added setting: "MergeResultWithImportedFileOnExport". If enabled import file information is passed to the scene exporter for merging the contents of the import file into the resulting exported file. (Only used by FBXExporter)
- Added setting: "FlattenCascadedScene". If enabled the cascaded scenes are flattened in depth first order. Name clashes are removed by prefixing with _LOD[Index]. Where index is index of the scene after flattening. (Only valid for FBX files)
Unreal Engine
- Added support for Unreal Engine 5.2.
Improvements & changes
ComputeCaster
- Added Vulkan dynamic descriptor allocations in to replace the set limit
- Support for discard/clip in ComputeCasting
- Now correctly detects if a shader runs past the kernel timeout
Unreal Engine
- Added support for specifying the parent material for LODs when material baking is enabled (LODRecipe and StandIns) (UE 5.1+).
- Added "Separate Overlapping Charts" setting to LODRecipe and StandIns (UE 5.1+).
- Updated UI for enabling Simplygon for the different reduction/proxy interfaces.
- Pipeline settings have been sorted to follow the same sort order as the other UIs.
- Removed support for UE 5.0.
Unity
- Simplygon is now delivered as a Unity package.
- Added support for Unity 2021 and 2022.
- Added support for Universal Render Pipeline(URP) (See limitations/knownissues in documentation).
- Added support for High Definition Render Pipline(HDRP) (See limitations/knownissues in documentation).
- Removed support for Unity 2019.
Python
- Python modules in Simplygon installation folder are now fully operational modules which can be referenced directly using PYTHONPATH.
Blender
- ImposterFromSingleView Up/View (+Y,-X) vectors reflects GLTF export used by the plugin rather than blender viewport.
Installer/zip
- Added link to documentation in root of installation folder/extracted zip folder.
Documentation
- Improved documentation on how to run Simplygon in a container
- Added an example: "RemeshingWithDisplacementTessellation" to demonstrate using direct displacement generation and tessellation in the remesher.
- Updated documentation look and feel
Bug fixes
Unreal Engine
- Fix issues where processing errors were passed to the FailedDelegate and not logged. This could cause issues if Simplygon processed mesh was completely culled away.
- Removed non-supported MergeGeometries flag for aggregation.
- Removed several unnecessary expanders in UI.
- Fixed a few issues that generated warnings.
Maya
- Fixed custom channel and texture layer related issues.
- Fixed crash issue in Maya when having multiple -mt textures.
Max
- Fixed mishandling of n-polys in Quadreduction.
Core library
- Fixed a VMA memory allocation bug
- Now ignores Coords alternative field name in EvaluationShader, since there is always only one Coords field.
- Now supports 4bpp palette PNGs
- ReTable now check for name conflicts and unnamed nodes
- Chart aggregator now gives more specific error messages
- Fixed empty geometries causing crashes in Remeshing
Installer
- Accessibility bug fixes and improvements
License application
- Accessibility bug fixes and improvements
Known Issues
Unreal Engine
- The Flipbook material shader currently only have full support for a view direction and an up-vector that is perpendicular to each other. This will be fixed in an upcoming release. Please see UE documentation for more information.
Simplygon 10.1.11000.0
New features
Flipbook processor
- Added PivotAroundOrigin setting which rotates the flipbook around the origin of the object instead of its center, to make the switching of views look more like the original (at the cost of texture waste in proportion to how off-center the origin is).
Improvements & changes
API
Importer
- glTF importer now allows unnamed nodes, and autogenerates a name if missing.
- glTF importer now imports all materials before importing nodes, as to keep order of unnamed materials in sync.
Exporter
- USD exporter now support face varying interpolation.
ComputeCaster
- Texture arrays can now be accessed either as an arrays of Texture2Ds, or as Texture2DArray in shader code.
Parameterizer
- Added guard against zero-area triangles raising division-by-zero exceptions.
Flipbook processor
- Tangentspace has been changed so that it expresses the tangentspace from each view instead of from the first view (from setting: ViewDirection) only.
- Fixed FlipBackfacingNormals option.
- Fix for non-perpendicular view direction and up-vector setups being reset to default.
Billboard cloud processor
- Fixed "maintain leaf connections" for geometries with non-connected triangles (especially useful for Blender/Unity).
Interface header now links faster. Modified Simplygon header to call GetProcAddress in a loop rather than explicit calls, to improve users' link times.
Fix issued with D3D check when calling from multiple threads.
Maya
- Fixed custom channel and texture layer related issues
- Fixed crash issue in Maya when having multiple texture overrides (-mt)
Unreal Engine
- Add optional opacity mask multiplier depending on distance for billboard cloud base material (higher value at a distance to make the lod appear more dense).
- Add optional wind parameter for billboard cloud base material.
- Support for new flipbook pivot around origin setting in flipbook base material.
- Fix Geometry data caster issue for billboard clouds.
- Fix issues where processing errors were passed to the FailedDelegate and not logged. This could cause issues if Simplygon processed mesh was completely culled away.
Simplygon Grid
- Fix issue where SimplygonBatch.exe got stuck waiting for agent to respond
- SimplygonBatch.exe and SimplygonGridAgent.exe now has a timestamp in the log
Simplygon 10.1.8000.0
New features
API
ComputeCaster
- MaterialEvaluationShaderSerializer now accepts a full input scene .xml file, including additional textures, custom fields and all materials in one file.
- MaterialEvaluationShader now has support for:
- Shader header code, to define custom structs
- Binding custom structs to custom fields
- Separate samplers and textures
- Binding multiple textures as an indexable array of textures
AttributeTessellation
- AttributeTessellation can now be exported as compressed Micromesh data. This can be enabled and controlled in the GLTFExporter
Unity
- Added support for UV2-UV4.
BillboardCloudProcessor
- Added FoliageSetting: "MaintainLeafConnections" which keeps connected geometry as still connected when projecting to billboards.
FlipbookProcessor
- Added settings: "NumberOfColumns" and "NumberOfViews" that replaces "NumberOfViews", allowing the user to set atlas layouts that are not square.
- Added setting: "FlipRowColumnOrder" which toggles the order of the views in the atlas.
- Added setting: "OverrideFlipbookTextureWidth" which lets the user set an arbitrary explicit total width for the entire flipbook atlas.
- Added setting: "OutputEachViewSeparately" which outputs the MappingImage for every view in the flipbook instead of in a joint atlas.
Improvements & changes
API
- FBXImporter now allows material shaders in .fbx files, and will make a best effort to parse the data in the material.
- Improved bind pose handling in FBX.
- Coords bindings in ComputeCaster now ignores FieldName when binding the Coords field, and does not error out if it is set.
Installer
- Vulkan SDK is no longer installed with the Simplygon installer and needs to be installed separately.
Documentation
- Added container section with information about how to run Simplygon in a container.
BillboardCloudProcessor
- Fixed separation of trunk and geometry for geometries with non-connected triangles (especially useful for Blender/Unity).
Unity
- Material node reference removed from scene hierarchy in processed LOD.
- LOD index will now automatically increase by one for every earlier processing with the same name found.
Bug fixes
API
- Regression fix: The core library now (again) accepts 1, 4 and 8 bpp images with palettes
Unreal Engine
- Various updates to the flipbook material to fix issues with rendering and rotations (around z-axis). Note: Up-vector is still not supported in the material.
- Update textures in billboard cloud material from grayscale to linear grayscale.
- Fix issue with simplygon output log file not always being written out.
- Fixed several material mapping issues for / related to:
- StandIn and LODRecipe
- Static- / skeletal mesh
- Reduction, aggregation
- Material baking
- Sparse material ids
- Unordered material ids
- Re-used material ids
- Foliage
Unity
- Fixed issue when processings sometime failed when using camera selection sets.
- Fixed issue where processings would fail due to name being too long.
Houdini
- Simplygon package JSON file name fix.
BillboardCloudProcessor
- Fixed crash when no triangles were projected to billboards due to their small size in relation to BillboardDensity.
Simplygon 10.1.3300.0
Improvements & changes
ColorCaster
- ColorCaster no longer clamps float texture input data to the 0->1 range.
Installer
- Modifying the current installation using the full installer (downloaded installer exe) will now restore missing files to installation directory.
- Modifying the current installation using either the full installer or by modifying Simplygon from Add/Remove Programs in Windows now restores missing start menu entries.
- Vulkan SDK is no longer automatically installed when running installer in command-line mode. Read more in the Basic headless installation section.
Max & Maya
- Batch import tool in UI now support pipeline files (*.json).
Unreal Engine
- Pipe errors and warnings coming from Simplygon processing to UE output log.
- Add option to output Simplygon log to Saved/Logs/ folder.
- Change where simplygon saves it's mesh reduction config. It is now saved in Config/DefaultEngine.ini.
License application
- Added possibility to export license in License application.
Documentation
- Added advanced license instructions to documentation.
Bug fixes
API
- Remeshing processor
- Fixed bug in RemeshingProcessor where multiple intersecting clipping geometries caused triangle artifacts inside what should have been clipped space.
Max
- Fixed issue with QuadReductionProcessor where n-polys were not being handled correctly.
Unreal Engine
- Now refreshes the stand-in outliner when deleting a stand-in actor in the scene (no more dangling objects) (UE5 only)
- Fix Ambient Occlusion caster casting to diffuse material property.
- Fix for flipbook vectors not taken into account.
FBX
- Vertex color alpha is now imported correctly in FBX.
- Fixed crash due to skeleton-bone mapping in FBX.
Simplygon 10.1.400.0
New features
API
- ComputeCaster
- A new material caster which uses a Vulkan based backend, and supports user-generated HLSL or GLSL shaders to cast any data in the scene, combined with any side-band loaded data from e.g. custom material graphs etc. For CPU-only workflows, a CPU-based Vulkan implementation can be used.
- New types for compute based casting
- MaterialEvaluationShader
- MaterialEvaluationShaderSerializer
- MaterialEvaluationShaderAttribute
- MaterialEvaluationShaderAttributeTable
- MaterialEvaluationShaderDefine
- MaterialEvaluationShaderDefineTable
- ShaderEvaluationFunction
- ShaderEvaluationFunctionTable
- ShaderParameter
- ShaderParameterSampler
- ShaderParameterSamplerState
- ShaderParameterTable
- MaterialCasterSource
- New types for compute based casting
- A new material caster which uses a Vulkan based backend, and supports user-generated HLSL or GLSL shaders to cast any data in the scene, combined with any side-band loaded data from e.g. custom material graphs etc. For CPU-only workflows, a CPU-based Vulkan implementation can be used.
Unreal Engine
- Support for Unreal Engine 5.1.
- Add option to let users use the original source mesh data.
Python
- Support for Python 3.11
Improvements & changes
API
Scene now has methods for retrieving result MaxDeviation and ProcessedMeshesRadius custom fields which are populated after running processors. This data can be used to calculate LOD switch distances.
QuadReductionProcessor now has all reduction targets disabled by default when creating a new processor. Previously 'Ratio' was enabled by default which caused confusion when enabling something different and not explicitly disabling 'Ratio'.
FBX importer and exporter now support skinning data
Improved logging and safeguards, with lots of more explanations to errors
Added methods to return extents of a selection set in the scene
USD importer now support face varying attributes
RemoveSceneNodes will clear bone table and selection set table.
AttributeTessellation
- Displacement data cast to tessellated attributes are now output to glTF using the NV_micromaps and NV_displacement_micromap extensions, along with latest version of .bary file format for micromaps.
QuadReductionProcessor
- The quad reducer now supports reduction of triangulated mesh components when using reduction targets OnScreenSize or MaxDeviation.
ReductionProcessor
- Added setup method to select between AllFeatures or HighPerformance modes, which only allows settings which are compatible with full multithreaded reduction processing.
RemeshingProcessor
- Added settings to fine-tune geometric and topological accuracies
HighDensityMeshReducerProcessor and -Pipeline
- A new processor and pipeline which is memory and performance optimized for high-density mesh assets (e.g. from scan-sources or sculpting tools)
Unreal Engine
- Improve error messages coming from Simplygon API.
Maya
- Added attributes 'SceneMeshesRadius' and 'ProcessedMeshesRadius' to output mesh, to allow more flexibility in switch distance calculations
- Quad reduction default reduction target changed to "OnScreenSize"
- Added support for Maya 2023.
Max
- Added attributes 'SceneMeshesRadius' and 'ProcessedMeshesRadius' to output mesh, to allow more flexibility in switch distance calculations
- Quad reduction default reduction target changed to "OnScreenSize"
- Added support for Max 2023.
- Added additional errors/warnings to the UI for the importing of baked materials.
Simplygon Grid
- Grid agents availability is now based on version and Vulkan capabilities.
- Improved log output when running -Discover
Installer/SimplyUpdate/Uninstall
- Updated Installer, SimplyUpdate and Uninstall to use .NET 6.
Documentation
- Documented manual Blender plugin installation.
- Clarified modular seams not supported by cascaded pipelines.
- Added Quad reduction to supported feature table.
- Document missing support for Maya 2020.0.
- Ability to bake out 16K textures.
- Improved docs for USD package installation
Bug fixes
API
ReductionProcessor
- Fixed output MaxDeviation field on Scene being updated incorrectly in some rare cases and reported incorrect values.
- Fixed crash when running cascaded reductions with Modular seams enabled.
QuadReductionProcessor
- Fixed problem where UVs and other fields could be updated incorrectly by some collapses
- Reduced instances of some types of topology stalling the reducer
- Many general quad-related bugfixes
RemeshingProcessor
- Fixed issue which ignored the values of the GenerateMappingImage and GenerateTexCoords settings
BillboardCloudProcessor
- Fixed crash when running Billboard cloud without normals on the asset.
AttributeTessellation
- Changed order of quantization of neighbor edges to avoid zero-area tessellated geometry
Impostor UI Template
- Fixed missing settings for billboard cloud Basic template
Python
- Fixed issue with None not being accepted as a null object pointer
Unreal Engine
- Fixed crash when using remeshing pipeline with no material casters.
- Fixed failing pipelines when vertex color casters were added.
- Fixed issues that could result in broken uvs and / or unnecessary uv borders.
- Fixed issue where baked materials stacked up in original asset's material list.
- Disabled post-removal of null material entries as it can break material mapping.
- Fixed crash issue in stand-in memory calculation.
- Added missing WhitelistPlatforms/PlatformAllowList in uplugin.
Maya
- Fixed Reflected Color channel not being handled.
- Fixed issue where maya integration would fail to import baked textures when scripting via the simplygon api.
- Fixed issue that caused certain errors generated to not be reported.
Max
- Fixed issue where max integration would fail to import baked textures when scripting via the simplygon api.
- Fixed issue that caused certain errors generated to not be reported.
- Fixed issue with sgsdk copy flag being ignored.
- Fixed issue with Emissive flag not being correctly handled.
- Added handling of invalid material textures.
SimplyUpdate/Uninstall
- Fixed issue where SimplyUpdate.exe/Uninstall.exe failed to start because .NET Desktop Runtime could not be found.
Documentation
- Cleaned up Unity install documentation.
Simplygon 10.0.6800.0
New features
API
- Added support for exporting Attribute Tessellation displacement data into NVidia Micromesh compatible glTF file with external .bary displacement file.
Max
- Added support for Max 2023.
Maya
- Added support for Maya 2023.
- Added support for channel Reflected Color to the Maya plugin.
Blender
- Blender 3.3 support (in preview)
Improvements & changes
- Improvements to the hole filling functionality in the Remeshing processor.
Bug fixes
API
Quad reducer
- Fixed bug which made it impossible to turn off welding.
- More consistent handling of VertexWeights for reduction.
- Fixed some corner field data tracking incorrectly through collapses, causing discontinuities.
Fix - Missing properties when deep copying SceneNode
Fix - Missing properties when deep copying SceneBone
Unreal Engine
- Fix for crash when generating standin in unsaved level.
- Fix for undo not working as it should for standins.
- Hide BillboardMode combo box in Standin Outliner since only one option is supported.
Documentation
- Fix typos.
Simplygon 10.0.4600.0
New features
- QuadReductionProcessor now supports welding. Enable or disable using QuadReductionSettings::UseWelding.
Improvements & changes
UE
- DebugPath in Plug-in settings now opens a FolderPicker instead of FilePicker.
- Fixed issue in StandIn Outliner where parent objects did not get removed after deleting multiple children.
- Fixed crash issue in StandIn Outliner when removing a StandInMeshActor that did no longer point at an SubActor.
- Removed QuadReductionPipeline from UI.
Max
- Fixed issue that prevented textures to get exported using sgsdk_ExportToFile (with copy-texture flag).
- Fixed Emissive channel to be correctly handled.
- Material nodes now handle invalid textures and reports warnings.
- Fixed issue related to Morpher writeback when using AllowUnsafeImport-flag.
Documentation
- Updated with Simplygon 9 upgrade information.
Bug fixes
API
- Fix to Python wrapping code, so SetUserData now accepts a list of data
- Fixed a regression in the texture shading node, which did not update transformations correctly.
- Scene::Append now handles duplicate textures correctly when appending scenes with identical texture names.
- VertexWeightSettings now works more as expected with QuadReductionProcessor. Vertex colors can now be used for reduction weighting.
- Fixed some broken log messages.
Simplygon 10.0.1400.0
New features
API
Modular seams, enabling gapless reduction between modular assets
Support for quad reduction
- Feature overview
- Quad support in GeometryData by linking adjacent triangles with the new QuadFlags triangle field.
- FBX importer/exporter populates and uses the QuadFlags field to import and export quad geometry data.
- OBJ importer/exporter populates and uses the QuadFlags field to import and export quad geometry data.
- USD importer/exporter populates and uses the QuadFlags field to import and export quad geometry data.
- Quads that pass though the triangle-based processors are maintained when possible, but will convert to triangles as required by mesh modifications and reduction operations.
- Triangles which are marked as part of quads are automatically quadrangulated on export.
- GeometryData::ValidateQuadFlags() can be used to check the validity of user-set quad flags.
- Quad reduction processor and pipeline
- New processor/pipeline that works on structured quad meshes and collapses entire strips of quads at a time.
- Appropriate for LOD0 reductions as structured input -> structured output.
- Settings for basic reduction targets; Ratio, Count, MaxDev, OnScreenSize
- Limitations
- May stop reduction ahead of reduction target if no more acceptable collapses are found.
- Does currently not behave well on unstructured quad meshes, works best on authored content with regular topology.
- Primarily tries to remove quads in geometry with mixed polygon types, and ignores triangles unless they are adjacent to quads.
- Count and Ratio reduction targets will include triangles in stop condition calculation.
- VertexWeights are not supported. The field must be removed completely from the geometry as it being present leads to unpredictable behavior.
- Vertex welding is not yet supported.
Tessellated Attributes in API
- Added support for per-triangle implicitly stored tessellation of attributes in geometries. Supported by all processors, casting opacity and displacement (scalar or full vector displacement data)
- VDM (Vector Displacement Maps) floating point maps (.tiff & .exr formats) can be imported and injected into displacement data in tessellated attributes
Max
- Added support for quad export and import
- Added support for QuadReductionPipeline
- Added Simplygon 9-10 migration guide
Maya
- Added support for quad export and import
- Added support for QuadReductionPipeline
- Added Simplygon 9-10 migration guide
License updates
- New license type "Standard" added which is more resilient to license server outage.
Improvements & changes
Distribution
- Improved container support
- In container environments, Simplygon will fallback to CPU if GPU is not available.
API
Import/export
- General N-gon polygon faces are automatically triangulated, and quad information is kept on import.
- Added support for .exr file format input
- Full support for importing, casting and exporting floating point texture data (in .tif and .exr file formats)
- FBX exporter automatically compresses attribute fields using IndexToDirect.
- RunImport and RunExport are renamed to Run and now returns EErrorCode, to harmonize with processors.
Scene data
- Scene nodes now always generate guids for unique look up
- Added BrightnessContrast and ColorCorrection nodes to shading network
- Texture, material, bones and selection set tables now enforce unique names when adding or setting items.
Error handling
- Error handling now supports recoverable errors in extension to the regular (unrecoverable) errors.
- Recoverable errors from processors, importers and exporters are returned as EErrorCode enum values.
Documentation
- Clarified what features are supported in what integrations.
Bug fixes
Unreal Engine (4.27)
- Fixed issue with incorrect casting of vectors.
- Fixed plugin compilation issue when not compiling for TargetPlatform Win64 Editor (i.e PS4)
- Replaced FRunnables with ThreadPool to relax thread contention when running many assets.
- Added baking of GeometryDataTextures
- Fixed issue with vertex colors not being preserved when using IMeshReduction interface.
- Fixed crash issue to avoid creating name lookups if there are no materials present.
- Fixed issue with material ids end up incorrectly after using geometry culling on near pipeline.
- Fixed issue with imposter material missing texture coordinate samplers
- Fixed issue with incorrect uv's being used on the baked material for billboard cloud vegetation when trunk is separated.
Unreal Engine (5.0)
- Fixed issue with incorrect casting of vectors.
- Fixed plugin compilation issue when not compiling for TargetPlatform Win64 Editor (i.e PS4)
- Replaced FRunnables with ThreadPool to relax thread contention when running many assets.
- Added baking of GeometryDataTextures
- Fixed issue with vertex colors not being preserved when using IMeshReduction interface.
- Fixed crash issue to avoid creating name lookups if there are no materials present.
- Fixed issue with material ids end up incorrectly after using geometry culling on near pipeline.
- Fixed issue with imposter material missing texture coordinate samplers
- Fixed issue with incorrect uv's being used on the baked material for billboard cloud vegetation when trunk is separated.
Python API
- Renamed Simplygon python module to simplygon10
Breaking changes
- RemeshingLegacyProcessor (deprecated in 9) has now been removed.
- DirectXRenderer has been removed.
- CurvatureImportance has removed.
- DetectEdgeNeighbours has been renamed/replaced with "DetectEdgeNeighbors".
- Getter and Setter for IsFrozen on spSceneNode have been removed.
- RunImport and RunExport method have been removed. They have been replaced with Run instead. Return type is not an enum instead of a bool. Helper methods are provided to cast to book for failure and success.