|
|
9f22d820e7
|
rays: implement Ray::transform
|
2021-07-16 21:38:04 -07:00 |
|
|
|
324a26212a
|
intersections: implement Intersections::hit
|
2021-07-16 21:28:28 -07:00 |
|
|
|
c9b42d94b3
|
intersections: now store object in Intersection.
|
2021-07-16 21:14:23 -07:00 |
|
|
|
0ce1e8f7af
|
intersections: create inters module and initial functionality.
|
2021-07-16 21:06:57 -07:00 |
|
|
|
8b451a2395
|
rays: lint cleanup
|
2021-07-16 21:06:23 -07:00 |
|
|
|
da98744288
|
spheres: implement basic unit sphere and intersect.
|
2021-07-16 20:42:46 -07:00 |
|
|
|
f44d671573
|
rays: basic ray with construction and position methods
|
2021-07-16 20:13:20 -07:00 |
|
|
|
191760fa13
|
eoc4: lint cleanup.
|
2021-07-16 20:12:51 -07:00 |
|
|
|
12c2382327
|
eoc4: use Matrix4x4 to perform world to canvas scaling.
continuous-integration/drone/push Build is passing
|
2021-07-16 19:59:42 -07:00 |
|
|
|
5df2917668
|
eoc4: implement suggestion at the end of chapter 4
|
2021-07-16 17:12:48 -07:00 |
|
|
|
af5e61136c
|
matrices: doctest for matrix multiplication ordering.
|
2021-07-16 16:51:55 -07:00 |
|
|
|
4b0d882b84
|
lib & tuples: use crate specific EPSILON definition.
|
2021-07-16 16:49:55 -07:00 |
|
|
|
83799a02a9
|
matrices: implement Matrix4x4::shearing
|
2021-07-16 16:38:40 -07:00 |
|
|
|
b8df830460
|
tuples & matrices: remove float-cmp use.
continuous-integration/drone/push Build is passing
Implement PartialEq on `Tuple` and `Matrix4x4` using a local `EPSILON`
large enough for our unit tests to pass.
|
2021-07-06 08:44:21 -07:00 |
|
|
|
245b02b443
|
matrices: implement Matrix4x4:rotation_[xyz]
|
2021-07-05 18:36:43 -07:00 |
|
|
|
f792d1a626
|
matrices: implement Matrix4x4::scaling
|
2021-07-05 17:51:17 -07:00 |
|
|
|
117d7185e4
|
matrices: implement Matrix4x4::translate
|
2021-07-05 17:42:19 -07:00 |
|
|
|
462c90e8c8
|
matrices: benchmark Matrix::inverse & inverse_old
continuous-integration/drone/push Build is passing
|
2021-07-05 16:44:06 -07:00 |
|
|
|
ac3a18a864
|
matrices: implement Matrix4x4::inverse.
|
2021-07-05 16:26:27 -07:00 |
|
|
|
656f1c3a94
|
Small whitespace change.
|
2021-07-05 16:26:21 -07:00 |
|
|
|
762cd45f63
|
implement determinant on 3x3 and 4x4 matrices
|
2021-07-05 15:27:32 -07:00 |
|
|
|
d6ad12e344
|
implement cofactor of 3x3 matrix
|
2021-07-05 15:07:18 -07:00 |
|
|
|
f5d79908f6
|
implement minor for matrix3x3
|
2021-07-01 21:29:58 -07:00 |
|
|
|
a69e404817
|
implement submatrix for matrix4x4
|
2021-07-01 21:20:40 -07:00 |
|
|
|
43d95041af
|
implement submatrix for matrix3x3
|
2021-07-01 21:12:43 -07:00 |
|
|
|
c97bc25323
|
Implement 2x2 determinant
|
2021-07-01 20:54:00 -07:00 |
|
|
|
dda29eb836
|
test identity transpose
|
2021-07-01 20:47:29 -07:00 |
|
|
|
fa5971faa4
|
Test identity multiplication
|
2021-07-01 20:46:05 -07:00 |
|
|
|
4d649c735b
|
Implement 4x4 * 4x1
|
2021-06-30 21:02:42 -07:00 |
|
|
|
3d2d763a3b
|
test 4x4 multiplication
|
2021-06-29 20:56:08 -07:00 |
|
|
|
ea6114b9ae
|
test 4x4 equality and inequality
|
2021-06-29 20:51:38 -07:00 |
|
|
|
ec0331b88b
|
constructor/index methods for Matrix2x2 and Matrix3x3
|
2021-06-29 20:48:41 -07:00 |
|
|
|
72b15e5516
|
Copy Matrix4x4 impl from pbrt and start on tests
|
2021-06-29 20:12:23 -07:00 |
|
|
|
3cf580f607
|
Fix tests after recent refactor
|
2021-06-29 19:52:57 -07:00 |
|
|
|
78a360ae89
|
More idiomatic constructors.
continuous-integration/drone/push Build is passing
|
2021-06-27 10:20:21 -07:00 |
|
|
|
f24a90b77b
|
eoc2: print filename before saving.
continuous-integration/drone/push Build is passing
|
2021-06-24 16:44:45 -07:00 |
|
|
|
c9ec19c3cd
|
eoc2: update with initial values from the book.
|
2021-06-24 16:43:12 -07:00 |
|
|
|
709465dafe
|
eoc2: write up end of chapter 2 example.
|
2021-06-24 16:40:53 -07:00 |
|
|
|
7786aa99a1
|
canvas: enable saving to PNG.
|
2021-06-24 16:40:33 -07:00 |
|
|
|
536b6bed1f
|
tuples: make color data pub.
|
2021-06-24 16:40:21 -07:00 |
|
|
|
d8f91a823e
|
Add canvas type.
|
2021-06-24 15:58:18 -07:00 |
|
|
|
42455d593e
|
Add Color type.
|
2021-06-24 15:48:04 -07:00 |
|
|
|
21ac03acfb
|
Implement end of chapter 1 exercises.
|
2021-06-24 15:35:58 -07:00 |
|
|
|
df495feb57
|
Make important types/functions public.
|
2021-06-24 15:35:43 -07:00 |
|
|
|
21afbf8e7c
|
Implement dot and cross product for tuples.
|
2021-06-24 15:15:31 -07:00 |
|
|
|
1ea90770bc
|
Add magnitude() and normalize() methods to Tuple
|
2021-06-24 15:07:38 -07:00 |
|
|
|
758f94acde
|
Implement Add, Div, Mul, Neg, Sub traits for tuple.
|
2021-06-24 14:47:53 -07:00 |
|
|
|
b159820bad
|
Metadata.
continuous-integration/drone/push Build is passing
|
2021-06-24 11:10:29 -07:00 |
|
|
|
3952a8ba83
|
Implement point/vector constructors.
|
2021-06-24 11:10:11 -07:00 |
|
|
|
495c64249c
|
Implement most basic tuple
|
2021-06-24 10:51:35 -07:00 |
|