# Release notes for older Simplygon versions

# Version 8.3

  • Stable Features
    • Scene Merge (aka in UE4 as StandinActor) in advanced UE4 integration
    • Support for Max 2020
    • Support for Maya 2018 in new Maya v2 plugin
    • Further licensing system improvements
    • Performance improvements
    • Reduced geometrical and shading errors for flat high-specular objects
  • Preview Features
    • New remeshing processor
    • New faster Maya plugin
    • New flexible & distributable processing architecture

# Version 8.2

  • Features
    • New folige processor
    • Automatic update system SimplyUpdate
    • Exposing more settings in Simplygon UI
  • Bugfixes
  • Performance improvements

# Version 8.1

  • Additions to the API -ImageComparer: New tool for comparing renders of LODs (or anything else really) to ge a difference metric. Suitable for automatic testing.
  • Changes to the API
    • Visibility: No longer requires DirectX binaries or graphics hardware.
    • Parameterizer: New parameterizsation algorithm, generally much better results.
    • AggregationProcessor: Triangles using tiled textures can now be subdiveded along the UVs to get much better aggregated textures at the cost of higher triangle counts.
    • AggregationProcessor: Visibility support.
    • AggregationProcessor: Better handling of input texture chart aspect ratios.
    • RemeshingProcessor: Increased performace when remeshing certain types of objects.
    • OcclusionMeshProcessor: Visibility support.
    • OcclusionMeshProcessor: Support for skinning transfer.
    • OcclusionMeshProcessor/ShadowMeshProcessor: These have been multithreaded to a larger extent than earlier, so larger target sizes are possible. Still requires DirectX.
    • ShadowMeshProcessor: Improved results, but still not 100% guaranteed conservative at lower sizes.
  • Bugfixes

# Version 8.0

  • Additions to the API
    • Remeshing: It is now possible to set a clipping geometry, which can be used to perform boolean operations on the process geometry. Like clipping plane, but using geometry.
    • Remeshing: MergeBoldness setting added to control the agressiveness of the merging set with MergeDistance. Defaults to 0.5, set to 1 to replicate old behavior.
  • Breaking API changes
    • Materials: Materials and textures can now only be defined by using shading networks, the old legacy material system has been removed.
    • MaterialCasters: The IsSRGB flag has been removed and replaced with the OutputSRGB flag, to better correspond with its actual function when using node-based materials.
  • Bugfixes

# Version 7.1

  • Additions to the API
    • Aggregation: Chart aggregation now support per-vertex weights for texture sizing.
    • Remeshing: AllowTransparencyMapping flag in the mapping image settings now allows for low-res remeshings to correctly map transparency to the areas of the texture that should recieve it. For example, a fence remeshed into a solid "wall" gets 0 opacity in between original individual boards.
    • Remeshing: You can now get a selection set containing the generated geometry output by the remesher, in complex scenes it was a bit hard to know where exactly it ended up.
    • Visibility: Support for orthographic cameras
    • Visibility: Added PixelFOV setting to regulate the precision of perspective cameras.
    • Visibility: Added OrthographicPixelSize setting to regulate the precision of ortho cameras.
    • Visibility: Added setting for culling not only invisible triangles, but also triangles that don't cast shadow to anything, for shadow mapping purposes.
  • Experimental/Beta Additions to the API.
    • Reduction: Added curvature importance.
    • OcclusionMeshProcessor: New processor for generating occlusion meshes for culling passes.
    • ShadowMeshProcessor: New processor for generating shadow meshes for cheap shadow mapping. Very early state, not recommended.
  • Changes to the API
    • All: More settings have been made availible to allow fields to be set by name rather than by id.
  • Bugfixes

# Version 7.0

With this major release we've taken the opportunity to streamline the API a bit, and hence some old flags and settings have been removed. All old functionality remains.

  • Additions to the API
    • Scene: SelectionSets added. With these, you can selectively process only a subset of a specific scene. Each scene contains a SelectionSetTable, which in turn SelectionSets can be added to. These are references to nodes in the scene.
    • Scene: Plane nodes added. You can now define planes in the scene, and these planes can be used as cutting planes in the remeshing processor, optionally using selectionsets to only use specific planes.
    • Scene: SelectNodes functions for quickly generating selection sets.
    • Scene: CreateChild functions added to SceneNode, for example: node->CreateChildMesh(geometryData). This streamlines scene creation.
    • Scene: Functions for combining all geometry in the scene into a single GeometryData are now availible, optionally using a SelectionSet to only combine a subset of geometries.
    • Processors: You can now define a ProcessingSelectionSet to selectively process a subset of the input scene.
    • Reduction: Overhaul of reduction targets and stop conditions. Now supports any combination of the four supported target types: Triangle count, triangle ratio, max deviation and onscreen size.
    • Reduction: Updated geomorph support for completely seamless LOD switches.
    • Remeshing: Now supports multiple and non-axis-aligned cutting planes
    • Remeshing: New EmptySpaceOverride setting enables remeshing of house interiors and caves.
    • BoneReducer: Processing settings overhauled to better correspond with reduction processor settings.
    • Welder: Previously only part of reduction processor, now made publicly accesible.
  • Changes to the API
    • Processors: All processors (ReductionProcessor, RemeshingProcessor, AggregationProcessor, ImpostorProcessor) now only take scene inputs.
    • Aggregation: SceneAggregator renamed to AggregationProcessor. Settings for chart aggregation moved to MappingImageSettings.
    • Reduction: The FeatureFlags settings have been removed, from now on only use the Importance settings.
    • Reduction: The EnablePreProcessing and EnablePostProcessing settings have been removed. Settings for the individual elements are still availible.
    • All: Some settings have been renamed to better align with our naming convention.
  • Significant optimizations to reduction and remeshing processors
  • Bugfixes

