9712dab456
added "if" parser rule and IfNode class, "if_more" still in progress... changed ForNode::evaluate() and IfNode::evaluate() to use Node::evaluateChildren()
Josh Holtrop2010-10-07 15:23:15 +00:00
fc33024b28
added MOD operator, converting operands to ints
Josh Holtrop2010-10-07 14:43:56 +00:00
c4d8327665
formatting... for()s in for()s still causing problems
Josh Holtrop2010-10-06 21:32: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 Holtrop2010-10-04 19:54:43 +00:00
cd2f565df3
introduced ScaleScalarNode() node type to avoid evaluating expression multiple times
Josh Holtrop2010-10-01 15:01:51 +00:00
741ca57e11
added assignment expressions, for loop nodes, boolean expressions, ForNode class, BoolExpressionNode class, AssignmentNode class
Josh Holtrop2010-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 Holtrop2010-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 Holtrop2010-09-29 20:55:02 +00:00
26d8d1a081
fixed NumberNode storing the expression as a child node
Josh Holtrop2010-09-29 20:33:11 +00:00
f54446bd6a
fixed Ngon using an expression for n_sides and implementing getInteger()
Josh Holtrop2010-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 Holtrop2010-09-29 20:09:36 +00:00
20017370f0
added expression production to grammar, changed grammar refs from number to expression, added BinOpNode class, currently segfaulting :(
Josh Holtrop2010-09-28 20:39:42 +00:00
e5e4f991fb
added optional block following shape references which can contain transforms or materials specific to the shape instance
Josh Holtrop2010-09-28 19:31:26 +00:00
ad6ef8f315
moved some Matrix and Transform functionality into header files
Josh Holtrop2010-09-28 18:18:42 +00:00
9fd9c5774e
removed a few emtpy Vector x; statements
Josh Holtrop2010-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 Holtrop2010-09-28 17:16:39 +00:00
3f0d6cd83e
moved most Vector functionality into the header so it could be inlined
Josh Holtrop2010-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 Holtrop2010-09-28 16:37:27 +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 Holtrop2010-09-28 14:22:25 +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 Holtrop2010-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 Holtrop2010-07-09 18:33:26 +00:00
5308913bdb
added shape definitions into parser, not using them yet
Josh Holtrop2010-07-09 16:35:16 +00:00
340742d27b
added command-line options --ambient-occlusion and --preview, console displays max depth parameter
Josh Holtrop2010-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 Holtrop2010-07-09 14:29:17 +00:00
d2b37a1687
updated extrudes scene, fixed Extrude objects to return backfaces so that boolean objects work properly
Josh Holtrop2010-07-08 19:01:00 +00:00
96f2b7d276
added ambient_occlusion global scene option to parser and vim keywords; added ambient_occlusion scene file
Josh Holtrop2010-06-29 19:37:53 +00:00
f5ac18d34f
doing many more samples for ambient occlusion looks better
Josh Holtrop2010-06-29 18:13:19 +00:00
77e99ac5a5
added initial ambient occlusion attempt... but don't like it
Josh Holtrop2010-06-29 17:44:36 +00:00
c115dec69b
added ambient parameter in global options{} for parser to set scene's global ambient color
Josh Holtrop2010-06-29 15:39:35 +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 Holtrop2010-06-29 14:59:44 +00:00
57a4e6ed8a
trying new jitter method for soft shadows, getting better
Josh Holtrop2010-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 Holtrop2010-06-25 18:12:00 +00:00
1af787b9ab
added jitter and radius parameters to light objects; not using them yet
Josh Holtrop2010-06-25 16:37:17 +00:00