Skip to content

Commit

Permalink
doc: update supported runtime table to include D3D9 and clarify wgpu …
Browse files Browse the repository at this point in the history
…status
  • Loading branch information
chyyran committed Mar 8, 2024
1 parent 8c8e386 commit d893b6e
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 19 deletions.
29 changes: 19 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,18 +16,27 @@ Windows and macOS users can grab the latest binaries from [GitHub Releases](http

## Supported Render APIs
librashader supports all modern graphics runtimes, including wgpu, Vulkan, OpenGL 3.3+ and 4.6 (with DSA),
Direct3D 11, Direct3D 12, and Metal. librashader does not support legacy render
APIs such as older versions of OpenGL, or legacy versions of Direct3D.
Direct3D 11, Direct3D 12, and Metal.

librashader does not support legacy render APIs such as older versions of OpenGL or Direct3D, except for experimental
support for Direct3D 9.

| **API** | **Status** | **`librashader` feature** |
|-------------|-----------|---------------------------|
| OpenGL 3.3+ || `gl` |
| OpenGL 4.6 || `gl` |
| Vulkan || `vk` |
| Direct3D 11 || `d3d11` |
| Direct3D 12 || `d3d12` |
| Metal || `metal` |
| wgpu || `wgpu` |
|-------------|------------|---------------------------|
| OpenGL 3.3+ || `gl` |
| OpenGL 4.6 || `gl` |
| Vulkan || `vk` |
| Direct3D 9 | ⚠️ | `d3d9` |
| Direct3D 11 || `d3d11` |
| Direct3D 12 || `d3d12` |
| Metal || `metal` |
| wgpu | 🆗 | `wgpu` |

✅ Full Support — 🆗 Secondary Support — ⚠️ ️Experimental Support

wgpu may not support all shaders due to restrictions from WGSL. Direct3D 9 support is experimental and does not fully
support features such as previous frame feedback or history, as well as being unable to support shaders that need Direct3D 10+
only features.

## Usage

Expand Down
20 changes: 11 additions & 9 deletions librashader/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -30,15 +30,17 @@
//! wgpu support is not available in the librashader C API.
//!
//! | **API** | **Status** | **`librashader` feature** |
//! |-------------|------------|---------------------------|
//! | OpenGL 3.3+ | ✔ | `gl` |
//! | OpenGL 4.6 | ✔ | `gl` |
//! | Vulkan | ✔ | `vk` |
//! | Direct3D 9 | ⚠️ | `d3d9` |
//! | Direct3D 11 | ✔ | `d3d11` |
//! | Direct3D 12 | ✔ | `d3d12` |
//! | wgpu | ✔ | `wgpu` |
//! | Metal | ✔ | `metal` |
//! |-------------|-----------|---------------------------|
//! | OpenGL 3.3+ | ✅ | `gl` |
//! | OpenGL 4.6 | ✅ | `gl` |
//! | Vulkan | ✅ | `vk` |
//! | Direct3D 9 | ⚠️ | `d3d9` |
//! | Direct3D 11 | ✅ | `d3d11` |
//! | Direct3D 12 | ✅ | `d3d12` |
//! | Metal | ✅ | `metal` |
//! | wgpu | 🆗 | `wgpu` |
//!
//! ✅ Full Support — 🆗 Secondary Support — ⚠️ ️Experimental Support
//!
//! ## C API
//! For documentation on the librashader C API, see [librashader-capi](https://docs.rs/librashader-capi/latest/librashader_capi/),
Expand Down

0 comments on commit d893b6e

Please sign in to comment.