Josh Holtrop
|
48e2900e1f
|
added STRING token type to parser/lexer, removed unused DQUOTE/SQUOTE tokens
git-svn-id: svn://anubis/fart/trunk@382 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-10-13 20:36:56 +00:00 |
|
Josh Holtrop
|
3594dace7f
|
added "refraction" to parser, added RefractionNode node type
git-svn-id: svn://anubis/fart/trunk@373 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-10-11 15:36:02 +00:00 |
|
Josh Holtrop
|
15e4aa1dc0
|
allow parenthesizing boolean expressions as well as normal expressions
git-svn-id: svn://anubis/fart/trunk@370 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-10-08 19:26:47 +00:00 |
|
Josh Holtrop
|
eb7de55ea9
|
added while() loop... really just creates a ForNode with empty first and third part
git-svn-id: svn://anubis/fart/trunk@368 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-10-08 15:09:31 +00:00 |
|
Josh Holtrop
|
4e3ce00056
|
reworked expressions to implement precedence properly
git-svn-id: svn://anubis/fart/trunk@367 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-10-08 01:59:30 +00:00 |
|
Josh Holtrop
|
45a28525a0
|
added ^, &&, and || operators
git-svn-id: svn://anubis/fart/trunk@363 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-10-07 21:05:30 +00:00 |
|
Josh Holtrop
|
78705024e8
|
changed assignment operator from := to = and equals operator from = to ==
git-svn-id: svn://anubis/fart/trunk@362 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-10-07 20:28:21 +00:00 |
|
Josh Holtrop
|
654be9058d
|
added function calls to scene files
git-svn-id: svn://anubis/fart/trunk@361 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-10-07 18:53:42 +00:00 |
|
Josh Holtrop
|
240384569d
|
added ElseNode, handling elsif and else correctly
git-svn-id: svn://anubis/fart/trunk@358 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-10-07 17:10:27 +00:00 |
|
Josh Holtrop
|
e3087bb26c
|
making parser flat
git-svn-id: svn://anubis/fart/branches/flat-parser@354 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-10-07 16:37:02 +00:00 |
|
Josh Holtrop
|
9712dab456
|
added "if" parser rule and IfNode class, "if_more" still in progress... changed ForNode::evaluate() and IfNode::evaluate() to use Node::evaluateChildren()
git-svn-id: svn://anubis/fart/trunk@352 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-10-07 15:23:15 +00:00 |
|
Josh Holtrop
|
fc33024b28
|
added MOD operator, converting operands to ints
git-svn-id: svn://anubis/fart/trunk@351 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-10-07 14:43:56 +00:00 |
|
Josh Holtrop
|
c4fc36bb5c
|
added <= and >= operators
git-svn-id: svn://anubis/fart/trunk@345 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-10-06 20:36:48 +00:00 |
|
Josh Holtrop
|
793c7afb2d
|
removed DEC_NUMBER parsing token and IntegerNode node, replaced with NumberNode
git-svn-id: svn://anubis/fart/branches/scene-file-scripting@337 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-10-06 15:48:33 +00:00 |
|
Josh Holtrop
|
01a713af98
|
added Scene::processForNode() to process for nodes
git-svn-id: svn://anubis/fart/branches/scene-file-scripting@332 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-10-04 21:26:12 +00:00 |
|
Josh Holtrop
|
71e40b0277
|
added stmt_expression rule to parser, added to general_items
git-svn-id: svn://anubis/fart/branches/scene-file-scripting@331 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-10-04 20:54:47 +00:00 |
|
Josh Holtrop
|
7014605fe3
|
added parser_scope global, added local assignments and local declarations to parser, reworked Scope class to use get(), putLocal(), and putGlobal() methods
git-svn-id: svn://anubis/fart/branches/scene-file-scripting@329 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-10-04 19:54:43 +00:00 |
|
Josh Holtrop
|
cd2f565df3
|
introduced ScaleScalarNode() node type to avoid evaluating expression multiple times
git-svn-id: svn://anubis/fart/branches/scene-file-scripting@327 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-10-01 15:01:51 +00:00 |
|
Josh Holtrop
|
741ca57e11
|
added assignment expressions, for loop nodes, boolean expressions, ForNode class, BoolExpressionNode class, AssignmentNode class
git-svn-id: svn://anubis/fart/branches/scene-file-scripting@326 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-09-29 21:33:22 +00:00 |
|
Josh Holtrop
|
442a7bdeda
|
added VARREF in lexer matching $[a-zA-Z_][a-zA-Z_0-9]*, added VarRefNode class
git-svn-id: svn://anubis/fart/branches/scene-file-scripting@325 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-09-29 20:59:26 +00:00 |
|
Josh Holtrop
|
f54446bd6a
|
fixed Ngon using an expression for n_sides and implementing getInteger()
git-svn-id: svn://anubis/fart/branches/scene-file-scripting@322 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-09-29 20:16:33 +00:00 |
|
Josh Holtrop
|
2f825f29f9
|
moved computation of numbers and vectors from parser.yy to Scene-load.cc
git-svn-id: svn://anubis/fart/branches/scene-file-scripting@318 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-09-29 19:30:14 +00:00 |
|
Josh Holtrop
|
20017370f0
|
added expression production to grammar, changed grammar refs from number to expression, added BinOpNode class, currently segfaulting :(
git-svn-id: svn://anubis/fart/branches/scene-file-scripting@315 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-09-28 20:39:42 +00:00 |
|
Josh Holtrop
|
e5e4f991fb
|
added optional block following shape references which can contain transforms or materials specific to the shape instance
git-svn-id: svn://anubis/fart/trunk@312 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-09-28 19:31:26 +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
|
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
|
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
|
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
|
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
|
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
|
ef003f6100
|
added exposure equations to avoid saturation; default exposure 1.0; added "exposure" keyword to global scene options in parser
git-svn-id: svn://anubis/fart/trunk@250 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2010-06-25 04:05:34 +00:00 |
|
Josh Holtrop
|
97392f2271
|
updated parser a little, still figuring out why the server process exits early
git-svn-id: svn://anubis/fart/trunk@231 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2009-04-07 12:42:45 +00:00 |
|
Josh Holtrop
|
5590c533ce
|
Fixed boolean objects to determine if rays start inside or outside the boolean; changed constructors to accept a list of shapes instead of just two shapes; changed parser to accept any number of top-level shapes inside of a boolean shape block; changed scenes/die.fart to reflect this change (a drastic simplification)
git-svn-id: svn://anubis/fart/trunk@215 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2009-03-15 19:51:21 +00:00 |
|
Josh Holtrop
|
9f9ce1a8f5
|
added maximum depth command-line argument (-d) and scene option (max_depth); prettified elapsed time output when greater than 60 seconds
git-svn-id: svn://anubis/fart/trunk@203 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2009-03-10 00:01:21 +00:00 |
|
Josh Holtrop
|
b50c4de1bc
|
added parser, nodes, Scene-load support for transparency in materials
git-svn-id: svn://anubis/fart/trunk@186 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2009-03-05 20:04:13 +00:00 |
|
Josh Holtrop
|
bb5eb07c75
|
fixed bug in material definitions, added them to cyls.fart, they are working now!
git-svn-id: svn://anubis/fart/trunk@179 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2009-03-03 03:06:56 +00:00 |
|
Josh Holtrop
|
fce4d82a73
|
added material definitions to parser
git-svn-id: svn://anubis/fart/trunk@177 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2009-03-03 02:30:43 +00:00 |
|
Josh Holtrop
|
10500d08aa
|
fixed parser bug with sphere_items, made VFOVNode inherit from NumberNode, updated sample scene infinity.fart, reading scene from a file appears to be working!
git-svn-id: svn://anubis/fart/trunk@175 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2009-03-02 00:25:41 +00:00 |
|
Josh Holtrop
|
65c447f85a
|
filled out Scene::processLight(), added color keyword to light specification
git-svn-id: svn://anubis/fart/trunk@171 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2009-03-01 22:41:23 +00:00 |
|
Josh Holtrop
|
bb07e12193
|
added Scene::process{Camera,Options,TransformBlock}()
git-svn-id: svn://anubis/fart/trunk@168 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2009-02-28 22:59:11 +00:00 |
|
Josh Holtrop
|
e40677ba77
|
added "cyl" token to parser and parser rules for cyl object
git-svn-id: svn://anubis/fart/trunk@165 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2009-02-28 20:32:23 +00:00 |
|
Josh Holtrop
|
1924bea5cf
|
added color token to parser for specifying both diffuse and ambient color in a material, added ColorNode, switched color nodes to inherit from VectorNode
git-svn-id: svn://anubis/fart/trunk@163 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2009-02-28 18:25:12 +00:00 |
|
Josh Holtrop
|
395161eb66
|
parser.lex keeping track of line number now
git-svn-id: svn://anubis/fart/trunk@129 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2009-02-18 02:10:27 +00:00 |
|
Josh Holtrop
|
76260a7696
|
bison yyerror() passing yylloc to errFunc() but line number is coming out as 1
git-svn-id: svn://anubis/fart/trunk@128 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2009-02-18 01:57:50 +00:00 |
|
Josh Holtrop
|
aaaac6d887
|
added location directives to flex and bison sources
git-svn-id: svn://anubis/fart/trunk@127 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2009-02-18 01:35:09 +00:00 |
|
Josh Holtrop
|
b9cc1fe9f9
|
added Scene::processNode() and Scene::processChildren()
git-svn-id: svn://anubis/fart/trunk@126 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2009-02-18 01:10:57 +00:00 |
|
Josh Holtrop
|
b0014e34d1
|
made parsed_scene_node static to parser, parse() returns refptr<Node> now
git-svn-id: svn://anubis/fart/trunk@124 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2009-02-17 23:31:19 +00:00 |
|
Josh Holtrop
|
f3e522262b
|
removed knowledge of domain types from parser, removed process() from Node, added a global refptr<Node> object, took parse(fileName) out of Scene class
git-svn-id: svn://anubis/fart/trunk@123 7f9b0f55-74a9-4bce-be96-3c2cd072584d
|
2009-02-17 22:59:53 +00:00 |
|