Skip to content

Commit 5f95644

Browse files
authored
N44: rust-gpu-sdf (rust-gamedev#1328)
1 parent 1d9c5ca commit 5f95644

File tree

2 files changed

+34
-1
lines changed

2 files changed

+34
-1
lines changed

content/news/044/index.md

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -613,11 +613,44 @@ for users of Bevy and WGPU.
613613
_Discussion: [/r/bevy](https://reddit.com/r/bevy/comments/11hrnmz/bevy_rustgpu_joins_the_fray)_
614614

615615
[Bevy Rust-GPU]: https://github.com/bevy-rust-gpu
616-
[bevy]: https://github.com/bevyengine/bevy
617616
[rust-gpu]: https://github.com/EmbarkStudios/rust-gpu
618617
[@Shfty]: https://github.com/Shfty
619618
[@eddyb]: https://github.com/eddyb
620619

620+
### [rust-gpu-sdf]
621+
622+
![3d-distance-field](rust-gpu-sdf.gif)
623+
_An implicit surface defined compositionally, raymarched, and shaded entirely
624+
in Rust_
625+
626+
Announcing [rust-gpu-sdf], by [@Shfty]; a `no-std` signed distance field library
627+
designed for use on both CPU and GPU.
628+
629+
[Signed distance fields][sdf-wiki] are a powerful computational tool
630+
that allow a surface to be represented by a function from position to distance.
631+
This has [intuitive applications][raymarchingdf] in various domains such as rendering,
632+
collision, meshing, and volume modeling, providing the means to represent analytically
633+
smooth geometry, dynamic morphing (as pictured), and various other effects
634+
that would traditionally require specialized tools to model.
635+
636+
[rust-gpu-sdf] aims to enumerate this domain to the fullest extent allowed
637+
by Rust's type system, lifting its traditionally monolithic implementation style
638+
into a set of intuitive composable operators, and leveraging a natural synergy
639+
with functional programming to provide powerful compositional tools.
640+
641+
Contrary to its working title, [rust-gpu-sdf] is actually [rust-gpu]-agnostic,
642+
so can be used anywhere Rust can;
643+
it's presently named as such due to being built as the primary consumer of [bevy-rust-gpu],
644+
with a view to providing a performant and compositional way to compile SDFs
645+
into SPIR-V for rendering on the GPU.
646+
647+
It's presently in a heavy-development prerelease state, so watch this space!
648+
649+
[rust-gpu-sdf]: https://github.com/bevy-rust-gpu/rust-gpu-sdf
650+
[bevy-rust-gpu]: https://github.com/bevy-rust-gpu
651+
[sdf-wiki]: https://en.wikipedia.org/wiki/Signed_distance_function
652+
[raymarchingdf]: https://iquilezles.org/articles/raymarchingdf
653+
621654
## Popular Workgroup Issues in Github
622655

623656
<!-- Up to 10 links to interesting issues -->

content/news/044/rust-gpu-sdf.gif

2.58 MB
Loading

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy