51 Commits

Author SHA1 Message Date
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
Josh Holtrop
9849ba06b5 adding tree node classes, updated addChild() and added addChildren() to Node
git-svn-id: svn://anubis/fart/trunk@107 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-16 17:29:57 +00:00
Josh Holtrop
3014a39bb0 added parser/nodes.{cc,h}, broke compilation temporarily
git-svn-id: svn://anubis/fart/trunk@106 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-16 13:41:09 +00:00
Josh Holtrop
dcbdf4e2ec updated parser Makefile to include dependency information
git-svn-id: svn://anubis/fart/trunk@105 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-16 01:21:28 +00:00
Josh Holtrop
6f2851f279 yyparse() now a friend function to Scene, light constructors not taking position arguments any more
git-svn-id: svn://anubis/fart/trunk@104 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-12 03:56:09 +00:00
Josh Holtrop
c136bda827 added the_Color to Node, material gathering AMBIENT, DIFFUSE, SPECULAR color values
git-svn-id: svn://anubis/fart/trunk@103 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-12 03:07:22 +00:00
Josh Holtrop
ee64558db6 made parser/parser.yy:parse() a method of class Scene so no global g_scene is needed
git-svn-id: svn://anubis/fart/trunk@100 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-11 17:08:38 +00:00
Josh Holtrop
8b9b6332cc changed getPtr() to isNull() in util/refptr, filled in parser logic a lot more
git-svn-id: svn://anubis/fart/trunk@99 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-11 04:27:44 +00:00
Josh Holtrop
2f16235ed2 updating parser logic
git-svn-id: svn://anubis/fart/trunk@97 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-10 01:20:05 +00:00
Josh Holtrop
0fc1e468fe removed test directory, converted Shape's material handle to a refptr<Material> instead of a Material *, made refptr<T>::operator*() and operator->() const members
git-svn-id: svn://anubis/fart/trunk@96 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-10 01:09:07 +00:00
Josh Holtrop
2e82f9e2ea adding required arguments to shape constructors in scene description language
git-svn-id: svn://anubis/fart/trunk@95 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-10 00:52:38 +00:00
Josh Holtrop
0181e82653 added dereference and indirection operators to util/refptr, converted parser to use refptr<Node> as YYSTYPE
git-svn-id: svn://anubis/fart/trunk@94 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-10 00:37:49 +00:00
Josh Holtrop
c6e1a2c7e4 added refptr<T>::operator=(const T * ptr) method, including refptr in parser
git-svn-id: svn://anubis/fart/trunk@93 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-10 00:18:07 +00:00
Josh Holtrop
d34242252a added util/refptr module
git-svn-id: svn://anubis/fart/trunk@90 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-09 23:31:15 +00:00
Josh Holtrop
fc8a46853b added some setters to Scene, including some modules in parser, ready to do something with the parse results
git-svn-id: svn://anubis/fart/trunk@89 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-09 02:55:02 +00:00
Josh Holtrop
70eeff90fb added class node to parser to store parsed node types (YYSTYPE is now Node)
git-svn-id: svn://anubis/fart/trunk@88 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-09 00:24:19 +00:00
Josh Holtrop
c3e31eab4a added boolean shapes to parser
git-svn-id: svn://anubis/fart/trunk@86 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-08 23:57:57 +00:00
Josh Holtrop
f5dc4c7f93 updated parser rules a bit
git-svn-id: svn://anubis/fart/trunk@85 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-08 23:24:11 +00:00
Josh Holtrop
ba7190d7d8 working on parser
git-svn-id: svn://anubis/fart/trunk@84 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-08 19:42:55 +00:00
Josh Holtrop
80004438be added parser/preparser.cc
git-svn-id: svn://anubis/fart/trunk@83 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-05 03:13:28 +00:00
Josh Holtrop
afd0df3ce4 added LESS and GREATER to parser tokens
git-svn-id: svn://anubis/fart/trunk@82 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-04 20:41:47 +00:00
Josh Holtrop
dab2381fba parser modules now compiling and linking with main build process
git-svn-id: svn://anubis/fart/trunk@80 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-04 18:50:15 +00:00