Update README
This commit is contained in:
parent
efbe4b199b
commit
1242b015d7
1 changed files with 19 additions and 5 deletions
24
README.md
24
README.md
|
@ -5,12 +5,26 @@ A linear algebra and mathematics library for computer graphics.
|
||||||
The library provides:
|
The library provides:
|
||||||
|
|
||||||
- vectors: `Vec2`, `Vec3`, `Vec4`
|
- vectors: `Vec2`, `Vec3`, `Vec4`
|
||||||
- points: `Point2`, `Point3`, `Point4`
|
- square matrices: `Mat2`, `Mat3`, `Mat4`
|
||||||
- square matricies: `Mat2`, `Mat3`, `Mat4`
|
|
||||||
- a quaternion type: `Quat`
|
- a quaternion type: `Quat`
|
||||||
- perspective projections
|
- rotation matrices: `Rot2`, `Rot3`
|
||||||
|
- rotations: `Euler`, `AxisAngle`
|
||||||
|
- angle units: `Rad`, `Deg`
|
||||||
|
- points: `Point2`, `Point3`, `Point4`
|
||||||
|
- rays: `Ray2`, `Ray3`
|
||||||
|
- plane: `Plane`
|
||||||
|
- perspective projections: `Perspective`, `PerspectiveFov`, `Ortho`
|
||||||
|
- a view frustum: `Frustrum`,
|
||||||
|
- axis-aligned bounding boxes: `Aabb2`, `Aabb3`
|
||||||
|
- oriented bounding boxes: `Obb2`, `Obb3`
|
||||||
|
- collision primitives: `Sphere`, `Cylinder`
|
||||||
- and more to come...?
|
- and more to come...?
|
||||||
|
|
||||||
|
Not all of the functionality has been implemented yet, and the existing code
|
||||||
|
is not fully covered by the testsuite. If you encounter any mistakes or
|
||||||
|
omissions please let me know by posting an issue, or even better: send me a
|
||||||
|
pull request with a fix.
|
||||||
|
|
||||||
## Compilation
|
## Compilation
|
||||||
|
|
||||||
~~~
|
~~~
|
||||||
|
@ -24,7 +38,7 @@ applications rather than general linear algebra. It only offers the 2, 3, and
|
||||||
4 dimensional structures that are more than useful for most computer graphics
|
4 dimensional structures that are more than useful for most computer graphics
|
||||||
applications. This design decision was made in order to simplify the
|
applications. This design decision was made in order to simplify the
|
||||||
implementation (Rust cannot paramerise over constants at compile time), and to
|
implementation (Rust cannot paramerise over constants at compile time), and to
|
||||||
make graphics-specific optimisations easier in the future. Those looking for
|
make dimension-specific optimisations easier in the future. Those looking for
|
||||||
n-dimensional mathematics can look to [nalgebra](https://github.com/sebcrozet/nalgebra).
|
n-dimensional mathematics can look to [nalgebra](https://github.com/sebcrozet/nalgebra).
|
||||||
|
|
||||||
Currently, operators are not overloaded. This is due to limitations in Rust's
|
Currently, operators are not overloaded. This is due to limitations in Rust's
|
||||||
|
@ -35,4 +49,4 @@ generics that will be fixed sometime in the future.
|
||||||
Pull requests are most welcome, especially in the realm of performance
|
Pull requests are most welcome, especially in the realm of performance
|
||||||
enhancements and fixing any mistakes I may have made along the way. Unit tests
|
enhancements and fixing any mistakes I may have made along the way. Unit tests
|
||||||
and benchmarks are also required, so help on that front would be most
|
and benchmarks are also required, so help on that front would be most
|
||||||
appreaciated.
|
appreciated.
|
||||||
|
|
Loading…
Reference in a new issue