# Version 6.2

  • New API tools
    • ImpostorProcessor : Processor which generates a billboard impostor geometry and mapping image based on a original geometry from a specific viewing angle. Example added.
    • SurfaceMapper : Tool which creates a mapping image between two user-defined geometries, enabling material casting. Example added.
  • New API Features
    • RemeshingProcessor : Added a setting for surface transfer mode, which can speed up processing at the cost of quality.
    • ReductionProcessor : Geomorph functionality added - Now possible to create a blended geometry for smooth LOD-transitions. Data for blending not only Vertex positions, but also normals, UVs, bones etc.
    • MaterialCaster : All material casters now support setting FillMode, ie. what to do with gutter space in the cast textures.
    • Parameterizer : Overhaul to Parameterizer, now generates better charts
  • Breaking API changes
    • NormalCaster : The old UseNearestNeighbor flag has been replaced by the FillMode option.
  • General bugfixes

# Version 6.1

  • New Additions to the API
    • Breaking Changes to API spShadingTextureNode : SetTextureLevel & SetTexturePath has been removed. Use spTexture and spTextureTable instead.
    • Texture Table and Textrue Object. (Simplygon Shading Network)
    • CusotmShadingNode with callback
    • Bake Texture Data to Vertex Color
    • Preserve/Reuse UVs when doing material lod.
    • Reduction base on triangle count.
    • GUI support for reading custom simplygon shading networks.
  • Maya
    • Added Maya 2015 plugin support.
    • New script methods:
      • Utility method to get camera distance from pixel size.
      • Utility method to get pixel size for camera distance.
      • Setup Simplygon Shading Networks
  • Max
    • Added Max 2015 plugin support.
    • Baked texture to vertex data.
    • New scirpts method added:
      • Change the postfix on simplygon generated LOD.
      • Utility method to get camera distance from pixel size.
      • Utility method to get pixel size for camera distance.
      • Setup Simplygon Shading Networks
  • General Bug fixes

# Version 6.0

  • New API Features
    • New Normal Calculator with significantly improved normal handling in the reducer.
    • Support for Multiple Mapping Images and Multi Material Output while casting.
    • Support for Automatic symmetry detection.
    • Improved atlas packing and parameterization when generating tex-coords.
    • New Processor (MeshCombiner / Aggregate LOD)
  • Other New Features:
    • GUI : Visibility aided triangle reduction
    • GUI : Visibility aided MaterialLODs
  • General Bug fixes

# Version 5.5

  • New API Features:
    • Ability to create and hook shading networks.
    • HLSL Code generation from shading network
  • Other New Featues:
    • MayaPlugin: Selection Sets (Edge Loops) are supported
    • MayaPlugin: Selection Sets (Edge Loops) visualization in Simplygon GUI
    • Edge Loop Feature Importance
    • Material LOD: Material Replacement
    • User / Visibility weighting for UV's.
  • Drag & Drop Settings Files into GUI
  • General bug fixes

# Version 5.3

  • Decal Remover
  • Blend Shape Support in Maya
  • New Max and Maya script functions
  • General bug fixes
    • Intel HD Graphics card support added

# Version 5.2

  • Optional merge distance in ProxyLOD
  • Opacity Caster
  • Improvements to Softimage Plugin
  • Max added support to map custom names to DXShaderSearch
  • General Bug fixes

# Version 5.1

  • New and improved next generation material caster
  • Massive speedup with multicore support
  • New and impoved Normal Caster and Normal calculator
  • Updated API documentation
  • General Bug fixes

# Version 5.0

  • Added feature SmartImprove
  • Added feature RepositionVertices
  • Added Softimage 2013 support
  • Original normal casting in ProxyLOD
  • Geomorph data generation
  • Updated API documentation
  • Added DataCreationPreferences support in MeshLOD
  • Breaking changes:
    • Updates to GUI interface settings, some settings have been moved

# Version 4.5

  • Selectable image file output formats in GUI (.png, .tga, .jpeg, 8/16 bits)
  • Maya 2013 Extension (2013.5) support
  • Maya Attribute Support
  • 3dsMax explicit normal support

