* Accept `#[rust_gpu::spirv()]` attributes rather than `#[spirv()]` in backend
* Implemented `#[spirv(..)]` proc macro attribute for all platforms that conditionally translates to `#[rust_gpu::spirv()]` based on platform
* Changed `SpirvBuilder` to always apply `register_tool(rust_gpu)` attribute to shader crates
* Updated docs
* Added changelog
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* (cargo-release) version 0.4.0-alpha.13
* Updated versions in local dependencies as well
* Split out a new `-types` crate so `spirv-builder` stops loading LLVM via dylibs.
* example-wgpu-runner: halve `max_push_constant_size` so it works on RADV/Fiji.
* Enable Vulkan for WGPU runner
Metal doesn't support SPIR-V shader passthrough, so on macOS using WGPU runner you get following error with any example:
```
Features SPIRV_SHADER_PASSTHROUGH are required but not enabled on the device
```
Vulkan supports shader passthrough, but requires compatibility layer of MoltenVK to work, which needs to be installed on the host machine. Currently this feature is only available on master.
* Update examples Cargo lockfile
* Fix example-runner-ash
Fix compile_shaders() to return correct shader name.
* Refactor example-runner-ash
- Stop to get shader name from path. It was too complicated.
This works simply by naming the binary crate
anything other than the name of the lib, which is example-runner-wgpu
As far as I know, the warning started in
https://github.com/EmbarkStudios/rust-gpu/pull/215
Since there is only one binary crate in the package, the command
(`cargo run -p example-runner-wgpu --release`)
maintains the same behaviour
The cargo issue is https://github.com/rust-lang/cargo/issues/6313
This warning caused problems for me in testing
https://github.com/Lokathor/bytemuck/pull/67
since I didn't notice the warning that my patch was not applied
* Clean up the interface of the watching support
This allows us to avoid the seperate thread just for looping through
the graphics rx to the eventloop, for example
In almost all cases, intial results are blocked on the first result, and
then needs notifications for later changes
* Fix test failures
* fmt
* Remove the comment again
* Update builder to use a shared validation method
* Add the error for using print_metadata and watching
We cannot use print_metadata with watching
because print_metadata only makes sense
in build scripts, but watching does not
and would instead stall the script
* Add the initial implementation of watching
* Make hot reloading work in the wgpu example
* Attempt to address CI failures
* Add exception for notify CC0-1.0 license
* Address review comments
Co-authored-by: khyperia <github@khyperia.com>
* Reduce CI times
* Reduce RUSTUP_UNPACK_RAM
* Set RUSTUP_IO_THREADS=1
* Include https://github.com/EmbarkStudios/ash-molten/pull/57 This fixes github API rate limit errors
* Inline test.sh to show timings for each step and generally have a less-jank UI