Commit Graph
401 Commits
Author SHA1 Message Date
Josh Holtrop 9e4191fb61 added AABB class, calculating AABB in Extrude objects, added Extrude intersect() optimization to throw out rays not hitting the AABB
git-svn-id: svn://anubis/fart/trunk@306 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-09-28 16:37:27 +00:00
Josh Holtrop 437fa8b07a added Box intersect() optimization... ~2% faster
git-svn-id: svn://anubis/fart/trunk@305 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-09-28 15:52:52 +00:00
Josh Holtrop 138c90c2c3 optimized intersect() test for Subtract and Intersect boolean objects to not attempt intersecting with object B when object A had no intersections.... had about a 26% speed improvement for DW test scene
git-svn-id: svn://anubis/fart/trunk@304 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-09-28 14:22:25 +00:00
Josh Holtrop f337831df6 updated todo
git-svn-id: svn://anubis/fart/trunk@303 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-09-28 02:30:32 +00:00
Josh Holtrop 1544ecb311 updated .todo
git-svn-id: svn://anubis/fart/trunk@302 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-09-27 21:23:36 +00:00
Josh Holtrop 02077ffc7c added cutout plane to dw logo scene
git-svn-id: svn://anubis/fart/trunk@301 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-09-27 18:49:25 +00:00
Josh Holtrop 16b991cd85 fixed extrudes to be translated so entire DW logo is lined up
git-svn-id: svn://anubis/fart/trunk@300 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-09-27 18:30:28 +00:00
Josh Holtrop 1d9dfd6858 fixed cyl offsets in DW logo to avoid 0-thickness subtracts
git-svn-id: svn://anubis/fart/trunk@299 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-09-27 15:13:17 +00:00
Josh Holtrop e42599612f added DW logo scene file
git-svn-id: svn://anubis/fart/trunk@298 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-09-26 21:38:43 +00:00
Josh Holtrop 42c669fe4a merged in parser-comments branch
git-svn-id: svn://anubis/fart/trunk@296 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-15 17:15:45 +00:00
Josh Holtrop 28382777ac updated .todo
git-svn-id: svn://anubis/fart/branches/parser-comments@295 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-15 17:10:54 +00:00
Josh Holtrop 01671e9486 added vim syntax for comments, added sample comments to scene file
git-svn-id: svn://anubis/fart/branches/parser-comments@294 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-15 17:10:10 +00:00
Josh Holtrop a4e85f8eff added comments to lexer
git-svn-id: svn://anubis/fart/branches/parser-comments@293 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-15 17:04:12 +00:00
Josh Holtrop 4cd288a66f cut parser-comments branch
git-svn-id: svn://anubis/fart/branches/parser-comments@292 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-15 17:00:24 +00:00
Josh Holtrop 838cddcbb2 added shape-definitions sample scene
git-svn-id: svn://anubis/fart/trunk@289 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-09 20:07:31 +00:00
Josh Holtrop a92a84ac96 updated .todo
git-svn-id: svn://anubis/fart/trunk@288 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-09 19:45:45 +00:00
Josh Holtrop b0dfa2ee1f bool sub-objects using relative coordinates, shape definitions using relative coordinates, this allows transform blocks in each, and shape references to combine absolute transform with the relative transform
git-svn-id: svn://anubis/fart/trunk@287 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-09 19:37:05 +00:00
Josh Holtrop b4a2c8ef8e allowing transform blocks inside boolean shapes, but using a shape reference to a boolean shape does not propagate transform properly
git-svn-id: svn://anubis/fart/trunk@286 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-09 18:33:26 +00:00
Josh Holtrop fc2c62d5ac added shape vim keyword
git-svn-id: svn://anubis/fart/trunk@285 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-09 17:18:07 +00:00
Josh Holtrop c1f39da3e2 added shape definition processing and shape cloning capabilities
git-svn-id: svn://anubis/fart/trunk@284 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-09 17:11:14 +00:00
Josh Holtrop 5308913bdb added shape definitions into parser, not using them yet
git-svn-id: svn://anubis/fart/trunk@283 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-09 16:35:16 +00:00
Josh Holtrop 340742d27b added command-line options --ambient-occlusion and --preview, console displays max depth parameter
git-svn-id: svn://anubis/fart/trunk@282 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-09 16:18:51 +00:00
Josh Holtrop 17d69c54ce Polygon objects now prune adjacent points that are the same -- no more fuzzies in extrudes with offsets of 0
git-svn-id: svn://anubis/fart/trunk@281 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-09 14:29:17 +00:00
Josh Holtrop d2b37a1687 updated extrudes scene, fixed Extrude objects to return backfaces so that boolean objects work properly
git-svn-id: svn://anubis/fart/trunk@280 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-08 19:01:00 +00:00
Josh Holtrop 53ebaeec3e end caps on extrudes working!
git-svn-id: svn://anubis/fart/trunk@279 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-08 18:33:39 +00:00
Josh Holtrop da47ae6fd3 fixed rendering of Extrude edges... caps still not working
git-svn-id: svn://anubis/fart/trunk@278 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-08 17:09:51 +00:00
Josh Holtrop d0fe38566c added mult() and div() to Vector
git-svn-id: svn://anubis/fart/trunk@277 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-08 16:55:30 +00:00
Josh Holtrop 9546c8dde4 updated some Vector operations and made them member functions
git-svn-id: svn://anubis/fart/trunk@276 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-08 16:39:34 +00:00
Josh Holtrop cb4c84ee66 Extrude properly sorts returned intersections
git-svn-id: svn://anubis/fart/trunk@275 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-08 15:36:22 +00:00
Josh Holtrop 9bed134733 sorting Extrude intersection results, still buggy intersect() though
git-svn-id: svn://anubis/fart/trunk@274 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-02 18:38:11 +00:00
Josh Holtrop 0b36fa79a0 added some keywords to vim syntax file
git-svn-id: svn://anubis/fart/trunk@273 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-02 18:37:50 +00:00
Josh Holtrop 7bac2fb076 added Polygon::add(), Polygon::containsPoint(); initial attempt at rendering Extrude objects
git-svn-id: svn://anubis/fart/trunk@272 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-02 16:14:46 +00:00
Josh Holtrop b51d11d043 catch a few error conditions for extrudes and polygons
git-svn-id: svn://anubis/fart/trunk@271 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-01 21:24:39 +00:00
Josh Holtrop 4c5444f053 creating polygons for extrude objects, ngon takes radius parameter
git-svn-id: svn://anubis/fart/trunk@270 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-01 20:35:20 +00:00
Josh Holtrop 7d844667c3 added Extrude and Polygon classes, still in progress
git-svn-id: svn://anubis/fart/trunk@269 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-01 20:04:44 +00:00
Josh Holtrop ad017df3b5 added extrude, offset, polygon, ngon to parser; changed items accepting SCALE vector to also accept SCALE number (ex: "scale 3.2" instead of "scale <3.2, 3.2, 3.2>")
git-svn-id: svn://anubis/fart/trunk@268 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-01 15:14:59 +00:00
Josh Holtrop d6c0bf7a25 updated die.fart
git-svn-id: svn://anubis/fart/trunk@267 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-01 14:18:36 +00:00
Josh Holtrop 7a3ed0213b flush stdout after writing % complete instead of waiting for line buffering
git-svn-id: svn://anubis/fart/trunk@266 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-01 13:51:20 +00:00
Josh Holtrop 781b46dcd4 display percent of image complete on command line
git-svn-id: svn://anubis/fart/trunk@265 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-06-30 16:05:42 +00:00
Josh Holtrop 5b4a0692e3 updated .todo
git-svn-id: svn://anubis/fart/trunk@264 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-06-29 20:41:59 +00:00
Josh Holtrop 96f2b7d276 added ambient_occlusion global scene option to parser and vim keywords; added ambient_occlusion scene file
git-svn-id: svn://anubis/fart/trunk@263 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-06-29 19:37:53 +00:00
Josh Holtrop f5ac18d34f doing many more samples for ambient occlusion looks better
git-svn-id: svn://anubis/fart/trunk@262 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-06-29 18:13:19 +00:00
Josh Holtrop 77e99ac5a5 added initial ambient occlusion attempt... but don't like it
git-svn-id: svn://anubis/fart/trunk@261 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-06-29 17:44:36 +00:00
Josh Holtrop c115dec69b added ambient parameter in global options{} for parser to set scene's global ambient color
git-svn-id: svn://anubis/fart/trunk@260 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-06-29 15:39:35 +00:00
Josh Holtrop 70a5ef74d4 updated .todo
git-svn-id: svn://anubis/fart/trunk@259 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-06-29 15:02:24 +00:00
Josh Holtrop 7fdb084aad soft shadows working better after replacing M_2_PI with 2.0 * M_PI since M_2_PI is 2/pi, not 2*pi...
git-svn-id: svn://anubis/fart/trunk@258 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-06-29 14:59:44 +00:00
Josh Holtrop 57a4e6ed8a trying new jitter method for soft shadows, getting better
git-svn-id: svn://anubis/fart/trunk@257 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-07-13 06:35:45 +00:00
Josh Holtrop eb14077ab7 added jitter parameter to lights, currently uses random vectors, which i'm not happy with; added Vector::getPerpendicularVector() which will be used to replace random jitter for lights
git-svn-id: svn://anubis/fart/trunk@256 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-06-25 18:12:00 +00:00
Josh Holtrop 1af787b9ab added jitter and radius parameters to light objects; not using them yet
git-svn-id: svn://anubis/fart/trunk@255 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-06-25 16:37:17 +00:00
Josh Holtrop bc27be0f85 added Ray::randomRay() to generated a ray with origin at (0,0,0) and a random direction
git-svn-id: svn://anubis/fart/trunk@254 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-06-25 16:16:08 +00:00