84cb27fa6f 
								
							 
						 
						
							
							
								
								Allow passing intensity in PointLight constructor  
							
							 
							
							
							
						 
						
							2014-08-09 20:45:45 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c3da70cdd9 
								
							 
						 
						
							
							
								
								Clean up some dependencies between scene, material, and color  
							
							 
							
							
							
						 
						
							2014-08-09 20:34:23 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								48e35dfc81 
								
							 
						 
						
							
							
								
								Update material.{cc,hh}  
							
							 
							
							
							
						 
						
							2014-08-09 20:31:18 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								42bef33775 
								
							 
						 
						
							
							
								
								Get rid of Color implementation in old basics.cc  
							
							 
							
							
							
						 
						
							2014-08-09 20:24:45 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								b001ad2cf2 
								
							 
						 
						
							
							
								
								light.hh include in scene.hh  
							
							 
							
							
							
						 
						
							2014-08-09 20:24:18 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								f6680f993f 
								
							 
						 
						
							
							
								
								Clean up includes and old code in charles.cc  
							
							 
							
							
							
						 
						
							2014-08-09 20:24:11 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								161a635ab5 
								
							 
						 
						
							
							
								
								reader.hh  
							
							 
							
							... 
							
							
							
							Fix up includes, put it in charles namespace 
							
						 
						
							2014-08-09 20:24:00 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								080ee0d580 
								
							 
						 
						
							
							
								
								Remove Color and Vector3 from old basics  
							
							 
							
							
							
						 
						
							2014-08-09 20:23:23 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								3c3e707922 
								
							 
						 
						
							
							
								
								Light has a shared_ptr type, and an overridable Contribution()  
							
							 
							
							
							
						 
						
							2014-08-09 20:23:08 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								acdfb0fb60 
								
							 
						 
						
							
							
								
								Add PointLight in lightPoint.cc  
							
							 
							
							
							
						 
						
							2014-08-09 20:22:35 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								e1ded8a9ad 
								
							 
						 
						
							
							
								
								Clean up for Lights (and AmbientLights)  
							
							 
							
							
							
						 
						
							2014-08-09 20:04:42 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d085a192e8 
								
							 
						 
						
							
							
								
								Clean up basics::Color  
							
							 
							
							
							
						 
						
							2014-08-09 19:39:41 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								4b396cabe8 
								
							 
						 
						
							
							
								
								Move Color over to basics  
							
							 
							
							
							
						 
						
							2014-08-09 19:30:47 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								47ae52ed05 
								
							 
						 
						
							
							
								
								Woo Scene updates...  
							
							 
							
							
							
						 
						
							2014-08-09 12:26:12 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c49457a817 
								
							 
						 
						
							
							
								
								Implement Normalized, LinearCombination, and operator<< on Vector4s  
							
							 
							
							
							
						 
						
							2014-08-09 11:55:10 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								9645a09a6c 
								
							 
						 
						
							
							
								
								So much clean up for cameras  
							
							 
							
							
							
						 
						
							2014-08-09 11:26:17 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d10d219eb3 
								
							 
						 
						
							
							
								
								Comment out old Ray  
							
							 
							
							
							
						 
						
							2014-08-09 11:04:26 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								19dfb66301 
								
							 
						 
						
							
							
								
								Cleanup for Spheres  
							
							 
							
							
							
						 
						
							2014-08-09 11:04:17 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								590f10a756 
								
							 
						 
						
							
							
								
								Updates for Plane  
							
							 
							
							
							
						 
						
							2014-08-09 10:58:30 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								392871a1ee 
								
							 
						 
						
							
							
								
								Updates for Box  
							
							 
							
							
							
						 
						
							2014-08-09 10:54:00 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								70576c382a 
								
							 
						 
						
							
							
								
								Do all the clean up needed for Object  
							
							 
							
							
							
						 
						
							2014-08-09 10:42:49 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								2c2bf09140 
								
							 
						 
						
							
							
								
								Compiler errors in Box::DoIntersect, hidden until now...  
							
							 
							
							
							
						 
						
							2014-08-09 10:11:44 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								217c4709aa 
								
							 
						 
						
							
							
								
								Vector4's constructor takes default arguments  
							
							 
							
							
							
						 
						
							2014-08-09 10:08:44 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								baf40143b2 
								
							 
						 
						
							
							
								
								DoIntersect is an abstract method  
							
							 
							
							
							
						 
						
							2014-08-09 10:08:29 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								3846a1aa3a 
								
							 
						 
						
							
							
								
								Move Box intersection code to DoIntersect  
							
							 
							
							
							
						 
						
							2014-08-09 10:08:21 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d0d667d6d2 
								
							 
						 
						
							
							
								
								Object::Intersect  
							
							 
							
							... 
							
							
							
							A new intersect method that converts to object space before doing the intersection. Now all objects are at their own origin! 
							
						 
						
							2014-08-09 09:59:00 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								519eb347d1 
								
							 
						 
						
							
							
								
								Vector4 constructor from Matrix<4,1>  
							
							 
							
							
							
						 
						
							2014-08-09 09:57:35 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								43cb182aa7 
								
							 
						 
						
							
							
								
								Have to use operator() for Matrix<>::operator*  
							
							 
							
							... 
							
							
							
							Matrix<N,P> is a different class from Matrix<N,M> so Matrix<N,M> can't access protected member data on Matrix<N,P>. There must be a better way that having to do the multiplies requires for operator(). 
							
						 
						
							2014-08-09 09:57:09 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								9aa557293a 
								
							 
						 
						
							
							
								
								A Ray class in basics!  
							
							 
							
							
							
						 
						
							2014-08-09 09:33:22 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								b41cdb7186 
								
							 
						 
						
							
							
								
								Vector4 +, -, negation, and *  
							
							 
							
							... 
							
							
							
							+, -, and negation were easy. Multiplication is wacky because the Matrix class does it. So, to do binary * (not *=) I needed to dynamic_cast the resulting Matrix<4,1> to a Vector4&&. 
							
						 
						
							2014-08-09 09:32:48 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								a3d51f7cf3 
								
							 
						 
						
							
							
								
								TranslationMatrix() is not static  
							
							 
							
							
							
						 
						
							2014-08-09 09:02:04 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								9b6b6a20b7 
								
							 
						 
						
							
							
								
								Const versions of Vector4's X(), Y(), and Z()  
							
							 
							
							
							
						 
						
							2014-08-09 09:01:52 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								584d0326a9 
								
							 
						 
						
							
							
								
								Get rid of object's origin  
							
							 
							
							
							
						 
						
							2014-08-09 08:59:11 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								ab9ac5e963 
								
							 
						 
						
							
							
								
								Clean up constructors for Object and Sphere  
							
							 
							
							... 
							
							
							
							Use default arguments instead of multiple constructors. I forgot about those! Use Vector4s all around. 
							
						 
						
							2014-08-09 08:57:41 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								8ccfbc0498 
								
							 
						 
						
							
							
								
								Scalar multiplication Doxygen group  
							
							 
							
							
							
						 
						
							2014-08-09 08:31:37 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								cf57dfc51a 
								
							 
						 
						
							
							
								
								I give up on Normalization  
							
							 
							
							... 
							
							
							
							Compiler was complaining about casting between Vector4 and Matrix<4,1> so I just did the division by hand.
