Skip to content

v1.141

Choose a tag to compare

@dzhdanNV dzhdanNV released this 23 Aug 06:47
· 685 commits to main since this release

HIGHLIGHTS:

  • added a new extension NRIResourceAllocator, which adds a simple way to create resources already bound to memory. Moreover, this extension uses AMD Vulkan/D3D12 MemoryAllocator under the hood, allowing to not only efficiently bind resources to memory chunks, but also track free memory segments, reusing them for subsequent allocations. Most likely, in the future this extension will get more MA functionality (statistics at least)

BREAKING CHANGES:

  • Core: MemoryAllocatorInterface renamed to AllocationCallbacks (similarly for memoryAllocatorInterface)
  • Core: DeviceDesc::memoryTier replaced with DeviceDesc::isMemoryTier2Supported
  • Raytracing: GetAccelerationStructureMemoryDesc made AccelerationStructure object independent
  • WrapperVK: GetVk* replaced with Get*VK to match the style

DETAILS:

  • NRI: added new extension NRIResourceAllocator, which allows to create bound-to-memory resources
  • NRI: alignment info grouped in one place in DeviceDesc
  • NRI: fixed NRI_STATIC_LIBRARY
  • Creation: exposed DeviceCreationDesc::disable3rdPartyAllocationCallbacks to use allocationCallbacks only for NRI needs
  • WrapperD3D12: removed unnecessary arguments
  • WrapperVK: removed unnecessary arguments
  • WrapperVK: minimized number of "mimic" types
  • Validation: tweaks and adjustments
  • introduced NRI_OPTIONAL to improve readability of main headers
  • bug fixes and improvements
  • improved comments in main headers
  • massive refactoring and code cleanup