Commit Graph
72 Commits
Author SHA1 Message Date
Josh Holtrop 35d6e536ae removed optional negative sign preceding number literals in lexer since it was interfering with minus operator with no whitespace
git-svn-id: svn://anubis/fart/branches/scene-file-scripting@324 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-09-29 20:55:02 +00:00
Josh Holtrop 26d8d1a081 fixed NumberNode storing the expression as a child node
git-svn-id: svn://anubis/fart/branches/scene-file-scripting@323 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-09-29 20:33:11 +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 bd60471dfa fixed VectorNode storing expression nodes as children instead of class members; fixed JitterNode not implementing getInteger()
git-svn-id: svn://anubis/fart/branches/scene-file-scripting@321 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-09-29 20:09:36 +00:00
Josh Holtrop 83fd083af8 removed annoying consts
git-svn-id: svn://anubis/fart/branches/scene-file-scripting@320 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-09-29 19:58:21 +00:00
Josh Holtrop 1afa2b6510 fixed parser/nodes.h node classes not specifying "const" when overriding methods
git-svn-id: svn://anubis/fart/branches/scene-file-scripting@319 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2010-09-29 19:47:38 +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 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 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 72a5023539 updated Makefiles to not print the "*.dep: No such file or directory" warnings
git-svn-id: svn://anubis/fart/trunk@204 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-03-10 01:54:23 +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 31e2604f98 Scene-load.cc handling material definitions
git-svn-id: svn://anubis/fart/trunk@178 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-03-03 02:56:33 +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 32fcafc687 filled out Scene::processBool() to handle all boolean shapes; added Node::isShape() virtual function to determine whether a node object represents a shape node
git-svn-id: svn://anubis/fart/trunk@167 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-28 21:22:30 +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
Josh Holtrop a8e898e445 changed DEC_NUMBER from generating a NumberNode to an IntegerNode in parser.lex
git-svn-id: svn://anubis/fart/trunk@122 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-17 14:15:34 +00:00
Josh Holtrop 0fea65d4ef added transform_block to parser, {Translate,Rotate,Scale}BlockNode nodes
git-svn-id: svn://anubis/fart/trunk@118 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-17 04:06:07 +00:00
Josh Holtrop 0e22a21637 added TranslateNode, RotateNode, and ScaleNode
git-svn-id: svn://anubis/fart/trunk@117 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-17 03:25:53 +00:00
Josh Holtrop 2a816c1c1a added parser/parser.h for a common YYSTYPE definition location
git-svn-id: svn://anubis/fart/trunk@116 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-17 02:13:24 +00:00
Josh Holtrop ecc06433fc flex output compiling with g++
git-svn-id: svn://anubis/fart/trunk@115 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-17 01:37:39 +00:00
Josh Holtrop 6e67597dc7 commit before attempting to compile flex scanner with C++ instead of C
git-svn-id: svn://anubis/fart/trunk@114 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-17 01:29:25 +00:00
Josh Holtrop 3aed1c21ca filled out tree-building code for all parser nodes
git-svn-id: svn://anubis/fart/trunk@113 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-17 00:58:08 +00:00
Josh Holtrop 70c4785b43 fixed up bison conflicts in grammar
git-svn-id: svn://anubis/fart/trunk@111 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-16 21:20:05 +00:00
Josh Holtrop 71a55378c4 fixed a few compiler warnings, have a few more to go
git-svn-id: svn://anubis/fart/trunk@110 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-16 21:06:19 +00:00
Josh Holtrop 69c5fdd1e6 updated parser to compile again, still have non-virtual destructor compiler warnings
git-svn-id: svn://anubis/fart/trunk@109 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-16 20:51:59 +00:00
Josh Holtrop 4d5faf8362 updating parser nodes, introducing conflicts, still not compiling
git-svn-id: svn://anubis/fart/trunk@108 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-16 20:19:01 +00:00