~ubuntu-branches/debian/jessie/libccd/jessie

« back to all changes in this revision

Viewing changes to README

  • Committer: Package Import Robot
  • Author(s): Jose Luis Rivero
  • Date: 2014-03-24 16:51:48 UTC
  • Revision ID: package-import@ubuntu.com-20140324165148-mfno979f58rv322z
Tags: upstream-2.0
Import upstream version 2.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
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.
 
5
 
 
6
For more info see home of libccd: http://libccd.danfis.cz.
 
7
 
 
8
For implementation details on GJK algorithm, see
 
9
http://www.win.tue.nl/~gino/solid/jgt98convex.pdf.
 
10
 
 
11
 
 
12
Dependencies
 
13
-------------
 
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.
 
18
 
 
19
 
 
20
License
 
21
--------
 
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.
 
26
 
 
27
 
 
28
Compile And Install
 
29
--------------------
 
30
Simply type 'make' and 'make install' in src/ directory.
 
31
 
 
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.:
 
34
    $ make USE_SINGLE=yes
 
35
will compile library in single precision.
 
36
 
 
37
Installation directory can be changed by options PREFIX, INCLUDEDIR and
 
38
LIBDIR.
 
39
 
 
40
For more info type 'make help'.
 
41
 
 
42
 
 
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
 
50
 
 
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).
 
54
 
 
55
 
 
56
Usage
 
57
------
 
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.
 
61
 
 
62
 
 
63
Directories
 
64
------------
 
65
src/
 
66
    - contains source files of libccd.
 
67
src/testsuites
 
68
    - testsuites - libccd must be compiled before compiling this.
 
69
src/testsuites/cu
 
70
    - CU unit testing framework
 
71
src/testsuites/regressions
 
72
    - files ready for regression tests
 
73
 
 
74
doc/
 
75
    - some documentation.