# Version 4.4

  • Next-gen mesh support for 256 UV & Color channels, and skinning support for 16 bones per vertex
  • 3dsMax DirectX Shader material import support
  • Vertex Illumination support in 3dsMax plugin
  • MaterialID visualization in GUI
  • GUI rendering shortcuts added
  • FPS camera in GUI

# Version 4.3

  • Vertex weights paint tool added
  • 3dsMax 2013 plugin added
  • Multi-layer texture support in Maya plugin
  • Improved MeshLOD symmetry support
  • Bone visualization in GUI
  • Modified weights import in Max/Maya plugins

# Version 4.2

  • Added skinning support when generating proxy meshes
  • Added new parameterizer as default parameterizer, adds speed ups and more robust processing
  • General speed ups of reducer, in some cases up to 3 times the performance

# Version 4.1

  • Added symmetry-aware reduction
  • Added cascaded LOD creation (where each LOD is based on the previous LOD)
  • Added skinning support in ProxyLOD (API)
  • Added intro screen with links to tutorials/features of Simplygon
  • Maya 2013 plugin

# Version 4.0

  • Added BoneLOD to reduction
  • Alpha texture sampling in color caster
  • Per-vertex reduction weighting
  • Full scripting support in Max/Maya
  • New fade transition in GUI (Using multisampling and A2C)
  • BoneLOD support in Max/Maya
  • LOD pop comparison mode in GUI
  • Maya Batch mode support
  • Settable sRGB support in casting
  • Support support for custom casting channels
  • Support for multiple texturing in material casting
  • Support for up to 8 texture and 8 vertex color channels in reducer
  • Support for any number of custom channels

# Version 3.5

  • New Max & Maya plugins, with full skinning and vertex color support.
  • FBX support
  • A new Scene Graph API is added
  • Added color and skinning support in reducer
  • Added IImageData interface support to IMaterial descriptor
  • General bug fixes in GUI
  • Fixed vertex normal issues in Maya
  • Fixed multithreading issue in ProxyLOD processing
  • Fixed GUI camera up axis issue
  • Fixed memory leak issues
  • Fixed UV/Color set crash issues in Maya
  • Added IImageData interface to material descriptor
  • Added vertex color casting in material caster
  • Added vertex locking in 3dsMax
  • Added visualizing locked vertices in GUI
  • Fixed some memory leaks
  • Fixed a bug in the remeshing example
  • Added an option to choose up-axis in GUI
  • Fixed FBX issues with Material LOD
  • Breaking changes in API:
    • IMaterialCaster no longer has SetGeometry/GetGeometry. This information is included in the IMappingImage data.
    • IGeometryGroup is marked as deprecated, and will be removed in a future release
    • IGeometryCollection is marked as deprecated, and will be removed in a future release

# Version 3.0

  • The previous separate processing parts have been merged into logic processing objects
  • A new material caster interface has been added
  • Added support for tangent space normal maps, and tangent/binormal calculation.
  • Modified OBJ to accept and ignore some bad-formed Wavefront files
  • 3dsMax-plugin adds normal calculations with automatic hard angles.
  • Added testing to disallow 180-degree foldovers in geometries.

# Version 2.9

  • Improved texture mapping in remeshing
  • New GUI with support for multiple LOD outputs
  • Stability updates

# Version 2.8

  • Added 3ds Max-plugin:
    • Utility plugin, supports reducing multiple selected objects.
    • Supports skinning information (preserves skinning data).
    • Full source code included.
    • Binary for 3dsMax 9-2010 (32-& 64-bit) included.
  • Added support for projecting vertices to lower levels of detail.
  • Added support for collapse history.
  • Added flag for keeping corner data within groups.
  • Optimized small object removal tool.
  • Added Geomorph example.
  • Updated all examples to the 2.8 API.

# Version 2.7

  • New, easier GUI interface
  • New, faster reducer
  • Combined metrics, use Triangle count and/or MaxDeviation
  • Tangent space calculator
  • Optional insignificant objects removal
  • Highres-to-lowres mapping, connects triangle/coordinate on low to triangle/coordinate on high.
  • Various bug fixes.

# Version 2.5

  • Added remeshing.
  • Added progressive meshes.
  • Added parameterization.
  • Added more examples.
  • Remove COLLADA example.
  • Fixed export of Wavefront object files.
  • Various bug fixes.

# Version 2.2

  • Added example projects
  • Added SDK Users Guide.
  • Solved a problem with the Wavefront object exporter in the GUI.
  • Added support for vertex lock channel.
  • Added texture rendering to the GUI.
  • Improved the reducer.
  • Added new wrapping code for the SDK.
  • Added recalculation of tangents when exporting COLLADA files.

# Version 2.1

  • Added GUI example.
  • Optimized export of COLLADA filesversion 2.5
  • Added remeshing.
  • Added progressive meshes.
  • Added parameterization.
  • Added more examples.
  • Remove COLLADA example.
  • Fixed export of Wavefront object files.
  • Various bug fixes.