1
libccd is library for a collision detection between two convex shapes.
2
libccd implements variation on Gilbert–Johnson–Keerthi algorithm plus Expand
3
Polytope Algorithm (EPA) and also implements algorithm Minkowski Portal
4
Refinement (MPR, a.k.a. XenoCollide) as described in Game Programming Gems 7.
6
For more info see home of libccd: http://libccd.danfis.cz.
8
For implementation details on GJK algorithm, see
9
http://www.win.tue.nl/~gino/solid/jgt98convex.pdf.
14
This library is currently based only on standard libraries.
15
The only exception are testsuites that are built on top of CU
16
(cu.danfis.cz) library licensed under LGPL, however only testing depends on
17
it and libccd library itself can be distributed without it.
22
libccd is licensed under OSI-approved 3-clause BSD License, text of license
23
is distributed along with source code in BSD-LICENSE file.
24
Each file should include license notice, the rest should be considered as
25
licensed under 3-clause BSD License.
30
Simply type 'make' and 'make install' in src/ directory.
32
Library libccd is by default compiled in double precision of floating point
33
numbers - you can controll this by options USE_SINGLE/USE_DOUBLE, i.e.:
35
will compile library in single precision.
37
Installation directory can be changed by options PREFIX, INCLUDEDIR and
40
For more info type 'make help'.
43
Compile And Install Using Autotools
44
------------------------------------
45
libccd also contains support for autotools:
46
1) Generate configure script etc.: $ ./bootstrap
47
2) Create new build/ directory: $ mkdir build && cd build
48
3) Run configure script: $ ../configure
49
4) Run make and make install: $ make && make install
51
configure script can change the way libccd is compiled and installed, most
52
significant option is --enable-double-precision which enables double
53
precision (single is default in this case).
58
See ccd.h for public API.
59
In your application include <ccd/ccd.h>, setup ccd_t structure and run some
60
of functions (all functions are reentrant). Then link with libccd.a.
66
- contains source files of libccd.
68
- testsuites - libccd must be compiled before compiling this.
70
- CU unit testing framework
71
src/testsuites/regressions
72
- files ready for regression tests