Changelog
All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
3.8.0 (2022-01-06)
Features
- integrated zea-cad (f73b6a8)
Bug Fixes
- TreeItem now correctly exports the visibility state value. (d69e4ad)
3.7.0 (2021-12-06)
Features
- Exported new types for use in Custom Properties (Vec2_32si, Vec2_32ui, Xfo_32f) (d5812fb)
Bug Fixes
- Cleaned up unreliable detection of non-uniform scale. (396c355)
- Geom hashing now avoids matching geoms of different types. This addresses and issues where a lines and a mesh have the same number of points and every other property is the same. (c709a9b)
- Inverting an Xfo with non-uniform scale now correctly rotates the scale values. (dda2d24)
3.6.1 (2021-11-02)
Bug Fixes
- False positives in the Geom hashing in the GeomLibrary let to cracks and incorrect geoms being assigned in the zcad file. (00e89de)
3.6.0 (2021-10-06)
Features
- The engine now supports exporting zcad files that contain non-orthogonal and uniform scaling within the tree. (0f0f737)
Bug Fixes
- Bodies containing multiple similar materials did not optimize correctly. (e57edfa)
- During export, bounding box calculation code to filter unused vertices caused a performance issue resulting in long pauses exporting large meshes. This has now been addressed. (06ad102)
- Fixed bug causing GeomLibrary hashing to miss cases where geoms were identical. (59acd38)
- Quat.setFromMat3 is now more relaxed about detecting orthogonality, as it was throwing false negatives. (9211231)
3.5.2 (2021-08-13)
Bug Fixes
- Bounding box calculation now filters out non-indexed points. This ensures the bounding box tightly frames on the actual rendered geometry. (70323bb)
3.5.1 (2021-07-23)
Bug Fixes
- During export GeomItem now calculates the precise bounding boxes in global space, and then back transforming them into the space of the GeomItem. (d28f2ff)
- Geometry compression makes more iteractions and more accurately compresses geometries with higher precision settings. This addresses issues where edges would display jaggies when loaded in the browser. (d66d3c3)
- Geometry hashing more thoroughly checks if geometries match. (b4d152c)
- To address false positives in geometry comparisons, GeomLibrary now takes an explicit 'tolerance' value. (870daad)
3.5.0 (2021-07-16)
Features
- add constructor to FilePath taking a std::experimental::filesystem::path so that it is possible to pass a fully constructed path. (b961f14)
- Added support for StringList property. A property that stores an array of strings. (617088f)
- Implmeneted Mesh.setFaceVertexIndex to modifiy the stored mesh topology. (6458c40)
- kmeans compression now adapts the number of clusters during compression to achiever the best balance of quality over efficiency. (5c99fae)
Bug Fixes
- Addressed issue normalizing geometries which were 2 point lines on certain orientations. (57e276f)
- Addressed warning message when encoding files using relative file paths, (9b62598)
- Cleaned up regressions on Linux in FileSystem::currentWorkingDirectory and FileSystem::changeCurrentWorkingDirectory. Reverting back to previous implementation. (92d9d67)
- FilePath now uses the std::filesystem::path as its internal representation instead of std::string. This provides better support for internationalization of filenames and paths. (a0300be)
- ZeaArchive code to cleanup old files reverted back to previous implementation that uses just the filename. (292d96d)
3.4.1 (2021-04-27)
Bug Fixes
- path concatenation now works when the path contains multi-byte characters. (fb62267)
3.4.0 (2021-04-19)
Features
- Any TreeItem can now be optimized, where the subtree is reduced to a single geometry when possible. (d11d5bb)
- Geometries support more types of Vertex Attributes (SInt32, SInt32, Float32.... Needed by SimStream) (23d3c56)
- GeomLibrary now uses an acceleration structure to speed up adding many geoms to the library. (f3fa436)
Bug Fixes
- ZeaArchive now correctly finds the archiver.exe if it is in the current folder or parent folder. (97560c5)
3.3.0 (2021-02-12)
Features
- Cleaned up Fbx Parser. Now Fbx files are parsing again. (47b4891)
- GeomItem now export Geom BoundingBox so that we can build the bounding box tree before the geom is loaded. Required to support streaming geoms. (83f26c0)
- GeomLibrary now generated a JSON file along with the binary geom files during export. (6521c49)
- ZeaArchive files now take an optional 'opts' argument for specifying compression params. (009916b)
Bug Fixes
- FilePath concatenation now automatically adds a separator to the parent path if none already exists. Addresses issues where an invalid path was generated. (75ffe50)
- Fixed crash parsing files where names were not unique, and included a string of numbers at the end of the name. (d15a9bf)
- Improved geom hashing on regular meshes. Increases hashing efficacy by up to 90% (6617a2e)
- the EXPORT_FLAG_EMBEDGEOMS flag was being erroneously checked. (d2821f6)
2.0.0
Bug Fixes
- Fixed issues with merging lines and points geometries.
1.1.0
Features
- addition of edges to the description of each CAD body.
- Implemented higher precision surface trimming implementation that reduces artifacts on holes, especially in corners.
Bug Fixes
- Addressed bugs addressed relating to the processing of curves.