I bet operator* and operator/ are broken for Vector4s as well... 
							
						 
						
							2014-08-09 08:31:25 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								32292a45fa 
								
							 
						 
						
							
							
								
								Move EPSILON and MAX_DISTANCE back to basics.h  
							
							 
							
							
							
						 
						
							2014-08-09 08:30:29 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								fa3708edfb 
								
							 
						 
						
							
							
								
								Implement a bunch of the useful Vector operations  
							
							 
							
							
							
						 
						
							2014-08-08 23:05:38 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								9b076f1533 
								
							 
						 
						
							
							
								
								Implement more robust * and / for Matrix  
							
							 
							
							
							
						 
						
							2014-08-08 23:05:24 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								be15d553f1 
								
							 
						 
						
							
							
								
								Move EPSILON and MAX_DISTANCE to basics/basics.hh  
							
							 
							
							
							
						 
						
							2014-08-08 23:04:52 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								abd38169b1 
								
							 
						 
						
							
							
								
								Comment out all the old Matrix4 stuff  
							
							 
							
							
							
						 
						
							2014-08-08 22:14:36 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								b59b6d85c0 
								
							 
						 
						
							
							
								
								Add Matrix4, implement TranslationMatrix()  
							
							 
							
							
							
						 
						
							2014-08-08 22:14:20 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								9474153736 
								
							 
						 
						
							
							
								
								Move Zero() and Identity() definitions to the right place  
							
							 
							
							
							
						 
						
							2014-08-08 22:13:51 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								2cadffd7d4 
								
							 
						 
						
							
							
								
								Fix Vector4 constructors and clean up compiler errors  
							
							 
							
							
							
						 
						
							2014-08-08 21:47:44 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								3bf72bd78d 
								
							 
						 
						
							
							
								
								Build basics!  
							
							 
							
							
							
						 
						
							2014-08-08 21:12:44 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								da127ccde3 
								
							 
						 
						
							
							
								
								Vector4 subclass instead of typedef  
							
							 
							
							
							
						 
						
							2014-08-08 21:12:37 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								2b9fec5d82 
								
							 
						 
						
							
							
								
								Const operator==  
							
							 
							
							
							
						 
						
							2014-08-08 21:12:18 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								bfd3b8cbce 
								
							 
						 
						
							
							
								
								uint –> UInt  
							
							 
							
							
							
						 
						
							2014-08-08 21:12:06 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								3b713856db 
								
							 
						 
						
							
							
								
								Vector, a single-column Matrix  
							
							 
							
							
							
						 
						
							2014-08-08 20:44:43 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c5b9d73a96 
								
							 
						 
						
							
							
								
								Add constructors and operator== to Matrix<>  
							
							 
							
							
							
						 
						
							2014-08-08 20:44:31 -07:00