4 releases (2 breaking)
0.3.0 | Jan 26, 2025 |
---|---|
0.2.0 | Jan 24, 2025 |
0.1.1 | Dec 25, 2024 |
0.1.0 | Dec 25, 2024 |
#68 in Rendering
211 downloads per month
66KB
2K
SLoC
BlandSoft BSTrace
Free RayTracing Software for Personal Computers
Building
Clone the git repo then do cargo build --release --bin bs-trace
.
Installing
After building, do cargo install --bin bs-trace --path .
. This will install the release binary and put the bs-trace
binary on your PATH to be run from the command line.
Running
After installing, run bs-trace <path to scene file>
from the command line. Alternatively, from the cloned repo root do cargo run --bin bs-trace -- <path to scene file>
.
The program accepts the path to a scene definition file as its sole argument. It will render the given scene and output the resultant image to the current working directory in PNG format, as out.png
.
Configuring a Scene
A scene is a collection of objects in 3D space, referred to as a World
in the source code.
Currently, only sphere objects are supported.
Scene Definition File Format
A scene definition file is a TOML file.
See the example scenes in examples/
to get an idea of how they're written.
To see how a scene file is parsed into a World
, see src/trace/description.rs
.
Copyright, Copying & Licensing
BlandSoft BSTrace Copyright (C) Elizabeth Bland 2024-2025
BlandSoft BSTrace is made freely available under the GNU General Public License as published by the Free Software Foundation, version 3. ("GPL-3.0-only")
See COPYING for a copy of the licence text.
Dependencies
~2.3–3MB
~63K SLoC