mirror of
https://github.com/vulkano-rs/vulkano.git
synced 2024-11-22 14:56:42 +00:00
108 lines
5.9 KiB
Markdown
108 lines
5.9 KiB
Markdown
# Unreleased (Breaking)
|
|
|
|
- Export features and device extensions from the device module instead of the instance module
|
|
+ `instance::Features` -> `device::Features`
|
|
+ `instance::DeviceExtensions` -> `device::DeviceExtensions`
|
|
+ `instance::RawDeviceExtensions` -> `device::RawDeviceExtensions`
|
|
- Added `vulkano_shaders::shader!` proc macro, use this instead of `vulkano_shader_deriver::VulkanoShaders`.
|
|
- The entire `vulkano_shader_derive` crate is deprecated.
|
|
- `vulkano_shaders::{reflect, compile, Error}` are no longer public.
|
|
- Remove vulkano_shaders::build_glsl_shaders
|
|
- Removed mir support, as it is being removed from the vulkan spec.
|
|
- Split `PersistentDescriptorSetError::MissingUsage` into `MissingImageUsage` and `MissingBufferUsage`
|
|
each with a matching enum indicating the usage that was missing.
|
|
- Fix instance_count when using draw_index with instance buffers
|
|
- Added a `reinterpret` function to `BufferSlice`
|
|
- Made `AttributeInfo` derive `Copy`, `Clone` and `Debug`
|
|
- Use [google/shaderc](https://github.com/google/shaderc-rs) for shader compilation
|
|
- Reject generation of rust types for SPIR-V arrays that would have incorrect array stride.
|
|
- Removed the `Layout` prefix of the descriptions used for a render pass.
|
|
- Implemented DescriptorSetCollection for `Vec<T>` which allows easier use of construction them for usage when drawing.
|
|
|
|
# Version 0.10.0 (2018-08-10)
|
|
|
|
- Use dynamically loaded `libvulkan` like on other platforms instead of linking to MoltenVK on macOS
|
|
- Updated winit to version 0.17.
|
|
- Allow custom implementations of `RenderPassDesc` to specify `VK_SUBPASS_EXTERNAL` as a dependency source or destination
|
|
- Added `vulkano_win::create_vk_surface` which allows creating a surface safely without taking ownership of
|
|
the window.
|
|
- `AutoCommandBufferBuilder::draw` and friends no longer consume the `DynamicState` argument, allowing reuse between calls.
|
|
- `Instance::new` and `Instance::with_loader` now take in the layers as an iterator of borrowed `str`s, not of references to
|
|
borrowed `str`s.
|
|
|
|
# Version 0.9.0 (2018-03-13)
|
|
|
|
- Updated winit to version 0.11.
|
|
|
|
# Version 0.8.0 (2018-03-11)
|
|
|
|
- Changed `ShaderInterfaceMismatchError` to be more verbose.
|
|
- Allow depth/stencil images to be used with `AutoCommandBufferBuilder::copy_image_to_buffer()`
|
|
- Allow `Surface` to own the window it references.
|
|
- Clear value validation for `AutoCommandBufferBuilder::begin_render_pass()`
|
|
- Fix occasional truncation of glslang_validator when glsl-to-spirv is rebuilt
|
|
- Fix linking against MoltenVK >= 0.19.0
|
|
- Fix panic on DeviceLost error after resizing swapchain on nvidia/amd hardware
|
|
- Added `AutoCommandBufferBuilder::copy_image`
|
|
- Added `VulkanObject::TYPE` to look up the `DebugReportObjectTypeEXT` of an object
|
|
- Added `Device::set_object_name` and `Device::set_object_name_raw`
|
|
- Added `GraphicsPipelineBuilder::with_auto_layout` to simplify use of dynamic buffers.
|
|
|
|
# Version 0.7.3 (2018-02-10)
|
|
|
|
*Yanked*
|
|
|
|
# Version 0.7.2 (2017-10-09)
|
|
|
|
- Allow `impl_vertex!` to support generic structs.
|
|
- Added `GraphicsPipelineBuilder::with_pipeline_layout`.
|
|
- Fixed creating a buffer view not checking the `min_texel_buffer_offset_alignment` limit.
|
|
- Added support for loading the `VK_EXT_debug_marker` extension and adding debug markers to
|
|
`UnsafeCommandBufferBuilder`
|
|
- Changed `GraphicsPipelineBuilder` to default to a buffer-less vertex input.
|
|
- Deprecated `pipeline::input_assembly::InputAssembly`.
|
|
|
|
# Version 0.7.1 (2017-09-28)
|
|
|
|
- Fixed an HiDPI scaling issue on MacOS in vulkano-win.
|
|
- Fixed `le()` and `ge()` for `DescriptorsCount`, which also fixes a potential memory leak when
|
|
allocating descriptor sets.
|
|
- Fixed the `ordered_passes_renderpass!` macro not working properly when using `resolve`.
|
|
- Added an optional `resolve` entry in `pass` for `single_pass_renderpass!`, for resolving
|
|
multisampled attachments into non-multisampled attachments.
|
|
- Fixed the value of `rasterizationSamples` not corresponding to the render pass.
|
|
- Added `GraphicsPipelineBuilder::sample_shading_disabled`, `sample_shading_enabled`,
|
|
`alpha_to_coverage_disabled`, `alpha_to_coverage_enabled`, `alpha_to_one_disabled` and
|
|
`alpha_to_one_enabled`. Added `GraphicsPipelineCreationError::SampleRateShadingFeatureNotEnabled`
|
|
and `AlphaToOneFeatureNotEnabled`.
|
|
- Deprecated `pipeline::multisample::Multisample`.
|
|
|
|
# Version 0.7.0 (2017-09-21)
|
|
|
|
- Added `RuntimePipelineDesc`, an implementation of `PipelineLayoutDesc` that makes creating custom
|
|
layouts easier.
|
|
- Changed `CpuBufferPool::next()` and `chunk()` to return a `Result` in case of an error when
|
|
allocating or mapping memory.
|
|
- Changed `CommandBufferExecError::AccessError` to provide a hint of where the error occurs.
|
|
- Added `vulkano::pipeline::vertex::BufferlessDefinition` and `BufferlessVertices` to enable
|
|
bufferless drawing.
|
|
- Changed `ImageAccess::try_gpu_lock` and `unlock()` to verify whether the image layout is correct,
|
|
especially at the first usage of an image.
|
|
- Changed `BufferAccess::conflict_*` and `ImageAccess::conflict_*` to forbid querying a specific
|
|
range of the resource.
|
|
- Fixed `layers` argument validation in `Swapchain::new_inner`.
|
|
- Added a 32-bit word constructor for `ShaderModule` (`ShaderModule::from_words`).
|
|
- Changed the various `is_superset_of` functions to return a `Result` instead of a `bool`.
|
|
|
|
# Version 0.6.2 (2017-09-06)
|
|
|
|
- Added checking compatibility between the descriptor sets and the pipeline object when adding a
|
|
draw or compute command.
|
|
- Fixed several bugs in the validation checks of `blit_image`.
|
|
- Fixed `blit_image`, `copy_buffer_to_image` and `copy_image_to_buffer` not taking the mipmap level
|
|
into account when checking for the correct image dimensions.
|
|
- Added `ImageDimensions::mipmap_dimensions()` and `ImageDimensions::num_mipmaps()`.
|
|
- Added an implementation of `DeviceOwned` for `QueuesIter` and `Queue`.
|
|
- Fixed the standard command pool and descriptor pool being destroyed too often.
|
|
- Added `#[allow(non_snake_case)]` to structs generated by vulkano-shaders.
|