Error
implementations- fix
ShaderStageFlags::ALL
- switch to explicit linking of "d3d12.dll", "d3d11.dll" and "dxgi.dll"
- switch to explicit linking of "d3d12.dll" and "dxgi.dll"
- all strongly typed HAL wrappers are removed
- all use of
failure
is removed - alternative swapchain model built into
Surface
Instance
trait is assocated byBackend
, now includes surface creation and destructionSurface
capabiltities queried are refactored,PresentMode
is turned into bitflagsPrimitive
enum is refactored and moved topso
moduleSamplerInfo
struct is refactored and renamed toSamplerDesc
- debug labels for objects
- improve external render pass barriers
- fix immutable samplers in combined image-samplers
- fix iOS build
- add
Instance::try_create
methods
- fix memory leaks in render pass and labels creation
- graphics pipeline state refactor
- no
winit
feature by default - events support
- more device limits are exposed
- Vulkan: fixed swapchain ranges, stencil dynamic states
- DX12: "readonly" storage support
- Metal: argument buffer support, real immutable samplers
- GL: compute shaders, new memory model, WebGL support, lots of other goodies
- optimize shader visibility of descriptors
- fix exposed MSAA capabilities and resolves
- fix image view creation panics
- fixed depth clip mode support, updates spirv-cross
Debug
implementations forInstance
- allow building on macOS for Vulkan Portability
- fixed memory leaks in render pass descriptors and function strings
Debug
implementations
- fix
VK_EXT_debug_utils
check at startup
- pipeline cache support
- rich presentation errors
- nicer specialization constants
Debug
implementations- consistent format names
- more limits
- surface alpha composition properties
- descriptor pool create flags
- removal of
FrameSync
- fixed buffer bind flags
- synchronization of disjoint CB across copy operations
- depth texture views
- typeless formats for textures
- fixed vertex buffer binding
- fixed non-array views of array textures
- secondary command buffers
- multiple iOS fixes
- fixed surface dimensions
get_fence_status
- dummy surface creation
gfx-hal
: graphics hardware abstraction layergfx-backend-*
: Vulkan, D3D12, D3D11, Metal, and GLrange-alloc
: helper struct to manage ranges- unsafe qualifiers on all the API methods
- non-clonable command buffers and resources