Skip to content

Commit 5e9a307

Browse files
committed
Update READMEs, add screenshots
1 parent e426b13 commit 5e9a307

File tree

8 files changed

+45
-27
lines changed

8 files changed

+45
-27
lines changed

README.md

Lines changed: 24 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@
1414

1515
*Note: This document is best viewed on an 80-column VGA terminal.*
1616

17-
Retrofire is a software 3D rendering library
17+
Retrofire is a software 3D rendering library focusing on performance,
18+
correctness, and pedagogical value.
1819

1920
The Retrofire project began as a shamelessly nostalgic effort to explore
2021
the state of graphics programming as it was in the mid-to-late 90s in
@@ -88,10 +89,11 @@ for custom allocators is planned in order to make `alloc` optional as well.
8889

8990
Retrofire is split into several packages:
9091

91-
* core: math, renderer, utilities; no-std compatible
92-
* geom: geometric shapes, mesh builders, model loading
93-
* front: frontends for writing simple graphical applications
94-
* demos: binaries showcasing retrofire features
92+
* retrofire: a metapackage that just re-exports core, geom, and front
93+
* retrofire-core: math, renderer, utilities; no-std compatible
94+
* retrofire-geom: geometric shapes, mesh builders, model loading
95+
* retrofire-front: frontends for writing simple graphical applications
96+
* retrofire-demos: binaries showcasing retrofire features.
9597

9698
# Dependencies
9799

@@ -103,13 +105,25 @@ functions, the package is not fully functional unless either the `std`,
103105
`libm`, or `mm` feature is enabled. Activating `std` additionally enables
104106
APIs that do I/O.
105107

106-
The `front` package depends on either `sdl2`, `minifb`, or `wasm-bindgen`
107-
and `web-sys`, depending on enabled features.
108+
The `retrofire-front` package depends on either `sdl2`, `minifb`, or
109+
`wasm-bindgen` and `web-sys`, depending on enabled features.
108110

109-
The `geom` package has no external dependencies. It only requires `alloc`;
110-
activating the optional feature `std` enables APIs that do I/O.
111+
The `retrofire-geom` package has no external dependencies. It only requires
112+
`alloc`; activating the optional feature `std` enables APIs that do I/O.
111113

112-
The `retrofire-demos` package depends on `retrofire-front`.
114+
The `retrofire-demos` package depends on `retrofire`.
115+
116+
# Screenshots
117+
118+
The classic Stanford bunny.
119+
![The classic Stanford bunny 3D model.](docs/bunny.jpg)
120+
121+
A first-person mouse-and-keyboard scene with many "Rust crates" strewn on a
122+
checkered floor.
123+
![Many wooden crates on a plane, each with the Rust logo](docs/crates.jpg)
124+
125+
Ten thousand spherical particles positioned randomly in a sphere.
126+
![Ten thousand spherical particles in random positions.](docs/sprites.jpg)
113127

114128
# License
115129

core/README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,14 @@
1212

1313
# Retrofire-core
1414

15-
Core functionality of the `retrofire` project.
15+
Core functionality of the [`retrofire`][1] project.
1616

1717
Includes a math library with strongly typed points, vectors, matrices,
1818
colors, and angles; basic geometry primitives; a software 3D renderer with
1919
customizable shaders; with more to come.
2020

21+
[1]: https://crates.io/crates/retrofire
22+
2123
## Crate features
2224

2325
* `std`:

demos/README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,9 @@
1212

1313
# Retrofire-demos
1414

15-
Simple demo programs showcasing Retrofire features.
15+
Simple demo programs showcasing [`retrofire`][1] features.
16+
17+
[1]: https://crates.io/crates/retrofire
1618

1719
## Demo binaries
1820

docs/bunny.jpg

154 KB
Loading

docs/crates.jpg

261 KB
Loading

docs/sprites.jpg

407 KB
Loading

front/README.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,23 +12,23 @@
1212

1313
# Retrofire-front
1414

15-
Simple frontends for Retrofire.
15+
Simple frontends for [`retrofire`][1].
16+
17+
[1]: https://crates.io/crates/retrofire
1618

1719
## Crate features
1820

19-
* `minifb`:
20-
Enables a frontend using the [`minifb`](https://crates.io/crates/minifb)
21-
library.
21+
* `minifb`: Enables a frontend using the [`minifb`][2] library.
22+
* `sdl2`: Enables a frontend using the [`sdl2`][3] library.
23+
* `wasm` Enables a frontend using WebAssembly and [`wasm-bindgen`][4].
24+
25+
All features are disabled by default.
2226

23-
* `sdl2`:
24-
Enables a frontend using the [`sdl2`](https://crates.io/crates/sdl2)
25-
library.
27+
[2]: https://crates.io/crates/minifb
2628

27-
* `wasm`
28-
Enables a frontend using WebAssembly and
29-
[`wasm-bindgen`](https://crates.io/crates/wasm-bindgen).
29+
[3]: https://crates.io/crates/sdl2
3030

31-
All features are disabled by default.
31+
[4]: https://crates.io/crates/wasm-bindgen
3232

3333
## License
3434

geom/README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,13 @@
1212

1313
# Retrofire-geom
1414

15-
Additional geometry types and routines for Retrofire.
15+
Additional geometry types and routines for [`retrofire`][1].
1616

17-
## Crate features
17+
[1]: https://crates.io/crates/retrofire
1818

19-
* `std`: Enables file I/O.
19+
## Crate features
2020

21-
All features are disabled by default.
21+
* `std`: Enables file I/O. Disabled by default.
2222

2323
## License
2424

0 commit comments

Comments
 (0)