vello/crates/shaders
Arman Uguray d82bd409ff [shaders] Shader path look up fixes for hermetic builds
* Bazel builds seem to fail to open relative paths to parent directories
  due to hermetic sandboxing of third-party repositories. This adds a
  WORKSPACE_MANIFEST_FILE environment variable that allows the caller to
  optionally provide an absolute path to the workspace root manifest
  file.
* The existing code processed a shader file only if
  `FileType::is_file` returns true for it. This is not the case when
  sources are accessed via symbolic links, which is possible in a Bazel
  sandbox. The code now filters for the ".wgsl" file extension instead
  of the file type which should generally be safe.
2023-05-16 15:08:54 -07:00
..
src [shaders] Shader path look up fixes for hermetic builds 2023-05-16 15:08:54 -07:00
build.rs [shaders] Shader path look up fixes for hermetic builds 2023-05-16 15:08:54 -07:00
Cargo.toml [vello_shaders] Move vello_shaders to crates/shaders 2023-03-29 12:24:28 -07:00
README.md [vello_shaders] Move vello_shaders to crates/shaders 2023-03-29 12:24:28 -07:00

The vello_shaders crate provides a utility library to integrate the Vello shader modules into any renderer project. The crate provides the necessary metadata to construct the individual compute pipelines on any GPU API while leaving the responsibility of all API interactions (such as resource management and command encoding) up to the client.

The shaders can be pre-compiled to any target shading language at build time based on feature flags. Currently only WGSL and Metal Shading Language are supported.