Realtime raytracing that will make your computer sweat :)
/eva
: Core renderer./eva-macros
: Marcos for the core renderer./eva-py
: Python3 scripting API./eva-py/python/eva_py
: Pure Python3 wrapper on the Rust bindings./eva-py-macros
: Macros for the Python3 scripting API./scripts
: Python3 scripts.
Note: You will need to have Rust and Python3 installed on your system.
Create a virtual environment and install maturin
.
cd eva-py
python3 -m venv .env
source .env/bin/activate
pip install maturin
deactivate
Scripts, which are python3 files, are put in /scripts
.
To run a script ./scripts/custom-script.py
, from the root folder, call
# No debug output.
./run.sh custom-script
# With debug output.
./debug.sh custom-script
Or, alternatively:
cd eva-py
source .env/bin/activate
maturin develop
cd ..
python3 ./scripts/custom-script.py
wgpu
: Rust implementation of the WebGPU specification.pyo3
: Rust to Python3 bindings.maturin
: Python3 package builder for pyo3 generated bindings.nalgebra
: Rust linear algebra.winit
: Rust cross-platform windowing.pollster
: Rust crate for statically resolvingFuture
s.bytemuck
: Rust crate for converting data types into bytes.image
: Rust crate for encoding and decoding images.encase
: Rust crate for byte-aligning structures for use in WebGPU shaders.obj
: Rust crate for loading.obj
meshes.half
: Rust crate for handling 16-bit floating float numbers.
- https://github.com/amengede/webgpu-for-beginners/tree/main
- https://cohost.org/mcc/post/1406157-i-want-to-talk-about
- https://surma.dev/things/webgpu/
- https://sotrh.github.io/learn-wgpu/#what-is-wgpu
- https://gpuweb.github.io/gpuweb/
- https://github.com/gfx-rs/wgpu