#3d #mesh-generation #gamedev #library #c #utilities #libraries
|
|
пре 6 година | |
|---|---|---|
| test | пре 6 година | |
| tools | пре 6 година | |
| .gitignore | пре 6 година | |
| .travis.yml | пре 6 година | |
| README.md | пре 6 година | |
| par_bluenoise.h | пре 6 година | |
| par_bubbles.h | пре 6 година | |
| par_camera_control.h | пре 6 година | |
| par_easings.h | пре 6 година | |
| par_easycurl.h | пре 6 година | |
| par_filecache.h | пре 6 година | |
| par_msquares.h | пре 6 година | |
| par_shaders.h | пре 6 година | |
| par_shapes.h | пре 6 година | |
| par_sprune.h | пре 6 година | |
| par_streamlines.h | пре 6 година |
Single-file C libraries under the MIT license. Documentation can be found at the top of each header file, but some libraries have an accompanying blog post.
| library | description | link |
|---|---|---|
| par_bluenoise.h | generate progressive 2D point sequences | blog post |
| par_bubbles.h | pack circles into hierarchical diagrams | blog post |
| par_camera_control.h | orbit controller, or pan-and-zoom like Google Maps | demo project |
| par_easings.h | Robert Penner's easing functions | |
| par_easycurl.h | simple HTTP requests using libcurl | |
| par_filecache.h | LRU caching on your device's filesystem | |
| par_msquares.h | unmaintained marching squares library | blog post (do not use) |
| par_shaders.h | string extraction and concatenation | |
| par_shapes.h | generate parametric surfaces and other simple shapes | blog post |
| par_sprune.h | efficient broad-phase collision detection in 2D | web demo |
| par_streamlines.h | triangulate wide lines and curves | blog post |
To run tests, you need CMake and libcurl. On OS X, these can be installed with homebrew:
$ brew install cmake pkg-config curl
Here's how you can tell CMake to use the CMakeLists in the test folder, placing all the messy stuff in a new folder called build.
$ cmake test -Bbuild # Create makefiles
$ cmake --build build # Invoke the build
The tests are executed by simply running the programs:
$ build/test_msquares
$ build/test_bluenoise
$ build/test_bubbles
$ build/test_shapes
This library's code style is strictly enforced to be vertically dense (no consecutive newlines) and 100 columns or less.
The tools/format.py script invokes a two-step code formatting process:
uncrustify with our custom configuration. This auto-formats all code in the root folder, up to a point.The aforementioned Python script is also invoked from Travis, but using the --check option, which checks for conformance without editing the code.
Beyond what our uncrustify configuration enforces, the Python script does the following: