Commit Graph

  • 9fbdb9d84c added test scenes for "for" and "if" statements Josh Holtrop 2010-10-07 17:10:59 +00:00
  • 240384569d added ElseNode, handling elsif and else correctly Josh Holtrop 2010-10-07 17:10:27 +00:00
  • 8aaeb8d0fa merged in branch flat-parser Josh Holtrop 2010-10-07 16:55:43 +00:00
  • 208d0a99ac handling if elses Josh Holtrop 2010-10-07 16:37:16 +00:00
  • e3087bb26c making parser flat Josh Holtrop 2010-10-07 16:37:02 +00:00
  • 4410dcfd8b cut flat-parser branch Josh Holtrop 2010-10-07 16:16:46 +00:00
  • 9712dab456 added "if" parser rule and IfNode class, "if_more" still in progress... changed ForNode::evaluate() and IfNode::evaluate() to use Node::evaluateChildren() Josh Holtrop 2010-10-07 15:23:15 +00:00
  • fc33024b28 added MOD operator, converting operands to ints Josh Holtrop 2010-10-07 14:43:56 +00:00
  • c4d8327665 formatting... for()s in for()s still causing problems Josh Holtrop 2010-10-06 21:32:39 +00:00
  • ef769f7b4c fixed ForNode::evaluate() recursing properly Josh Holtrop 2010-10-06 21:18:05 +00:00
  • 84e4569383 added new control keywords and identifiers to vim syntax file Josh Holtrop 2010-10-06 21:10:16 +00:00
  • 4f6af31fc0 bool expressions were being evaluated backwards... whoops Josh Holtrop 2010-10-06 21:05:41 +00:00
  • 5dbe3c6d8f restored missing GREATER token (whoops), added column tracking to lexer Josh Holtrop 2010-10-06 20:54:36 +00:00
  • c4fc36bb5c added <= and >= operators Josh Holtrop 2010-10-06 20:36:48 +00:00
  • 700e47901b merged branch scene-file-parsing into trunk Josh Holtrop 2010-10-06 20:21:48 +00:00
  • d84fc2a96f actually saving off the parsed shapes helps a lot Josh Holtrop 2010-10-06 20:17:40 +00:00
  • 1dc370c99f fixed NumberNode and VectorNode "direct" bugs Josh Holtrop 2010-10-06 19:27:54 +00:00
  • 4d488b9e55 moved Node::evaluateChildren() to nodes.cc, added EvaluatePropagateNode support Josh Holtrop 2010-10-06 17:54:54 +00:00
  • 18886ef767 reworked ForNode evaluation() Josh Holtrop 2010-10-06 17:42:37 +00:00
  • f36c1fa60f added evaluate() method for all non-scripting nodes, made evaluateChildren() recursive Josh Holtrop 2010-10-06 16:32:27 +00:00
  • 793c7afb2d removed DEC_NUMBER parsing token and IntegerNode node, replaced with NumberNode Josh Holtrop 2010-10-06 15:48:33 +00:00
  • 04022756e5 added NodeRef typedef Josh Holtrop 2010-10-06 15:41:47 +00:00
  • b851c3be98 added Node::evaluate(parent) Josh Holtrop 2010-10-06 15:38:25 +00:00
  • 74f27c2076 removed processNode() and processChildren() Josh Holtrop 2010-10-04 21:47:07 +00:00
  • e23b762a01 evaluating stmt_expression's in processGeneralItems() Josh Holtrop 2010-10-04 21:27:47 +00:00
  • 01a713af98 added Scene::processForNode() to process for nodes Josh Holtrop 2010-10-04 21:26:12 +00:00
  • 71e40b0277 added stmt_expression rule to parser, added to general_items Josh Holtrop 2010-10-04 20:54:47 +00:00
  • 91ea5a20e0 added ShapeRef typedef, added Scene::processGeneralItems() Josh Holtrop 2010-10-04 20:47:39 +00:00
  • 7014605fe3 added parser_scope global, added local assignments and local declarations to parser, reworked Scope class to use get(), putLocal(), and putGlobal() methods Josh Holtrop 2010-10-04 19:54:43 +00:00
  • e2569c0a54 added util/Scope.h Josh Holtrop 2010-10-01 15:49:40 +00:00
  • cd2f565df3 introduced ScaleScalarNode() node type to avoid evaluating expression multiple times Josh Holtrop 2010-10-01 15:01:51 +00:00
  • 741ca57e11 added assignment expressions, for loop nodes, boolean expressions, ForNode class, BoolExpressionNode class, AssignmentNode class Josh Holtrop 2010-09-29 21:33:22 +00:00
  • 442a7bdeda added VARREF in lexer matching $[a-zA-Z_][a-zA-Z_0-9]*, added VarRefNode class Josh Holtrop 2010-09-29 20:59:26 +00:00
  • 35d6e536ae removed optional negative sign preceding number literals in lexer since it was interfering with minus operator with no whitespace Josh Holtrop 2010-09-29 20:55:02 +00:00
  • 26d8d1a081 fixed NumberNode storing the expression as a child node Josh Holtrop 2010-09-29 20:33:11 +00:00
  • f54446bd6a fixed Ngon using an expression for n_sides and implementing getInteger() Josh Holtrop 2010-09-29 20:16:33 +00:00
  • bd60471dfa fixed VectorNode storing expression nodes as children instead of class members; fixed JitterNode not implementing getInteger() Josh Holtrop 2010-09-29 20:09:36 +00:00
  • 83fd083af8 removed annoying consts Josh Holtrop 2010-09-29 19:58:21 +00:00
  • 1afa2b6510 fixed parser/nodes.h node classes not specifying "const" when overriding methods Josh Holtrop 2010-09-29 19:47:38 +00:00
  • 2f825f29f9 moved computation of numbers and vectors from parser.yy to Scene-load.cc Josh Holtrop 2010-09-29 19:30:14 +00:00
  • 36d59ba575 changed elapsed time output to "Render time" Josh Holtrop 2010-09-29 15:32:59 +00:00
  • 106c009731 messing with scenes/dw.fart more Josh Holtrop 2010-09-28 20:48:19 +00:00
  • 20017370f0 added expression production to grammar, changed grammar refs from number to expression, added BinOpNode class, currently segfaulting :( Josh Holtrop 2010-09-28 20:39:42 +00:00
  • cb907de438 cut scene-file-scripting branch Josh Holtrop 2010-09-28 20:38:17 +00:00
  • ecd5f44207 messing with scenes/dw.fart more Josh Holtrop 2010-09-28 19:49:14 +00:00
  • e5e4f991fb added optional block following shape references which can contain transforms or materials specific to the shape instance Josh Holtrop 2010-09-28 19:31:26 +00:00
  • f67707e666 messing with scenes/dw.fart Josh Holtrop 2010-09-28 19:05:46 +00:00
  • ad6ef8f315 moved some Matrix and Transform functionality into header files Josh Holtrop 2010-09-28 18:18:42 +00:00
  • 9fd9c5774e removed a few emtpy Vector x; statements Josh Holtrop 2010-09-28 17:53:31 +00:00
  • 835a0c968f moved a bunch of functionality from Ray.cc and Color.cc into Ray.h and Color.h Josh Holtrop 2010-09-28 17:16:39 +00:00
  • 3f0d6cd83e moved most Vector functionality into the header so it could be inlined Josh Holtrop 2010-09-28 16:55:39 +00:00
  • 9e4191fb61 added AABB class, calculating AABB in Extrude objects, added Extrude intersect() optimization to throw out rays not hitting the AABB Josh Holtrop 2010-09-28 16:37:27 +00:00
  • 437fa8b07a added Box intersect() optimization... ~2% faster Josh Holtrop 2010-09-28 15:52:52 +00:00
  • 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 Josh Holtrop 2010-09-28 14:22:25 +00:00
  • f337831df6 updated todo Josh Holtrop 2010-09-28 02:30:32 +00:00
  • 1544ecb311 updated .todo Josh Holtrop 2010-09-27 21:23:36 +00:00
  • 02077ffc7c added cutout plane to dw logo scene Josh Holtrop 2010-09-27 18:49:25 +00:00
  • 16b991cd85 fixed extrudes to be translated so entire DW logo is lined up Josh Holtrop 2010-09-27 18:30:28 +00:00
  • 1d9dfd6858 fixed cyl offsets in DW logo to avoid 0-thickness subtracts Josh Holtrop 2010-09-27 15:13:17 +00:00
  • e42599612f added DW logo scene file Josh Holtrop 2010-09-26 21:38:43 +00:00
  • 42c669fe4a merged in parser-comments branch Josh Holtrop 2010-07-15 17:15:45 +00:00
  • 28382777ac updated .todo Josh Holtrop 2010-07-15 17:10:54 +00:00
  • 01671e9486 added vim syntax for comments, added sample comments to scene file Josh Holtrop 2010-07-15 17:10:10 +00:00
  • a4e85f8eff added comments to lexer Josh Holtrop 2010-07-15 17:04:12 +00:00
  • 4cd288a66f cut parser-comments branch Josh Holtrop 2010-07-15 17:00:24 +00:00
  • 838cddcbb2 added shape-definitions sample scene Josh Holtrop 2010-07-09 20:07:31 +00:00
  • a92a84ac96 updated .todo Josh Holtrop 2010-07-09 19:45:45 +00:00
  • 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 Josh Holtrop 2010-07-09 19:37:05 +00:00
  • b4a2c8ef8e allowing transform blocks inside boolean shapes, but using a shape reference to a boolean shape does not propagate transform properly Josh Holtrop 2010-07-09 18:33:26 +00:00
  • fc2c62d5ac added shape vim keyword Josh Holtrop 2010-07-09 17:18:07 +00:00
  • c1f39da3e2 added shape definition processing and shape cloning capabilities Josh Holtrop 2010-07-09 17:11:14 +00:00
  • 5308913bdb added shape definitions into parser, not using them yet Josh Holtrop 2010-07-09 16:35:16 +00:00
  • 340742d27b added command-line options --ambient-occlusion and --preview, console displays max depth parameter Josh Holtrop 2010-07-09 16:18:51 +00:00
  • 17d69c54ce Polygon objects now prune adjacent points that are the same -- no more fuzzies in extrudes with offsets of 0 Josh Holtrop 2010-07-09 14:29:17 +00:00
  • d2b37a1687 updated extrudes scene, fixed Extrude objects to return backfaces so that boolean objects work properly Josh Holtrop 2010-07-08 19:01:00 +00:00
  • 53ebaeec3e end caps on extrudes working! Josh Holtrop 2010-07-08 18:33:39 +00:00
  • da47ae6fd3 fixed rendering of Extrude edges... caps still not working Josh Holtrop 2010-07-08 17:09:51 +00:00
  • d0fe38566c added mult() and div() to Vector Josh Holtrop 2010-07-08 16:55:30 +00:00
  • 9546c8dde4 updated some Vector operations and made them member functions Josh Holtrop 2010-07-08 16:39:34 +00:00
  • cb4c84ee66 Extrude properly sorts returned intersections Josh Holtrop 2010-07-08 15:36:22 +00:00
  • 9bed134733 sorting Extrude intersection results, still buggy intersect() though Josh Holtrop 2010-07-02 18:38:11 +00:00
  • 0b36fa79a0 added some keywords to vim syntax file Josh Holtrop 2010-07-02 18:37:50 +00:00
  • 7bac2fb076 added Polygon::add(), Polygon::containsPoint(); initial attempt at rendering Extrude objects Josh Holtrop 2010-07-02 16:14:46 +00:00
  • b51d11d043 catch a few error conditions for extrudes and polygons Josh Holtrop 2010-07-01 21:24:39 +00:00
  • 4c5444f053 creating polygons for extrude objects, ngon takes radius parameter Josh Holtrop 2010-07-01 20:35:20 +00:00
  • 7d844667c3 added Extrude and Polygon classes, still in progress Josh Holtrop 2010-07-01 20:04:44 +00:00
  • 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>") Josh Holtrop 2010-07-01 15:14:59 +00:00
  • d6c0bf7a25 updated die.fart Josh Holtrop 2010-07-01 14:18:36 +00:00
  • 7a3ed0213b flush stdout after writing % complete instead of waiting for line buffering Josh Holtrop 2010-07-01 13:51:20 +00:00
  • 781b46dcd4 display percent of image complete on command line Josh Holtrop 2010-06-30 16:05:42 +00:00
  • 5b4a0692e3 updated .todo Josh Holtrop 2010-06-29 20:41:59 +00:00
  • 96f2b7d276 added ambient_occlusion global scene option to parser and vim keywords; added ambient_occlusion scene file Josh Holtrop 2010-06-29 19:37:53 +00:00
  • f5ac18d34f doing many more samples for ambient occlusion looks better Josh Holtrop 2010-06-29 18:13:19 +00:00
  • 77e99ac5a5 added initial ambient occlusion attempt... but don't like it Josh Holtrop 2010-06-29 17:44:36 +00:00
  • c115dec69b added ambient parameter in global options{} for parser to set scene's global ambient color Josh Holtrop 2010-06-29 15:39:35 +00:00
  • 70a5ef74d4 updated .todo Josh Holtrop 2010-06-29 15:02:24 +00:00
  • 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... Josh Holtrop 2010-06-29 14:59:44 +00:00
  • 57a4e6ed8a trying new jitter method for soft shadows, getting better Josh Holtrop 2010-07-13 06:35:45 +00:00
  • 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 Josh Holtrop 2010-06-25 18:12:00 +00:00
  • 1af787b9ab added jitter and radius parameters to light objects; not using them yet Josh Holtrop 2010-06-25 16:37:17 +00:00