Skip to content

Commit 281d7b9

Browse files
committed
Add README to core package
1 parent bdb4dfa commit 281d7b9

File tree

4 files changed

+56
-11
lines changed

4 files changed

+56
-11
lines changed

README

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -56,21 +56,19 @@ Done:
5656
* Reading and writing Wavefront .obj files
5757
* Cubic Bezier curves and splines
5858
* Simple random number generation and distributions
59-
* Frontend for wasm and minifb
59+
* Wasm and minifb frontends
6060

6161
In progress:
6262

6363
= Sprite and text primitives
6464
= Simple bitmap font support
6565
= Spherical, cube, etc UV mapping
6666
= Procedural noise generation
67-
6867
= Frontends for sdl2, softbuffer, ncurses
68+
= Different camera types
6969

7070
Planned:
71-
7271
- Material support
73-
- Different camera types
7472
- Basic scene graph
7573
- Hierarchical transforms
7674
- Cube mapping and skyboxes
@@ -99,15 +97,13 @@ dependencies. However, because `no_std` lacks most floating-point functions,
9997
the package is not fully functional unless either the `std`, `libm`, or `mm`
10098
feature is enabled. Activating `std` additionally enables APIs that do I/O.
10199

102-
The `front` package can be used to write simple games and demos. It contains
103-
simple window abstractions, one using the `minifb` crate and the other running
104-
in the browser via WebAssembly.
100+
The `front` package depends on `minifb` or `wasm-bindgen` and `web-sys`,
101+
depending on enabled features.
105102

106103
The `geom` package has no external dependencies. It only requires `alloc`;
107104
activating the optional feature `std` enables APIs doing I/O.
108105

109-
The `demos` package contains sample applications using `front` to exhibit
110-
various features of retrofire.
106+
The `demos` package depends on `front`.
111107

112108
================================== License ===================================
113109

core/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,5 +21,5 @@ libm = ["fp", "dep:libm"]
2121
mm = ["fp", "dep:micromath"]
2222

2323
[dependencies]
24-
libm = { version = "0.2", optional = true }
24+
libm = { version = "0.2", optional = true }
2525
micromath = { version = "2.1", optional = true }

core/README

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
_______
2+
____ /´ ____/\
3+
__ ______ _____ / /\_ _ ______ _____ ____/ /_/___/\ __ _____ ______
4+
==/ ´ ____/ __ \ ____/ ´ ____/ __ ` __ ___, /==/ ´ ___/ __ \
5+
==/ /´=/ ______/ /==/ /´=/ /==/ /=/ /=/ /==/ /´=/ ______/\
6+
==/ /==/ /____/ /__/ /==/ /__/ /=/ /=/ /__/ /==/ /______\/
7+
==/___/ ==\_______/\______/__/ ==\________,´_/ /==\______/__/ ==\________/\
8+
==\___\/ ==\______\/\_____\__\/ ==\______/_____,´ /==\_____\___\/==\_______\/
9+
\_____\,´
10+
11+
Core functionality of the `retrofire` project.
12+
13+
Includes a math library with strongly typed vectors, matrices, colors, and
14+
angles; basic geometry primitives; a software 3D renderer with customizable
15+
shaders; with more to come.
16+
17+
18+
============================== Crate features ================================
19+
20+
* std:
21+
Makes available items requiring I/O, timekeeping, or any floating-point
22+
functions not included in `core`. In particular this means trigonometric
23+
and transcendental functions. If this feature is disabled, the crate only
24+
depends on `alloc`.
25+
26+
* libm:
27+
Provides software implementations of floating-point functions via the
28+
`libm` crate (https://crates.io/crates/libm).
29+
30+
* `mm`
31+
Provides fast approximate implementations of floating-point functions
32+
via the `micromath` crate (https://crates.io/crates/micromath).
33+
34+
All features are disabled by default.
35+
36+
37+
================================== License ===================================
38+
39+
Copyright 2020-2024 Johannes Dahlström. retrofire is licensed under either of:
40+
41+
* Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0)
42+
43+
* MIT license (http://opensource.org/licenses/MIT)
44+
45+
at your option.
46+
47+
Unless you explicitly state otherwise, any contribution intentionally submit-
48+
ted for inclusion in the work by you, as defined in the Apache-2.0 license,
49+
shall be dual licensed as above, without any additional terms or conditions.

core/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
//! Provides software implementations of floating-point functions via the
3030
//! [libm](https://crates.io/crates/libm) crate.
3131
//!
32-
//! * `micromath`:
32+
//! * `mm`:
3333
//! Provides fast approximate implementations of floating-point functions
3434
//! via the [micromath](https://crates.io/crates/micromath) crate.
3535
//!

0 commit comments

Comments
 (0)