Skip to content

v0.7.0

Compare
Choose a tag to compare
@NotAPenguin0 NotAPenguin0 released this 19 Apr 20:38
· 151 commits to master since this release

Major features

  • Add first-class support for VK_KHR_acceleration_structure
  • Add first-class support for VK_KHR_ray_tracing_pipeline
  • Add first-class support for VkQueryPool objects and a couple common queries.
  • Implement the log-objects feature to log all vkCreate... and vkDestroy... calls
  • Major simplifications to library initialization with helper methods.

Changes

Breaking

  • Extract pass executor type into a trait
  • Rename PassBuilder::execute to PassBuilder::execute_fn, the old method still exists but now takes any PassExecutor instead of a function type.
  • Pass executors now get a mutable reference to some user data passed in at record time
  • Simplify lifetime of pass executor callback
  • PipelineCache now takes an Allocator to construct (this is necessary to create a shader binding table for RT pipelines).

Non breaking

  • Add resolve_and_bind_storage_image to command buffer
  • Add write_storage_image and read_storage_image to pass builder
  • Implement Send and Sync for PipelineCache
  • Add IncompleteCommandBuffer::push_constant to upload a single value instead of a slice