v0.7.1-alpha1
Pre-release
Pre-release
·
912 commits
to master
since this release
What's Changed
New Features
- Github CI now tests Examples which are not added with
EXCLUDE_FROM_ALLto the meta-example project IGeometry,IPolygonGeometryclasses- Polygon Geometry can be used with Asset Converter from day one
CGeometryCreatormaking basic geometries like cubes, cones, disks, etc.IGeometryLoaderbase class (Mesh loaders are back!)- PLY Geometry Loader
- Mitsuba Serialized Geometry Loader
- CAD Example can now do Digital Terrain Models and display isolines and heightshading on tringular and grid meshes
- Precompile your Shaders to SPIR-V using NSC (with all our STL headers) and also as a CMake command!
- Precompile Shader Permutations with different JSON generated Device Capability Traits (we also have C++ autogen utilities that let you resolve the keys to them depending on device capabilities)
- Normal and Quaternion quantization caches done with our HLSL types
CGeometryManipulatorstub, more functionality from deprecatedMeshManipulatorto come- finished the
AABB.hlslshape - added transform, union and intersect functions which can be specialized for shapes in the HLSL library
Removals
IRenderpassIndependentPipelineIMeshandIMeshBufferMeshPackers V1 and V2, we encourage programmable pulling from BDA now
Improvements
- made the
refctd_memory_resource::allocateanddeallocatevirtual so they can be overriden (the STD::pmr didn't make sense here) - created a
adoption_memory_resource - most of
algorithm.hlslalso compiles as C++ Host code - Builtin resource and PCH improvements
- LRU Cache and Doubly Linked List Container improvements for resizability etc.
- Replaced Parallel Hashmap with Greg's Template Library as the submodule
- skip duplicate validation for SPIR-V optimizer
- Updated DXC
- Boost-Wave Shader preprocessor now its own Translation Unit, can be always compiled with optimizations (so even Debug builds don't take minutes preprocessing the input to DXC)
- target SPIR-V version is now a shader preprocessor option (because of
__SPIR_V_MAJOR__and friends) fast_affine.hlslfor doing mathematical abominations like multiplying 3x4 matrices with 3x1 vectors as if they're padded 4x4 and 4x1- cofactor and fast inverse HLSL utilities (useful for nice fast normal matrix calc)
IUtilitieshas acreatefactory which can fail if it can't allocate the amount of HOST_VISIBLE memory you requested- split
MonoAssetManagerAndBuiltinResourceApplicationinto two classes alPreviousStagesandallLaterStagessync utlitity functionsemulated_vectornow haslength_helperspecialization, andinversesqrtforemulated_float64- constexpr
findLSBvariant - 3x3 matrix from quaternion HLSL utility
Bugfixes
DeferredFreeFunctoractually tested and works now- AccelerationStructure::validBuildFlags infinite recursive call
- Shader compiler
adopt_memorytypo - keep boost-wave compile options consistent and encapsulate/don't leak it
Full Changelog: v0.7.0-alpha1...v0.7.1-alpha1