Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
Nicer README
  • Loading branch information
thedocruby authored Nov 2, 2023
1 parent 62def97 commit 4d40884
Showing 1 changed file with 6 additions and 7 deletions.
13 changes: 6 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,21 +4,20 @@

**Gravy** is a shader programming framework built on the union of the GPU and the [Rust Programming Language](https://www.rust-lang.org/). Gravy brings amazing features to shader development, such as **custom data structures** and even **dependency/library support**, to name a few. With Gravy, you can build off of the work of other shader devs without the need to copy-paste code from a blog, or fork someone else's code. This is the future of the shaderdev.

More technically, `gravylib` is an attempt to build a modern programming framework for GPU-first development. It builds on [`rust-gpu`](https://github.com/EmbarkStudios/rust-gpu) as a backend to convert Rust syntax into a GPU program, and then makes use of [`wgpu`](https://github.com/gfx-rs/wgpu) and [`winit`](https://github.com/rust-windowing/winit) to run the program with cross-platform support.

Gravy sits in a niche with the likes of [**Shadertoy**](https://www.shadertoy.com/) and Unity's [**ShaderGraph**](https://unity.com/features/shader-graph) but stands apart in some key ways:
**Gravy** sits in a niche with the likes of [**Shadertoy**](https://www.shadertoy.com/) and Unity's [**ShaderGraph**](https://unity.com/features/shader-graph) but stands apart in some key ways:

- **Gravy is a library.** You can build other applications on top of `gravylib` like building a game on a game engine, or like building a web browser on `curl`. The possibilities are endless
- **Gravy is a development environment.** Like Shadertoy, Gravy gives you the power to build amazing and beautiful shader programs, without having to worry about asset loading, windowing, i/o, graphics APIs, etc. You can focus on building your masterpiece, and leave the dirty work to us.
- **Gravy is a node graph.** Like ShaderGraph, `gravylib` allows you to build your shader program quickly and intuitively with a simple node-based API. Eventually, the Gravy IDE will even have a built-in visual node editor!
- **Gravy is Rusty.** Featuring a core built on Embark's [`rust-gpu`](https://github.com/EmbarkStudios/rust-gpu), `gravylib` lets you leverage the power of the beautiful [Rust Programming Language](https://www.rust-lang.org/), to make more complex and powerful shaders than ever possible before, and all without the need to write everything by hand.

Gravy is usable as a standalone Rust library crate (`gravylib`), but the goal is to build an IDE-like experience on top of `gravylib` to make next-gen shaderdev simple and accessible for all developers.
*More technically, `gravylib` is an attempt to build a modern programming framework for GPU-first development. It builds on [`rust-gpu`](https://github.com/EmbarkStudios/rust-gpu) as a backend to convert Rust syntax into a GPU program, and then makes use of [`wgpu`](https://github.com/gfx-rs/wgpu) and [`winit`](https://github.com/rust-windowing/winit) to run the program with cross-platform support. Gravy is usable as a standalone Rust library crate (`gravylib`), but the goal is to build an IDE-like experience on top of `gravylib` to make GPU-first development simple and accessible for all developers.*

**NOTE:** This project is still a Work In Progress, so it's not recommended to use it in it's current state.
**_However_**, if you would like to try it out, head over to [`example.rs`](./examples/shaders/src/example.rs) to find a tutorial of sorts.
#### NOTE
This project is still a **Work In Progress**, so it's not recommended to use it in it's current state.
**_However_**, if you would like to try it out, head over to [`example.rs`](./examples/shaders/src/example.rs) to find a tutorial of sorts. Pull requests are discouraged until the initial alpha release.

Pull requests are discouraged until the initial alpha release. However, if you want to learn more about the project, you can join the [Discord](https://discord.gg/7cBw5KHe6q).
To learn more about the project, you can join the [**Discord**](https://discord.gg/7cBw5KHe6q).

### Alpha release checklist (SUBJECT TO CHANGE, NO ETA)

Expand Down

0 comments on commit 4d40884

Please sign in to comment.