summaryrefslogtreecommitdiffstats
path: root/libdimension
Commit message (Collapse)AuthorAgeFilesLines
* prtree: Optimize dmnsn_new_prtree() by avoiding some allocation.Tavian Barnes2013-09-051-97/+115
| | | | Around 11% faster.
* bvh: Store the intersection cache right in the BVH struct.Tavian Barnes2013-09-031-56/+15
| | | | This saves a lot of complexity and a little bit of time.
* Don't normalize normal vectors unnecessarily.Tavian Barnes2013-06-092-6/+4
|
* Fix a race in the future benchmark.Tavian Barnes2013-03-221-1/+5
|
* Also benchmark cycles/increment for futures.Tavian Barnes2013-03-201-3/+14
|
* Don't use pointer indirection to emulate mutable for futures.Tavian Barnes2013-03-192-38/+37
| | | | We can just cast away the const, as they're all on the heap anyway.
* Simplify future implementation.Tavian Barnes2013-03-192-31/+28
| | | | | A read-write lock was a bad idea, as most consumers are probably writers, not readers.
* Add a benchmark for dmnsn_future.Tavian Barnes2013-03-192-1/+71
|
* Fix the polynomial solver when the bounds are exact.Tavian Barnes2012-12-212-1/+31
|
* Add some basic reference counting tests.Tavian Barnes2012-12-192-0/+76
|
* Add more dictionary tests.Tavian Barnes2012-12-191-5/+44
|
* Add some unit tests for dictionaries.Tavian Barnes2012-12-193-1/+98
|
* Add tcolor.h to the distributed headers.Tavian Barnes2012-12-181-0/+1
|
* Don't print a memory leak message on failed tests.Tavian Barnes2012-12-181-1/+8
|
* Improve the unit test macro API a bit.Tavian Barnes2012-12-183-38/+105
|
* Convert the polynomial tests to the new testing framework.Tavian Barnes2012-12-184-35/+164
|
* Allow other BVH implementations to be used.Tavian Barnes2012-12-1710-472/+600
| | | | | dmnsn_bvh is now a generic API, which could potentially support octrees, etc, in addition to PR-trees.
* Replace INCLUDES with AM_CFLAGS.Tavian Barnes2012-12-162-4/+3
|
* Make dmnsn_clear actually clear.Tavian Barnes2012-08-211-1/+1
|
* Fix --disable-png build.Tavian Barnes2012-08-201-2/+2
|
* Add debugging tests for NaN values.Tavian Barnes2012-02-065-0/+55
|
* Add custom fatal error handler test.Tavian Barnes2012-01-012-0/+41
|
* Print a backtrace on both warnings and errors.Tavian Barnes2012-01-012-7/+12
|
* Print errno in dmnsn_report_error().Tavian Barnes2011-12-261-5/+19
|
* Use macros to initialize refcounts.Tavian Barnes2011-12-2413-34/+43
|
* Add dmnsn_tcolor printf macros.Tavian Barnes2011-12-171-0/+5
|
* Make triangles smooth.Tavian Barnes2011-12-173-9/+49
|
* Make refcount declarations uniform.Tavian Barnes2011-12-1511-30/+26
|
* Re-think colors.Tavian Barnes2011-12-1424-824/+613
| | | | | | | | | Color is a property of light, and thus doesn't include information about transparency. But canvas pixels and object pigments represent a color and a degree of transparency. The new type dmnsn_tcolor/ TColor encapsulates that information. Also, fix the transparent shadow implementation.
* Fix reading of 8-bit PNG files.Tavian Barnes2011-12-061-7/+7
|
* Rename raytrace.{c,h} to ray_trace.{c,h}.Tavian Barnes2011-12-054-3/+3
|
* Use correct D65 values for dmnsn_color_intensity().Tavian Barnes2011-12-031-2/+1
|
* Evaluate specular highlights before reflection.Tavian Barnes2011-12-011-9/+11
|
* Be more consistent about using sRGB in the client.Tavian Barnes2011-11-283-44/+61
| | | | Also, expose the sRGB C and C^-1 functions.
* Fix up malloc.h documentation.Tavian Barnes2011-11-191-1/+1
|
* Get rid of dmnsn_vector_element().Tavian Barnes2011-11-171-33/+0
|
* Add a non-cached case to the PR-tree benchmark.Tavian Barnes2011-11-171-0/+5
|
* Add some branch instrumentation from gcov profile.Tavian Barnes2011-11-163-6/+7
|
* Add a dmnsn_unreachable() macro.Tavian Barnes2011-11-167-14/+30
| | | | Also rename inline.h to compiler.h.
* Get rid of DMNSN_ARRAY_FOREACH_REVERSE.Tavian Barnes2011-11-131-11/+0
|
* Get rid of dmnsn_color_is_black().Tavian Barnes2011-11-072-22/+15
|
* Prevent hangs in dmnsn_polynomial_solve.Tavian Barnes2011-11-041-13/+21
|
* Simplify loop condition in PR-tree traversal.Tavian Barnes2011-11-031-6/+4
| | | | | Doing this used to actually generate *worse* code, but now it looks like it generates much better code.
* Clean up PR-tree intersection code.Tavian Barnes2011-11-021-24/+23
|
* Use Rouillier and Zimmerman's version of the Uspensky algorithm.Tavian Barnes2011-10-313-191/+153
|
* Make PNG and GL share the same optimizer.Tavian Barnes2011-10-306-74/+103
|
* Make API more consistent.Tavian Barnes2011-10-3039-159/+184
| | | | Object methods should be dmnsn_<object>_<fn>().
* Rename progress objects to future objects.Tavian Barnes2011-10-1916-264/+261
|
* Add a getrusage() implementation of dmnsn_get_times().Tavian Barnes2011-09-301-13/+37
|
* Correct pattern documentation.Tavian Barnes2011-09-231-1/+1
|