Crate retrofire_core

Crate retrofire_core 

Source
Expand description
                                                     ______
                        ___                       /´  ____/\
      __ ______ _____ /   /\_ _ ______ _____ __  /   /_/___/\ __ _____ ______
   ==/  ´ ____/ __   \   ____/ ´ ____/  __  ` __    ___,  /==/  ´  ___/ __   \
  ==/   /´=/   ______/  /==/   /´=/   /==/   /=/   /=/   /==/   /´=/   ______/\
 ==/   /==/   /____/   /__/   /==/   /__/   /=/   /=/   /__/   /==/   /______\/
==/___/ ==\_______/\______/__/ ==\________,´_/   /==\______/__/ ==\________/\
==\___\/ ==\______\/\_____\__\/ ==\______/_____,´ /==\_____\___\/==\_______\/
                                         \_____\,´

Core functionality of the retrofire project.

Includes a math library with vectors, matrices, colors, and angles; basic geometry primitives; a software 3D renderer with customizable shaders; with more to come.

§Crate features

  • std: Makes available items requiring I/O, timekeeping, or any floating-point functions not included in core. In particular this means trigonometric and transcendental functions.

    If this feature is disabled, the crate only depends on alloc.

  • libm: Provides software implementations of floating-point functions via the libm crate.

  • micromath: Provides fast approximate implementations of floating-point functions via the micromath crate.

All features are disabled by default.

Modules§

geom
Basic geometric primitives.
math
Linear algebra and other useful mathematics.
prelude
Prelude module exporting many frequently used items.
render
Turning 3D geometry into raster images.
util
Various utility types and functions.

Macros§

assert_approx_eq
Asserts that two values are approximately equal. Requires that the left operand has an applicable ApproxEq impl and that both operands impl Debug unless a custom message is given.