wgpu/CHANGELOG.md

190 lines
6.4 KiB
Markdown
Raw Normal View History

2019-03-05 12:59:01 +00:00
# Change Log
2020-10-14 15:00:13 +00:00
## wgpu-core-0.6.5 (2020-10-14)
- fix setting the stencil reference on an incompatible pipeline
2020-10-05 18:46:52 +00:00
## wgpu-core-0.6.4 (2020-10-05)
- don't request device features that aren't needed
- fix texture depth == 0 checks
- fix the order of texture feature checks
2020-09-04 19:43:26 +00:00
## wgpu-core-0.6.3 (2020-09-04)
- fix group bindings that aren't related to the current pipeline
2020-09-02 20:37:12 +00:00
## wgpu-core-0.6.2, wgpu-types-0.6.1 (2020-09-02)
- fix flushing of temporary staging buffers (affects DX11 mostly)
- fix write-only stencil states
## wgpu-core-0.6.1 (2020-08-28)
2020-08-28 16:31:28 +00:00
- allow copying from `Depth32Float` textures
- fix usage tracking of read-only buffer storages
2020-08-28 15:43:42 +00:00
## v0.6 (2020-08-17)
- Crates:
- C API is moved to [another repository](https://github.com/gfx-rs/wgpu-native)
- `player`: standalone API replayer and tester
- Features:
- Proper error handling with all functions returning `Result`
- Graceful handling of "error" objects
- API tracing [infrastructure](http://kvark.github.io/wgpu/debug/test/ron/2020/07/18/wgpu-api-tracing.html)
- uploading data with `write_buffer`/`write_texture` queue operations
- reusable render bundles
- read-only depth/stencil attachments
- bind group layout deduplication
- Cows, cows everywhere
- Web+Native features:
- Depth clamping (feature)
- BC texture compression
- Native-only features:
- mappable primary buffers
- texture array bindings
- push constants
- multi-draw indirect
- Validation:
- all transfer operations
- all resource creation
- bind group matching to the layout
- experimental shader interface matching with Naga
## v0.5.6 (2020-07-09)
- add debug markers support
## v0.5.5 (2020-05-20)
- fix destruction of adapters, swap chains, and bind group layouts
- fix command pool leak with temporary threads
- improve assertion messages
- implement `From<TextureFormat>` for `TextureComponentType`
## v0.5.4 (2020-04-24)
- fix memory management of staging buffers
## v0.5.3 (2020-04-18)
- fix reading access to storage textures
- another fix to layout transitions for swapchain images
## v0.5.2 (2020-04-15)
- fix read-only storage flags
- fix pipeline layout life time
- improve various assert messages
## v0.5.1 (2020-04-10)
- fix tracking of swapchain images that are used multiple times in a command buffer
- fix tracking of initial usage of a resource across a command buffer
## v0.5 (2020-04-06)
2020-04-06 03:28:14 +00:00
- Crates:
- `wgpu-types`: common types between native and web targets
- `wgpu-core`: internal API for the native and remote wrappers
- Features:
- based on gfx-hal-0.5
- moved from Rendy to the new `gfx-memory` and `gfx-descriptor` crates
- passes are now recorded on the client side. The user is also responsible to keep all resources referenced in the pass up until it ends recording.
- coordinate system is changed to have Y up in the rendering space
2020-04-06 03:28:14 +00:00
- revised GPU lifetime tracking of all resources
- revised usage tracking logic
- all IDs are now non-zero
- Mailbox present mode
- Validation:
- active pipeline
- Fixes:
- lots of small API changes to closely match upstream WebGPU
- true read-only storage bindings
- unmapping dropped buffers
- better error messages on misused swapchain frames
## v0.4.3 (2020-01-20)
2020-04-06 03:28:14 +00:00
- improved swap chain error handling
## v0.4.2 (2019-12-15)
2020-04-06 03:28:14 +00:00
- fixed render pass transitions
## v0.4.1 (2019-11-28)
2020-04-06 03:28:14 +00:00
- fixed depth/stencil transitions
- fixed dynamic offset iteration
## v0.4 (2019-11-03)
2019-11-03 23:52:57 +00:00
- Platforms: removed OpenGL/WebGL support temporarily
- Features:
- based on gfx-hal-0.4 with the new swapchain model
- exposing adapters from all available backends on a system
- tracking of samplers
- cube map support with an example
- Validation:
- buffer and texture usage
## v0.3.3 (2019-08-22)
- fixed instance creation on Windows
## v0.3.1 (2019-08-21)
- fixed pipeline barriers that aren't transitions
## v0.3 (2019-08-21)
2019-08-21 04:05:02 +00:00
- Platforms: experimental OpenGL/WebGL
- Crates:
- Rust API is moved out to [another repository](https://github.com/gfx-rs/wgpu-rs)
- Features:
- based on gfx-hal-0.3 with help of `rendy-memory` and `rendy-descriptor`
- type-system-assisted deadlock prevention (for locking internal structures)
- texture sub-resource tracking
- `raw-window-handle` integration instead of `winit`
2019-11-03 23:52:57 +00:00
- multisampling with an example
2019-08-21 04:05:02 +00:00
- indirect draws and dispatches
- stencil masks and reference values
- native "compute" example
- everything implements `Debug`
- Validation
- vertex/index/instance ranges at draw calls
- bing groups vs their expected layouts
- bind group buffer ranges
- required stencil reference, blend color
## v0.2.6 (2019-04-04)
2019-08-21 04:05:02 +00:00
- fixed frame acquisition GPU waits
## v0.2.5 (2019-03-31)
2019-03-29 20:59:01 +00:00
- fixed submission tracking
- added support for blend colors
- fixed bind group compatibility at the gfx-hal level
- validating the bind groups and blend colors
## v0.2.3 (2019-03-20)
2019-03-20 14:44:25 +00:00
- fixed vertex format mapping
- fixed building with "empty" backend on Windows
- bumped the default descriptor pool size
2019-05-24 07:46:37 +00:00
- fixed host mapping alignments
2019-03-20 14:44:25 +00:00
- validating the uniform buffer offset
## v0.2 (2019-03-06)
2019-03-05 20:59:50 +00:00
- Platforms: iOS/Metal, D3D11
2019-03-05 12:59:01 +00:00
- Crates:
- `wgpu-remote`: remoting layer for the cross-process boundary
- `gfx-examples`: selected gfx pre-ll examples ported over
- Features:
- native example for compute
- "gfx-cube" and "gfx-shadow" examples
- copies between buffers and textures
- separate object identity for the remote client
- texture view tracking
- native swapchain resize support
- buffer mapping
- object index epochs
- comprehensive list of vertex and texture formats
- validation of pipeline compatibility with the pass
- Fixes
- fixed resource destruction
## v0.1 (2019-01-24)
2019-03-05 20:59:50 +00:00
- Platforms: Linux/Vulkan, Windows/Vulkan, D3D12, macOS/Metal
2019-03-05 12:59:01 +00:00
- Crates:
- `wgpu-native`: C API implementation of WebGPU, based on gfx-hal
- `wgpu-bindings`: auto-generated C headers
- `wgpu`: idiomatic Rust wrapper
- `examples`: native C examples
- Features:
- native examples for triangle rendering
- basic native swapchain integration
- concept of the storage hub
2019-03-05 20:59:50 +00:00
- basic recording of passes and command buffers
2019-03-05 12:59:01 +00:00
- submission-based lifetime tracking and command buffer recycling
- automatic resource transitions