summaryrefslogtreecommitdiffstats
path: root/libdimension/raytrace.c
Commit message (Expand)AuthorAgeFilesLines
* Precompute objects in dmnsn_raytrace_scene() rather than dmnsn_new_prtree().Tavian Barnes2010-05-301-0/+6
* New dmnsn_new_thread() function.Tavian Barnes2010-05-091-23/+11
* New DMNSN_ARRAY_FOREACH() macro, faster than iterating with dmnsn_array_get().Tavian Barnes2010-05-081-7/+3
* Use C99 for loop initializers.Tavian Barnes2010-05-051-13/+9
* Replace BVSTs with priority R-trees.Tavian Barnes2010-05-051-21/+10
* Fix some includes.Tavian Barnes2010-04-271-0/+1
* Don't render transparent shadows with transparency off.Tavian Barnes2010-04-171-1/+2
* Remove a bunch of errno.h includes.Tavian Barnes2010-04-131-1/+0
* Fix low-quality renders.Tavian Barnes2010-04-111-0/+2
* Don't use dynamic memory for dmnsn_intersection's.Tavian Barnes2010-04-071-14/+10
* New dmnsn_malloc() function, and friends.Tavian Barnes2010-04-071-88/+37
* Set errno on failures.Tavian Barnes2010-04-011-3/+11
* Make float equality comparisons more relaxed.Tavian Barnes2010-03-191-13/+0
* Rename dmnsn_bvst_copy() to dmnsn_copy_bvst().Tavian Barnes2010-03-161-1/+1
* Handle nested refractive objects correctly.Tavian Barnes2010-03-021-11/+24
* Implement refraction.Tavian Barnes2010-02-251-5/+39
* Point the normal vectors away from the object.Tavian Barnes2010-02-251-1/+2
* Determine nthreads in dmnsn_new_scene().Tavian Barnes2010-02-231-10/+5
* Rename `limit' scene field to `reclimit'.Tavian Barnes2010-02-231-8/+8
* Use standard C for texture callback macros.Tavian Barnes2010-01-181-28/+25
* Rename kD splay trees to Bounding Volume Splay Trees.Tavian Barnes2010-01-151-20/+17
* Don't reflect transparent colors.Tavian Barnes2010-01-141-0/+2
* Finally proper translucency semantics.Tavian Barnes2010-01-141-43/+42
* Collapse some repeated work in raytracing.Tavian Barnes2010-01-141-18/+18
* Make number of raytracing worker threads configurable.Tavian Barnes2010-01-141-6/+8
* Match POV-Ray transparency semantics a bit better.Tavian Barnes2010-01-141-2/+1
* Fold repeated dmnsn_line_point() calls.Tavian Barnes2010-01-131-19/+11
* Implement proper texture overloading.Tavian Barnes2010-01-131-71/+48
* Clean up internal raytracing API a bit.Tavian Barnes2010-01-131-13/+9
* Split finish_fn into diffuse_fn and specular_fn.Tavian Barnes2010-01-131-5/+14
* Implement reflection.Tavian Barnes2010-01-091-44/+100
* Make recursion limit a scene parameter.Tavian Barnes2010-01-081-18/+18
* Modularize translucency.Tavian Barnes2010-01-081-28/+32
* Kill DMNSN_RENDER_OBJECTS.Tavian Barnes2010-01-081-1/+1
* 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
* 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