clld - A standalone collision checker Contents/Index: 1. Introduction 16 2. Setup 26 2.1. Compilation 28 2.2. Installation 47 2.3. Running 59 3. Input Format 65 4. Output Format 91 5. License 117 6. Authors 125 1. Introduction clld is a simple collision checker, that takes two 2D, or 3D points, tests the collision of the points, and outputs the results to stdout. It can do many different types of collision checks, including tile heightmap, AABB, per pixel, and more. 2. Setup 2.1. Compilation To compile clld, run: $ make You can add extra compiler options, with the CFLAGS_EXTRA variable. clld also supports compilers that are not bloat, such as TinyCC, and the Portable C Compiler. It is also recommended to compile clld with one of the compilers above, rather than compiling it with gcc, or llvm. The reason for saying this is because the program is very simple, and very optimized, so using gcc wouldn't net you any significant gain in performance, and would make the size of the binary, alot bigger. 2.2. Installation To install clld, run: $ make install You can change the install prefix, and bin directories, by changing the PREFIX, and BIN environment variables. By default, PREFIX, and BIN are set to /usr/local, and bin respectivly. 2.3. Running Run `clld --help`, or `clld -h` to get information about the options. 3. Input Format The input format is plain text, and contains the collision type, the cursor position, and the floor position. The input format looks like this: , [, ] , [, , [, ] The collision flag is set, when a collision has occured. The grounded flag is set when the cursors y coordinate matches the floors y coordinate. Cursor x, y, and z are the new coordinates for the cursor to be set to. The datatypes for each of the fields are: Collision flag: flag Grounded flag: flag Cursor position: integer, or floating point 5. License clld is released under the GNU General Public License version 2. The full text of the license can be found in the LICENSE file that should be included in the clld distribution. 6. Authors Original author: mr b0nk 500