97a172bbe9 
								
							 
						 
						
							
							
								
								Add logModule.hh  
							
							 
							
							... 
							
							
							
							Defines some helper macros to make it easier to log message. Define LOG_NAME before including this file and a number of logging macros will be defined that will allow users to skip specifying the name of the log stream for each statement. 
							
						 
						
							2014-08-02 00:02:01 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								3a94433f5c 
								
							 
						 
						
							
							
								
								Set global default level in Init()  
							
							 
							
							
							
						 
						
							2014-08-01 23:49:52 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								f8c7c9c6ea 
								
							 
						 
						
							
							
								
								Add function Tracer  
							
							 
							
							
							
						 
						
							2014-08-01 23:49:33 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								7cfb304296 
								
							 
						 
						
							
							
								
								Update logging stuff in main()  
							
							 
							
							
							
						 
						
							2014-08-01 23:28:13 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								ea6cd488a6 
								
							 
						 
						
							
							
								
								LOG_FOO macros to help with printing messages  
							
							 
							
							
							
						 
						
							2014-08-01 23:27:32 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								089c4cdc73 
								
							 
						 
						
							
							
								
								Print milliseconds  
							
							 
							
							
							
						 
						
							2014-08-01 23:27:18 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								627854bc20 
								
							 
						 
						
							
							
								
								Use logging!  
							
							 
							
							
							
						 
						
							2014-08-01 22:28:47 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c00afe1cd1 
								
							 
						 
						
							
							
								
								Rudimentary logging!  
							
							 
							
							
							
						 
						
							2014-08-01 22:28:41 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d2b2382c95 
								
							 
						 
						
							
							
								
								Include <memory> in object.h  
							
							 
							
							
							
						 
						
							2014-07-25 15:10:29 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								bad80c9895 
								
							 
						 
						
							
							
								
								Scons default build target: charles  
							
							 
							
							
							
						 
						
							2014-07-25 13:31:09 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								6a9c1e87e2 
								
							 
						 
						
							
							
								
								Ignore *.log files  
							
							 
							
							
							
						 
						
							2014-07-24 08:05:03 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								900c667994 
								
							 
						 
						
							
							
								
								Couple more scenes to test coordinate grids  
							
							 
							
							
							
						 
						
							2014-07-24 08:03:13 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								63bb28a94a 
								
							 
						 
						
							
							
								
								Push tNear and tFar onto t&, rather than t0 and t1  
							
							 
							
							
							
						 
						
							2014-07-23 07:39:55 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								2b9d3a3824 
								
							 
						 
						
							
							
								
								Add a new scene with a single unit-box at the origin  
							
							 
							
							
							
						 
						
							2014-07-22 21:40:39 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								f5f47f5a9a 
								
							 
						 
						
							
							
								
								Print number of objects in the scene before rendering  
							
							 
							
							
							
						 
						
							2014-07-22 21:40:25 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								deff3079b8 
								
							 
						 
						
							
							
								
								Update ObjectParser for boxes  
							
							 
							
							... 
							
							
							
							ObjectParser's constructor takes the tag value, which determines the type of object constructed.
ObjectParser adds "near" and "far" sections for boxes. 
							
						 
						
							2014-07-22 21:40:13 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								b878db592c 
								
							 
						 
						
							
							
								
								Getters and setters for Near and Far vectors  
							
							 
							
							
							
						 
						
							2014-07-22 21:37:49 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								15db0c42d4 
								
							 
						 
						
							
							
								
								Box objects, parallel to the coordinate axes  
							
							 
							
							... 
							
							
							
							This change implements Kay-Kajiya intersection (with slabs) too! 
							
						 
						
							2014-07-22 20:46:47 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								d69d708b31 
								
							 
						 
						
							
							
								
								Convert Vector3 to use Doubles  
							
							 
							
							
							
						 
						
							2014-07-22 20:46:10 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								1d22e27d81 
								
							 
						 
						
							
							
								
								Specify object types in threeSpheres.yml  
							
							 
							
							... 
							
							
							
							These don't actually do anything yet, but I'd like to get this going once I start
adding more object types. 
							
						 
						
							2014-07-20 16:55:52 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								6f844f7c2a 
								
							 
						 
						
							
							
								
								Update ObjectParser for new code style...  
							
							 
							
							
							
						 
						
							2014-07-20 16:55:26 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								5a8d634590 
								
							 
						 
						
							
							
								
								Update Scene a bit for new code style and namespaces in Object and Sphere  
							
							 
							
							
							
						 
						
							2014-07-20 16:54:10 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								cf7806484f 
								
							 
						 
						
							
							
								
								Some generic, useful types  
							
							 
							
							... 
							
							
							
							- Double -> double
- DoubleVector -> std::vector<Double>
- TVector -> DoubleVector 
							
						 
						
							2014-07-20 16:53:39 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								e5cb9be1aa 
								
							 
						 
						
							
							
								
								Don't include or build object_plane.{cc,h} because it hasn't been updated and it doesn't work.  
							
							 
							
							
							
						 
						
							2014-07-20 16:53:03 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c185a24f34 
								
							 
						 
						
							
							
								
								Define shared_ptr<Sphere> as Sphere::Ptr  
							
							 
							
							
							
						 
						
							2014-07-20 16:51:58 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								12f180a3de 
								
							 
						 
						
							
							
								
								Light implements its own origin  
							
							 
							
							
							
						 
						
							2014-07-20 16:51:20 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								19aeb7b14e 
								
							 
						 
						
							
							
								
								Update Sphere to inherit from Object  
							
							 
							
							... 
							
							
							
							- Had to do a couple updates here to adapt to the new code style...
