summaryrefslogtreecommitdiffstats
path: root/libdimension/raytrace.c
Commit message (Collapse)AuthorAgeFilesLines
* Clean up internal raytracing API a bit.Tavian Barnes2010-01-071-60/+74
|
* Limit recursion depth in raytracing.Tavian Barnes2010-01-061-9/+20
|
* Make quality settings into flags.Tavian Barnes2010-01-061-6/+6
|
* Separate finishes into single-purpose finishes.Tavian Barnes2009-12-231-3/+5
|
* Fix progress calculation in raytracing.Tavian Barnes2009-11-201-1/+1
|
* Use dmnsn_new_*() rather than dmnsn_*_construct().Tavian Barnes2009-11-191-6/+3
|
* Refactor raytrace.c a bit.Tavian Barnes2009-11-191-56/+81
|
* Implement translucency with shadows.Tavian Barnes2009-11-191-10/+35
|
* Translucency support.Tavian Barnes2009-11-181-29/+67
|
* Make finish callback a propper BRDF.Tavian Barnes2009-11-171-24/+31
|
* Raytrace one row of pixels per thread.Tavian Barnes2009-11-091-5/+2
| | | | | | The theory is that if the next ray shot is closer to the previous ray, the k-D splay tree will work better because we're more likely to hit the same object.
* Correct dmnsn_color_illuminate().Tavian Barnes2009-11-091-1/+1
|
* Use finishes.Tavian Barnes2009-11-091-61/+92
|
* Calculate surface normals in intersection callbacks.Tavian Barnes2009-11-091-8/+1
|
* Render multiple (or zero) lights correctly.Tavian Barnes2009-11-091-1/+2
|
* Rudimentary light/shadow handling.Tavian Barnes2009-11-091-9/+57
|
* Fix some concurrency mistakes.Tavian Barnes2009-10-261-1/+4
| | | | TODO: eliminate the too_late field on canvases.
* Fix some memory leaks.Tavian Barnes2009-10-191-2/+6
| | | | | dmnsn_delete_pigment() was not using the free_fn, and kD splay trees were not being deleted after raytracing finished.
* Use kD splay trees in raytrace engine.Tavian Barnes2009-10-091-28/+29
|
* Implement search for kD splay trees.Tavian Barnes2009-10-071-72/+0
|
* Add ray - bounding-box intersection test function.Tavian Barnes2009-10-071-0/+72
|
* Have camera callbacks take canvas coordinates as doubles.Tavian Barnes2009-07-161-1/+3
|
* Add support for default textures.Tavian Barnes2009-07-161-10/+19
|
* Render pigments.Tavian Barnes2009-07-161-13/+33
|
* New C++ wrapper for dmnsn_texture*.Tavian Barnes2009-07-161-0/+3
|
* New dmnsn_intersection* type for ray-object intersections.Tavian Barnes2009-07-161-6/+3
|
* Add ability to set rendering quality.Tavian Barnes2009-07-121-37/+39
|
* Code formatting.Tavian Barnes2009-07-091-4/+5
|
* Update license copyrights to 2009.Tavian Barnes2009-07-081-1/+1
|
* Comments and style adjustments, and a couple fixes.Tavian Barnes2009-07-081-1/+1
|
* Put windowing interface in libdimension-tests.Tavian Barnes2009-07-021-5/+5
|
* Color objects different colors when raytracing.Tavian Barnes2009-07-021-6/+12
|
* Cleanup raytracing code a bit.Tavian Barnes2009-06-291-16/+16
|
* Remove thread-synchronization from arrays, which was way too slow, andTavian Barnes2009-06-291-1/+1
| | | | only really needed for dmnsn_progress anyway.
* Make raytracing multi-threaded again.Tavian Barnes2009-06-291-14/+115
|
* Add lots of comments, and some code fixes discovered in the process.Tavian Barnes2009-06-261-3/+12
|
* New raytrace.h header, with async raytrace interface.Tavian Barnes2009-06-261-67/+86
|
* New dmnsn_array_size() thread-safe function.Tavian Barnes2009-06-231-2/+2
|
* Use z-index coloring for ray-tracing.Tavian Barnes2009-06-141-9/+19
|
* Add a transformation matrix to objects.Tavian Barnes2009-06-141-3/+7
|
* Return NULL in dmnsn_raytrace_scene_thread().Tavian Barnes2009-06-141-0/+2
|
* Make raytracing engine multi-threaded.Tavian Barnes2009-06-141-0/+103