96 Commits

Author SHA1 Message Date
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
e2424337d6 moved all refptr functions into util/refptr.h since they are templated, deleted util/refptr.cc, updated test/tests.cc to test refptr functionality
git-svn-id: svn://anubis/fart/trunk@92 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-10 00:10:04 +00:00
Josh Holtrop
498d35274d fixed up util/refptr
git-svn-id: svn://anubis/fart/trunk@91 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-09 23:51:00 +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
31a7f0fedf updated subdir Makefiles, added parser directory and parser/Makefile
git-svn-id: svn://anubis/fart/trunk@78 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-04 18:35:32 +00:00
Josh Holtrop
d421a652e4 fixed compile warning in util/Color for return value of operator+= and -=
git-svn-id: svn://anubis/fart/trunk@77 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-02-02 15:29:01 +00:00
Josh Holtrop
6fbdf46122 fixed bug in util/Vector::reflect(), Phong shading getting much closer
git-svn-id: svn://anubis/fart/trunk@73 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-31 00:17:09 +00:00
Josh Holtrop
41b4354d52 trying to get Phong shading model working, having very large color values come back though
git-svn-id: svn://anubis/fart/trunk@72 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-30 20:53:13 +00:00
Josh Holtrop
8677680577 added main/Lighting module, added operator-() to util/Vector, added m_shininess to main/Light
git-svn-id: svn://anubis/fart/trunk@71 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-30 20:28:05 +00:00
Josh Holtrop
18c0c8d45f added diffuse and specular colors to Material, switched all "private:" to "protected:"
git-svn-id: svn://anubis/fart/trunk@69 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-30 02:26:46 +00:00
Josh Holtrop
f087488b39 using Color instead of Vector where appropriate, updated main/Light to use diffuse and specular lights
git-svn-id: svn://anubis/fart/trunk@67 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-30 01:25:57 +00:00
Josh Holtrop
08a0047ba8 added proj() and reflect() to util/Vector, changed util/Transform to use Vector::proj() in lookAt()
git-svn-id: svn://anubis/fart/trunk@66 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-30 00:18:20 +00:00
Josh Holtrop
866f22a637 added operator*(Vector,double) and operator/(Vector,double) to util/Vector; added lookAt() to util/Transform (needs testing)
git-svn-id: svn://anubis/fart/trunk@63 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-28 23:47:46 +00:00
Josh Holtrop
9041ec6a1c shapes/Shape.h now including specific shape headers (after base class definition), test/tests.cc fixed compiler warning, main/Scene drawing demo Plane, util/Transform not needlessly re-initializing m_matrix
git-svn-id: svn://anubis/fart/trunk@62 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-28 21:41:19 +00:00
Josh Holtrop
7a4bb7dbc2 added LinearSolver to util/Solver module; added shapes/Plane module
git-svn-id: svn://anubis/fart/trunk@59 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-28 15:02:05 +00:00
Josh Holtrop
47cf177a15 removed svn:executable for some files
git-svn-id: svn://anubis/fart/trunk@55 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-27 18:28:38 +00:00
Josh Holtrop
e8fd42f81f broke traceRay() out into getRayHits()
git-svn-id: svn://anubis/fart/trunk@51 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-27 00:11:14 +00:00
Josh Holtrop
e0d545a6b7 added util/Color module, updated Light and PointLight
git-svn-id: svn://anubis/fart/trunk@49 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-26 20:08:42 +00:00
Josh Holtrop
7d7ec130e0 added operators +, - to Vector, added inverse transform instance variable to shapes/Shape, changed Sphere to use its inverse transform when calculating intersections and normals, removed simplistic lighting from main/Scene
git-svn-id: svn://anubis/fart/trunk@47 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-26 14:02:15 +00:00
Josh Holtrop
d88f1ab5fd fixed bug in QuadraticSolver, cheap lighting working
git-svn-id: svn://anubis/fart/trunk@45 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-23 23:56:39 +00:00
Josh Holtrop
761925220b added getNormalAt() to Shape & Sphere, trying to get basic lighting
git-svn-id: svn://anubis/fart/trunk@44 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-23 18:09:27 +00:00
Josh Holtrop
bd12e9798f Transform::rotate() using radians instead of degrees in sin(), cos() calls
git-svn-id: svn://anubis/fart/trunk@42 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-23 16:47:08 +00:00
Josh Holtrop
20eafaf9f4 fixed view plane distance calculation to use tan() and convert degrees to radians
git-svn-id: svn://anubis/fart/trunk@41 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-23 16:44:39 +00:00
Josh Holtrop
97b9fa9eab added getInverse() to util/Transform, fixed transform_*() functions
git-svn-id: svn://anubis/fart/trunk@39 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-23 15:28:53 +00:00
Josh Holtrop
7d461477b3 added operator<<(ostream, Ray) to util/Ray, main/Scene now calculating rays
git-svn-id: svn://anubis/fart/trunk@38 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-23 15:15:35 +00:00
Josh Holtrop
f03b19a022 added messages to main/Scene, util/Matrix constructor sets matrix to identity
git-svn-id: svn://anubis/fart/trunk@37 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-23 14:57:47 +00:00
Josh Holtrop
73cdd1a5a1 improving Ray, Sphere, Solver, Scene a bit
git-svn-id: svn://anubis/fart/trunk@35 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-23 14:37:18 +00:00
Josh Holtrop
bdb648b84f added transform_normal() to util/Transform
git-svn-id: svn://anubis/fart/trunk@34 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-23 04:15:25 +00:00
Josh Holtrop
63d56c5e43 renamed transformation operations in util/Transform for clarity
git-svn-id: svn://anubis/fart/trunk@32 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-23 02:13:17 +00:00
Josh Holtrop
277252ef77 added transformation operations to util/Transform
git-svn-id: svn://anubis/fart/trunk@31 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-23 00:27:29 +00:00
Josh Holtrop
2deee25004 added operator%() to util/Matrix
git-svn-id: svn://anubis/fart/trunk@30 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-23 00:14:22 +00:00
Josh Holtrop
0044dbb544 added Vector(double,double,double) constructor, filled in rotate() in Transform
git-svn-id: svn://anubis/fart/trunk@29 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-22 21:30:35 +00:00
Josh Holtrop
cd9530d21b filled in scale() transformation in util/Transform
git-svn-id: svn://anubis/fart/trunk@28 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-22 20:36:05 +00:00
Josh Holtrop
13d7d90b87 added operator*=() to util/Matrix
git-svn-id: svn://anubis/fart/trunk@27 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-22 20:31:13 +00:00
Josh Holtrop
1454fe8c2e added --help option, updated util/Transform
git-svn-id: svn://anubis/fart/trunk@26 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-22 03:28:51 +00:00
Josh Holtrop
0c8597f31b slight format changes to util/Matrix
git-svn-id: svn://anubis/fart/trunk@18 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-20 14:22:22 +00:00
Josh Holtrop
2adb782b24 updated Makefile, tests.cc, util/Matrix
git-svn-id: svn://anubis/fart/trunk@16 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-20 04:02:10 +00:00
Josh Holtrop
746b17227c added operator<<(std::ostream, Matrix) to util/Matrix
git-svn-id: svn://anubis/fart/trunk@15 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-20 03:46:11 +00:00
Josh Holtrop
160d6998d6 filled out operator==(Matrix, Matrix) using FP_EQ()
git-svn-id: svn://anubis/fart/trunk@14 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-20 03:37:17 +00:00
Josh Holtrop
151a8895a8 updated
git-svn-id: svn://anubis/fart/trunk@13 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-20 01:42:05 +00:00
Josh Holtrop
f2e9f5293a added calculateInverse() to util/Matrix module
git-svn-id: svn://anubis/fart/trunk@11 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-20 01:29:18 +00:00
Josh Holtrop
aec4a17e45 added determinant() to util/Matrix module
git-svn-id: svn://anubis/fart/trunk@10 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-20 00:12:06 +00:00
Josh Holtrop
997a8f12d1 updated Matrix, Transform, main Makefile
git-svn-id: svn://anubis/fart/trunk@7 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-18 16:51:51 +00:00
Josh Holtrop
0e93e2c76d updated Makefile, main/fart.cc, util/Vector.h
git-svn-id: svn://anubis/fart/trunk@5 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-18 02:10:23 +00:00
Josh Holtrop
206ede3304 initial import from /gvsu/cs658 repository
git-svn-id: svn://anubis/fart/trunk@2 7f9b0f55-74a9-4bce-be96-3c2cd072584d
2009-01-18 01:44:28 +00:00