Crate ncollide [] [src]

ncollide

ncollide is a 2 and 3-dimensional collision detection library written with the rust programming language.

As its name suggests, it is generic wrt the dimension: it works with both 2-dimensional and 3-dimensional shapes. It might work with higher dimensions (never tried).

The official user guide is available here. The rustdoc documentation is available here.

Compilation

You will need the last stable build of the rust compiler and the official package manager: cargo.

Simply add the following to your Cargo.toml file:

Be careful when using this code, it's not being tested!
[dependencies]
ncollide = "0.13"

Features

  • dynamic bounding volume tree based broad phase
  • ball vs. ball collision detection,
  • plane vs. any convex object collision detection.
  • collision detection between arbitrary convex objects
  • compound shapes
  • ray-casting
  • time of impact computation for objects without rotational movement (compound vs. compound is not yet implemented)

And various traits for collision detectors and broad phase collision detection.

Reexports

pub extern crate ncollide_geometry;
pub extern crate ncollide_math;
pub extern crate ncollide_pipeline;
pub extern crate ncollide_procedural;
pub extern crate ncollide_transformation;
pub extern crate ncollide_utils;

Modules

bounding_volume

Bounding volumes.

broad_phase

Broad phases.

events

Structures for describing and storing collision-related events.

math

Trait implemented by the primitive algebraic types used by ncollide.

narrow_phase

Persistent collision detection algorithms to compute contact points.

partitioning

Spatial partitioning tools.

procedural

Procedural mesh generation.

query

Non-persistant pairwise geometric queries.

shape

Collision shapes supported by ncollide.

transformation

Transformation, simplification and decomposition of meshes.

utils

Miscelaneous elementary geometric utilities.

world

High level API to detect collisions in large, complex scenes.