wgpu-rs
bevy-cheatbook
wgpu-rs | bevy-cheatbook | |
---|---|---|
16 | 7 | |
1,699 | 1,680 | |
- | 3.1% | |
9.0 | 8.9 | |
almost 3 years ago | 21 days ago | |
Rust | Rust | |
Mozilla Public License 2.0 | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
wgpu-rs
-
Using WGPU + crates directly or Bevy?
You could start with one of examples from wgpu and tinker with it to see if that's your thing. Ie. copy hello-triangle and add more triangles / make them move, etc.
-
gfx-rs ecosystem releases v0.8
wgpu-rs (https://github.com/gfx-rs/wgpu-rs) is probably closer to what you're looking for, it's a "high level wrapper" over wgpu-core (Which implements "WebGPU", an upcoming browser API for graphics using gfx-rs, and AIUI "implements" means this is what a browser might use to actually call a graphics API when javascript uses webGPU, although if you're compiling for wasm it could just call the browser APIs). It can run natively, ignore the fact it has "Web" in the name
- Rust shader translator is 2.5x faster
-
GPU compute shader for SHA256 using Rust!
rust-gpu) is used for compiling a compute shader written in Rust to SPIR-V. wgpu-rs is used natively for running the GPU computation.
- GPU programming .. SYCL
-
Bevy 0.5
For web assembly there is the unofficial bevy_webgl2 plugin. Official bevy web assembly support would probably use the wgpu webgl backend, which still needs some work, and is currently untested in bevy.
-
Bevy 0.5: data oriented game engine built in Rust
We let wgpu https://github.com/gfx-rs/wgpu-rs handle our graphics backend abstraction, so our OpenGL support will come whenever they implement and release it. Currently, it seems to be a WIP.
-
Help a newbie (in this language) to find directions :)
It's the same thing, the Rust implementation is just called[wgpu](https://wgpu.rs/)
-
Last big wgpu-rs example shaders are fully ported to WGSL now, and validated in it
Same as with GLSL, isn't it? What we do in wgpu-rs examples, and that's something I expect to see more widely, is having an integration test that just parses all the WGSL in the project and reports errors. Ideally though, we'd have a set of IDE plugins to do the parsing and report errors right where you type the code. We'd appreciate any help to get these started!
-
Newbie questions on design patterns in Rust
Also you could use an existing cross-platform graphics library, e.g. wgpu-rs. It supports Vulkan, Metal, DirectX, OpenGL and WebGPU. Oh and it seems to allow switching backends at compile-time via the WGPU_BACKEND environment variable, so maybe check out how they're doing it.
bevy-cheatbook
-
The Bevy Foundation
I've been using Bevy recently so here are some thoughts on this:
Firstly, the overall quality is high and seeing this attention being paid to the project's organization is another good sign.
Documentation is not great great. The Bevy book runs out of content very quickly. The "Cheat Book" has additional useful information: https://bevy-cheatbook.github.io/. With these plus the examples I've been able to figure out everything I need, but it's slow going.
I'm not 100% sold on ECS. It loses a lot of type safety and there doesn't seem to be any way to ensure cleanup of entities and their components.
-
how to learn bevy
This is quite helpful to cover the features of bevy with some code examples and explanations with links to git repositories as reference. Most of it appears to be from 0.9, but you can reference to the migration guide to see how to change from it. Ctrl-f is your friend to see which version changes what.
- Unofficial Bevy Cheat Book
-
New to Bevy, Migrating from Unity3D: Need Advice on 2D Game Dev Tools
You can see working examples of nearly everything you asked about in the Bevy Cheatbook
-
Survey: How have shader compilation messages been for you?
The biggest source of wasted time for me was finding out that my shaders which were working on native didn’t work on webgl. For one of the more perplexing error messages, I opened this issue in the cheatbook a while ago.
-
Bevy 0.5
wasm mostly works :) There's a nice PR open on the cheatbook that documents the process quite well that you can work off of.
-
Orthographic projection with top left origin
Great! Are you okay if I submit this to the Unofficial Bevy Cheatbook? This question comes up pretty frequently and this is a great little snippet.
What are some alternatives?
ash - Vulkan bindings for Rust
awesome-bevy - A collection of Bevy assets, plugins, learning resources, and apps made by the community
gfx - [maintenance mode] A low-overhead Vulkan-like GPU API for Rust.
rusty-shooter - [suspended] 3d shooter written in Rust using rg3d
bevy_webgl2 - WebGL2 renderer plugin for Bevy game engine
bevy - A refreshingly simple data-driven game engine built in Rust
rust-gpu - 🐉 Making Rust a first-class language and ecosystem for GPU shaders 🚧
rust-analyzer - A Rust compiler front-end for IDEs
gpuweb - Where the GPU for the Web work happens!
rust-analyzer - A Rust compiler front-end for IDEs [Moved to: https://github.com/rust-lang/rust-analyzer]