Commit Graph

22 Commits

Author SHA1 Message Date
Matthew Gordon 3618636c42 First quick pass at loading OBJ files. 2019-12-21 09:11:30 -05:00
Matthew Gordon 365b6063e0 Tweak test scene 2019-12-12 08:45:15 -05:00
Matthew Gordon c05eba391b Add more tests for triangle intersection and fix a couple of bugs
Still not working properly.
2019-12-12 07:51:26 -05:00
Matthew Gordon 9eca3a4cfe Replace Vector3 with Point3 where appropriate 2019-12-07 11:09:07 -05:00
Matthew Gordon d98144ab74 Minor cleanup and tidying; no change in functionality. 2019-12-07 10:58:04 -05:00
Matthew Gordon 2b3d350fbb Add intersection test for triangle; not quite working yet though 2019-12-07 09:28:11 -05:00
Matthew Gordon 8b0b8c59ba Add ReflectiveMaterial material type
Although there's still some issues with rendering the reflections.
2019-11-29 22:30:08 -05:00
Matthew Gordon dcee4fb716 Add missing normalization of tangent vectors
This was required to get reflection working but also fixes
issues with the PhongMaterial parameters.
2019-11-29 22:25:50 -05:00
Matthew Gordon dbbd855c73 Add Phong material 2019-11-27 17:05:51 -05:00
Matthew Gordon e7bcc9cc62 Add diffuse strength term to LambertianMaterial 2019-11-26 07:17:27 -05:00
Matthew Gordon 430053c134 Fix bug rendering images with dimensinos not multiples of tile size 2019-11-26 07:03:45 -05:00
Matthew Gordon d9912c42dd Fix bug where non-square images would not be completely rendered 2019-11-26 06:59:26 -05:00
Matthew Gordon 86ef364ed2 Render image a tile at a time, so user can see progress 2019-11-25 09:04:20 -05:00
Matthew Gordon 20d3e9ba8d Add some more objects to the test scene 2019-11-25 08:34:04 -05:00
Matthew Gordon cefbc2873b Refactor, adding Material trait that returns a BSDF 2019-11-23 20:53:45 -05:00
Matthew Gordon f58afb2ded Apply tone mapping to image, not colours
Apply tone mapping and conversion from floats to bytes only on
final image. This will allow better tone mapping operators later
and for now removes NormalizedAsFloat trait constraints that were
creeping through everything.
2019-11-19 21:32:47 -05:00
Matthew Gordon f13b585bfe Shapes can now be colours other than gray 2019-11-19 07:43:00 -05:00
Matthew Gordon 99c79ea31b Remove some busywork needlessly redrawing window. 2019-11-12 16:51:08 -05:00
Matthew Gordon 1eb3741b7d Render a basic scene 2019-11-12 08:03:29 -05:00
Matthew Gordon c059aebe11 Move OutputImage into it's own module 2019-11-08 07:52:38 -05:00
Matthew Gordon c81eec9174 Did some refactoring and improved error handling 2019-10-23 21:05:17 -04:00
Matthew Gordon bc4759dfaa Set up SDL so I can draw the image being rendered in a window 2019-10-21 01:40:58 -04:00