- Update DoesIntersect for code style and to pass back t values in the vector
instead of the float array. 
							
						 
						
							2014-07-20 16:49:55 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								2036521f42 
								
							 
						 
						
							
							
								
								Update code style for Object  
							
							 
							
							... 
							
							
							
							- Remove Shape, because it seems to be mostly extra. All renderable objects now
derive from Object, rather than Shape
- Light (which inherited from Object before) now defines its own origin, but
this is coming in a later commit...
- Use charles namespace
- Use a std::vector<double> instead of float** to pass back intersection points.
This is kind of a biggie because it made the render process 50% slower :( I'll
have to work out why and maybe fix it... 
							
						 
						
							2014-07-20 16:48:09 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								ac8421b5e1 
								
							 
						 
						
							
							
								
								Update code style for Material objects  
							
							 
							
							
							
						 
						
							2014-07-20 16:45:40 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								0d2011931c 
								
							 
						 
						
							
							
								
								Account all types of rays -- print them at the end  
							
							 
							
							
							
						 
						
							2014-07-20 14:21:12 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c65c6a3cfd 
								
							 
						 
						
							
							
								
								Use shared_ptr for Scene::mCamera  
							
							 
							
							... 
							
							
							
							Makes memory management a bit easier... 
							
						 
						
							2014-07-20 12:37:31 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								c564791d1a 
								
							 
						 
						
							
							
								
								Camera doesn't inherit from Object; defines its own origin.  
							
							 
							
							
							
						 
						
							2014-07-20 12:37:04 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								709453adcb 
								
							 
						 
						
							
							
								
								Fix a comment about Camera::mUp  
							
							 
							
							
							
						 
						
							2014-07-20 12:19:59 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								06c2986280 
								
							 
						 
						
							
							
								
								Don't duplicate build files  
							
							 
							
							... 
							
							
							
							Turns out keeping files in place, instead of symlinking or hard linking into
build/ means that Xcode can actually break on files in src/. This is cool!
There's still a problem with Xcode not getting appropriate type information
though. 
							
						 
						
							2014-07-20 12:17:55 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								6ed121a039 
								
							 
						 
						
							
							
								
								Some notes  
							
							 
							
							
							
						 
						
							2014-07-20 08:36:46 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								ea43af46ba 
								
							 
						 
						
							
							
								
								charles.hh – defines extern'd verbosity  
							
							 
							
							
							
						 
						
							2014-07-19 21:20:50 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								54ab0d6641 
								
							 
						 
						
							
							
								
								Fix aspect ratio of the three-spheres scene  
							
							 
							
							
							
						 
						
							2014-07-19 21:19:32 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								54796a74b7 
								
							 
						 
						
							
							
								
								Notify end-of-section after camera stuff  
							
							 
							
							
							
						 
						
							2014-07-19 21:12:45 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								4d5796e6e7 
								
							 
						 
						
							
							
								
								Parse the camera section of a scene  
							
							 
							
							
							
						 
						
							2014-07-19 21:00:34 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								eaabdfddc0 
								
							 
						 
						
							
							
								
								OHGOD TABS WERE HERE INSTEAD OF SPACES  
							
							 
							
							
							
						 
						
							2014-07-19 21:00:15 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								e2b5ffaf6c 
								
							 
						 
						
							
							
								
								Fixing up CameraParser  
							
							 
							
							... 
							
							
							
							- Compiler errors
- Coulple name tweaks
- Headers 
							
						 
						
							2014-07-19 20:59:48 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								3ec5b20f16 
								
							 
						 
						
							
							
								
								Rename Scene::camera -> mCamera  
							
							 
							
							
							
						 
						
							2014-07-19 20:57:12 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								6f04526d36 
								
							 
						 
						
							
							
								
								Default and copy constructors for Perspective and Orthographic cameras  
							
							 
							
							
							
						 
						
							2014-07-19 20:56:47 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								672ff82e03 
								
							 
						 
						
							
							
								
								add cameraParser.cc to the build  
							
							 
							
							
							
						 
						
							2014-07-19 17:25:54 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								b85abacd26 
								
							 
						 
						
							
							
								
								Move camera_parser -> cameraParser  
							
							 
							
							
							
						 
						
							2014-07-19 17:25:17 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								b85a6aed7b 
								
							 
						 
						
							
							
								
								Bit more clean up of cameras  
							
							 
							
							
							
						 
						
							2014-07-19 17:24:52 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								b03ad0ac2d 
								
							 
						 
						
							
							
								
								Add CameraParser  
							
							 
							
							
							
						 
						
							2014-07-19 17:24:28 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								76a13e61de 
								
							 
						 
						
							
							
								
								Update call sites and instantiation for Vector3 and Color parsers  
							
							 
							
							
							
						 
						
							2014-07-19 17:19:54 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								2c4f6a4d29 
								
							 
						 
						
							
							
								
								Some more helpful utility parsers  
							
							 
							
							... 
							
							
							
							- Rename VectorParser -> ScalarSequenceParser
- Add Vector3Parser and ColorParser, subclasses of the above, which handle
  Vector3s and Colors 
							
						 
						
							2014-07-19 17:17:33 -07:00  
						
						
							 
							
							
							
								 
							 
							
						 
					 
				
					
						
							
						 
						
							
							
							
							
								
							
							
								daf5c7d8a6 
								
							 
						 
						
							
							
								
								Clean up camera module  
							
							 
							
							
							
						 
						
							2014-07-19 16:30:26 -07:00