* Move descriptor_set.rs to parent, make descriptor.rs its child
* Rename UnsafeDescriptorSetLayout to DescriptorSetLayout, as there isn't actually anything unsafe about it
* Make fixed_size_pool and persistent modules public, reduce number of re-exports from there
* Split off pool.rs from sys.rs
* Move std_pool module to pool::standard
* Make sys public, remove re-exports
* Move descriptor module and DescriptorSetDesc into layout module
* Move ShaderStages to pipeline::shader
* Make descriptor_set::collection module private
* Documentation
* Don't enable any features in examples unless the example requires it
* More elaborate device selection code in the triangle example
* Better device selection for all other examples
* Migrate to using Ash as a base
* Small change to test, to make it applicable to Vulkan 1.1
* Auto-generate extensions, check extension requirements
* Add documentation to extensions, use vk.xml from Ash 0.32.1
* Remove `RawDeviceExtensions` and `RawInstanceExtensions`
* Add extension conflict checking
* Small fix
* Add auto-generated features, more requirements checks
* Features documentation
* Macrofy required_if_supported_extensions
* Include vulkano-gen tool
* Move autogen imports to macros
* Change autogen into a build script
* Delete leftover file
* Autogenerate device properties
* Propagate bugfix in properties chain to features
* Allow choosing the Vulkan max API version when creating Instance
* Rewrite feature handling, include all Vulkan 1.1 and 1.2 features
* Fixes
* Move features.rs to device module
* More small fixes
* Changelog
* Convert trait `ShaderInterfaceDef` into struct `ShaderInterface`
* Convert some instances of PipelineLayoutDesc to RuntimePipelineDesc
* Use regular Vec for now
* Convert PipelineLayoutDescUnion to RuntimePipelineDesc
* Convert PipelineLayoutDescTweaks to use RuntimePipelineDesc
* Remove PipelineLayoutDesc trait, replace with what used to be RuntimePipelineDesc
* Remove PipelineLayoutAbstract trait
* Fix bug
* Provide value for push constants to entry point instead of type
* Remove GraphicsEntryPointAbstract, allow pipelines without fragment shader
* Move descriptor::pipeline_layout to pipeline::layout
* Small changelog addition
* Fix bug
* Create generic render pass description type, macro generates that instead of making its own type
* Replace EmptySinglePassRenderPassDesc with empty() constructor
* Remove RenderPass type parameter
* Remove RenderPassAbstract trait, type parameters that use it. Add GraphicsPipelineAbstract::subpass and Framebuffer::render_pass
* Remove RenderPassDescClearValues trait
* Remove RenderPassSubpassInterface and RenderPassCompatible traits
* Change RenderPassDesc into a struct
* Rename framebuffer module to render_pass, move/rename other things
* Rustfmt + changelog
* Documentation update
* Rename Dimensions > ImageViewDimensions, ViewType > ImageViewType
* Remove cubemap_compatible from ImageDimensions, add ImageCreateFlags to UnsafeImage creation
* Replace various UnsafeImage features/usage methods with new ones that return them directly
* Create image::view module, move view-related types into it
* Create safe ImageView type, remove some of the validity checks from UnsafeImageView
* Removed ImageViewAccess::samples and moved the descriptor_set_* functions to ImageAccess
* Remove ImageViewAccess::dimensions
* Impl ImageAccess for ImageView, remove impl on image types
* Rename ImageViewAccess to ImageViewAbstract, move some methods around
* Remove ImageViewDimensions (formerly Dimensions)
* impl Error for ImageViewCreationError
* Missing pub
* Typo
* Some small documentation changes
* Check for ImageCreateFlags that are currently not properly supported
* Implement caching for GraphicsPipeline
Added the method build_with_cache to set an Option that holds an Arc
containing a PipelineCache. This could probably be optimized to just
hold a vk::PipelineCache(u64) and start with a vk::NULL_HANDLE and
set the value to the internal_object of the PipelineCache. Using the Arc
is probably safer for now, but it is an idea.
* Add changes to the CHANGELOG
* Added a cache option to the ComputePipeline
This is a breaking change as there is no ComputePipelineBuilder and the
cache has to be added in the new function and the underlying functions
that build the ComputePipeline.
This needs to be discussed.
* Document the cache feature for the ComputePipeline
* Formatting with cargo fmt
* Remove outdated documentation
* Added testing for the PipelineCache
Checking that the cache returns the same data if the get_data method is
invoked twice without building a new pipeline.
Checking that the cache returns the same data if the same pipeline is
built two times with the cache.
Checking that the cache returns different data if there is a different
pipeline built in between the get_data calls.
* Create an example for the PipelineCache
* Formatting
* Move SubpassContents to command_buffer module, use it as parameter type instead of bool, add RenderPassState internally
* Add some safety checks to execute_commands
* Move Kind and related types to top-level module, add CommandBuffer::kind trait method, keep Kind value in AutoCommandBuffer(Builder)
* Some minor code cleanup
* Documentation update
* add additional ImageUsage constructors
* update examples to use ImageUsage::color_attachment instead of caps.supported_usage_flags
* fix additional usage in multi-window example
* update ignore to not include mandelbrot.png and triangle.png
* update ignore to not include mandelbrot.png and triangle.png
* implement exclusive fullscreen
* fullscreen ext should be device ext
* add acquire/release
* require VK_KHR_get_surface_capabilities2
* fullscreen_exclusive is now an enum; explicit acquire/release methods added; FullscreenExclusiveError added to handle errors; FullscreenExclusiveLost varients added to acquire and present related errors
* add checks for double acquire/release; require AppControlled for acquire/release functions
* update examples and tests; resolve issue with try_gpu_lock() on SwapchainImage; update changelogs
* Decoupled descriptor sets from pipeline
* Fixed error in unit test
* Fixed more
* Forgot a file
* I think it works now. Don't mind me, I'm new
* Fix new example that got added
* add changelog entry
* remove unnecessary parentheses from previous merge
* Derive PartialEq for DescriptorDesc and added examples
* Added an example
* Example improvements
* Formatting issue
* Added Swapchain::with_old_swapchain() and integrated ColorSpace into Swapchain::new()
* Updated Changelog
* More docs and small improvement
* Added Swapchain::surface
* Version change
* Allowed surface creation with winit >= 0.20
* Latest winit version
* Migrate to latest winit
* Migrated all examples to the latest winit version
* Version increment
* Formatting change
* Removed trailing white space
* Corrected method calls
* Missing _ in OSX methods
* Minor version change
* Minor version change
* hooked up dynamic state to the synamic stencil values
* added validation, removed introduced whitespace
* comments
* updated changelog
* updated examples
* appeasing the CI