* Implement VertexDefinition for VertexBufferInfo, change Vertex signature to return VertexInfo and implement VertexInput-trait helper for Vertex to construct VertexBufferInfo objects from Vertex types. Updated teapot example to show usage.
* Reimplement BuffersDefinition leveraging VertexBufferInfo
* Reduce the amount of types required, remove VertexInfo, expose VertexBufferInfo methods on Vertex and use std HashMap transparently instead.
* Fix teapot example
* Fix outdated docs and use full path to Vertex trait to avoid issues
* Fix formatting of imports
* Remove clone and directly instantiate VertexInputBindingDescription.
* Rename VertexBufferInfo to VertexBufferDescription and being update of examples to use it
* Run cargo clippy fix to cleanup imports in examples
* Remove obsolete comment
* cargo fmt
* Refactor Vertex trait to not rely on ShaderInterfaceEntryType::to_format and instead rely on Format provided by VertexMember trait.
* Add test for impl_vertex macro, remove tuple implementations as they do not implement Pod, minor cleanups to impl_vertex macro.
* #[derive(Vertex)] proc-macro implementation with support for format and name attributes. Tests are implemented for both attributes and inferral matching impl_vertex macro
* Rename num_elements into num_locations to make purpose clear, add helper function to calculate num_components and check them properly in BufferDefinition's VertexDefinition implementation.
* Rename num_locations back to num_elements to make distinction to locations clear. Updated VertexDefinition implementation for BuffersDefinition to support double precision formats exceeding a single location.
* Add additional validation for vertex attributes with formats exceeding their location.
* Collect unnecessary, using iterator in loop to avoid unnecessary allocations.
* Use field type directly and avoid any form of unsafe blocks.
* Match shader scalar type directly in GraphicsPipelineBuilder
* Rename impl_vertex test to fit macro name
* Add VertexMember implementatinos for nalgebra and cgmath (incl matrices).
* Add missing copyright headers to new files in proc macro crate
* Document derive vertex with field-attribute options on the Vertex trait
* Add example for vertex derive approach.
* Do not publish internal macros crate as it is re-exported by vulkano itself
* Deprecate impl_vertex and VertexMember and update documentation for Vertex accordingly
* Make format field-level attribute mandatory for derive vertex
* Update all examples to derive Vertex trait instead of impl_vertex macro
* Fix doctests by adding missing imports and re-exporting crate self as vulkano to workaround limitations of distinguishing doctests in proc-macros
* Use actual integer bitflags for Vulkan bitflag types
* Fix doc tests
* Fix Fence and Semaphore on Win32 and Fuchsia
* Add macro for bitflags that have a corresponding enum
* Fix bug
* Bring vertex input in line with other pipeline state, reorganise modules
* Documentation improvement
* Use ShaderInterfaceEntryType in shader interface instead of format
* Example fix
* Move shader parsing and information extraction to Vulkano, make available for runtime shaders
* Small change
* Add new pipeline stages to match shader stages
* Fix review issues
* Add extra dynamic state commands to the command buffer builders
* Add TessellationState
* Re-enable InputAssemblyState, add dynamic state, update Ash
* Rework depth_stencil module, add dynamic state
* Rename module raster > rasterization, add dynamic state
* Replace DynamicStateMode with bool, replace Option with StateMode enum for potentially dynamic states, rename Blend > ColorBlendState, add dynamic state
* Re-enable MultisampleState
* Re-enable ViewportState, add state to GraphicsPipeline with retrieval methods, add dynamic state
* Add builder methods for state types
* Color blend improvements
* Further checks on input assembly dynamic state
* Add color_write_enable
* Add topology class, check that it matches
* Add line_stipple
* Move some builder code to the individual state types
* Add discard rectangles
* Trim down GraphicsPipelineCreationError variants, order alphabetically
* Remove Send + Sync and BufferAccess traits where they are redundant
* Require Send + Sync for ImageViewAbstract
* Require Send + Sync for ImageAccess, AttachmentsList and MemoryPoolAlloc
* Require Send + Sync for DescriptorSet and DescriptorPoolAlloc
* Require Send + Sync for FramebufferAbstract
* Minor rearranging
* Require Send + Sync for PrimaryCommandBuffer, SecondaryCommandBuffer and CommandPoolAlloc
* Require Send + Sync for Command (private trait)
* Cargo fmt