|
|
1d61f59935
|
materials: add transparency and refractive_index to Material.
|
2021-07-25 16:33:03 -07:00 |
|
|
|
7f36aecf5e
|
world: add reflection to ray tracer.
|
2021-07-25 16:28:34 -07:00 |
|
|
|
0c7bbae4a3
|
rtchallenge: remove disable-inverse-cache feature.
|
2021-07-25 14:54:00 -07:00 |
|
|
|
eaae65712b
|
eoc10: example showing concepts from the chapter.
|
2021-07-25 14:51:33 -07:00 |
|
|
|
68709da6c2
|
patterns: implement checker pattern.
|
2021-07-25 14:46:26 -07:00 |
|
|
|
77215193fa
|
patterns: implement ring pattern
|
2021-07-25 14:37:56 -07:00 |
|
|
|
74fe69188a
|
patterns: add Gradient pattern.
|
2021-07-25 14:11:44 -07:00 |
|
|
|
bdcee49d5a
|
patterns: add builder pattern for creating Patterns.
|
2021-07-25 13:50:13 -07:00 |
|
|
|
2e4e8b3dcd
|
patterns: make From for Pattern a little generic.
|
2021-07-25 13:35:14 -07:00 |
|
|
|
b9f2c3f0ec
|
patterns: create generic Pattern modeled after StripePattern.
Add TestPattern to validate generic implementation.
Make Material.color use Pattern.
|
2021-07-25 13:30:40 -07:00 |
|
|
|
8b79876aee
|
patterns: implement object and pattern transformation awareness.
|
2021-07-25 11:22:36 -07:00 |
|
|
|
bfa3282a37
|
materials: add StripePattern as a Material color option.
|
2021-07-24 19:36:32 -07:00 |
|
|
|
3e383c4dbd
|
patters: implemented basic stripe pattern.
|
2021-07-24 18:20:29 -07:00 |
|
|
|
c158d92252
|
eoc9: make width and height CLI flags.
|
2021-07-23 22:18:20 -07:00 |
|
|
|
62ad827507
|
eoc9: implement using prelude and builder pattern.
continuous-integration/drone/push Build is passing
|
2021-07-23 22:12:24 -07:00 |
|
|
|
363f15fb00
|
camera: implement builder pattern on Camera and add it to prelude.
|
2021-07-23 22:05:38 -07:00 |
|
|
|
be2041285c
|
shapes: use a builder pattern with helps in prelude.
|
2021-07-23 20:56:32 -07:00 |
|
|
|
958c4c3ee8
|
prelude: add PointLight and PointLightBuilder.
|
2021-07-23 20:30:14 -07:00 |
|
|
|
62cb5e4ec4
|
prelude: add World and WorldBuilder.
|
2021-07-23 20:17:31 -07:00 |
|
|
|
4680c97adc
|
shapes:: helpers for creating Shapes added to the prelude.
|
2021-07-23 20:03:34 -07:00 |
|
|
|
0965ac9ddf
|
matrics: create helpers for Matrix4x4 and add it to prelude.
|
2021-07-23 18:38:35 -07:00 |
|
|
|
4936839723
|
prelude: create prelude and add some tuple helpers to it.
|
2021-07-22 21:34:18 -07:00 |
|
|
|
c500d56d4d
|
lights: make intensity parameter generic.
|
2021-07-22 21:33:09 -07:00 |
|
|
|
c058d043e0
|
balls: more experimentation.
|
2021-07-22 20:56:13 -07:00 |
|
|
|
166c87dfe5
|
camera: add default implementations.
|
2021-07-22 20:44:49 -07:00 |
|
|
|
9389fed84c
|
balls: experiement with builder pattern.
|
2021-07-21 21:31:04 -07:00 |
|
|
|
28fe6fe982
|
shapes: fix inverse_transform on ShapeBuilder.
|
2021-07-21 21:30:26 -07:00 |
|
|
|
44b46187a0
|
world: add builder pattern.
|
2021-07-21 20:45:33 -07:00 |
|
|
|
de898f0b0a
|
Add builder pattern to a few core types.
Add a From<[3;Float]> impl for Color to make things nicer.
|
2021-07-21 20:42:08 -07:00 |
|
|
|
e041fd1f6a
|
shapes: implement TestShape.
|
2021-07-21 19:41:40 -07:00 |
|
|
|
952ed8bf81
|
intersections: implement a PartialEq that handles floats.
|
2021-07-21 19:41:14 -07:00 |
|
|
|
a553786807
|
tuples: derive Default on Tuple.
|
2021-07-21 19:40:12 -07:00 |
|
|
|
b42adcebfc
|
rays: derive Default, Clone and PartialEq on Ray.
|
2021-07-21 19:39:47 -07:00 |
|
|
|
d999e8196b
|
eoc9: add ceiling.
|
2021-07-21 15:15:59 -07:00 |
|
|
|
fc5ef09cc3
|
shapes: fix translation handling in intersection test.
|
2021-07-21 15:06:06 -07:00 |
|
|
|
e419994fae
|
eoc9: add third light now that the we don't normalize it
|
2021-07-21 14:51:51 -07:00 |
|
|
|
ee8ef4e2c5
|
world: don't normalize light brightness by quantity of lights.
That's not how they work in real life.
|
2021-07-21 14:47:00 -07:00 |
|
|
|
41f3b63ad0
|
eoc9: one less light, and brighter
|
2021-07-21 14:44:29 -07:00 |
|
|
|
b2dc0e9509
|
eoc9: use plane in a scene.
|
2021-07-21 14:40:44 -07:00 |
|
|
|
2d8a3927f4
|
shapes: lint cleanup.
|
2021-07-21 14:40:27 -07:00 |
|
|
|
5600d6c561
|
shapes: name space helper implementations in a sub module.
continuous-integration/drone/push Build is passing
|
2021-07-21 13:17:25 -07:00 |
|
|
|
0e8a0e4163
|
shapes: implement plane geometry.
continuous-integration/drone/push Build is passing
|
2021-07-21 12:57:16 -07:00 |
|
|
|
2f85697b88
|
rays: derive Debug on Ray.
|
2021-07-21 12:53:19 -07:00 |
|
|
|
c0e422a7eb
|
shapes: create generic Shape object with Sphere implementation.
continuous-integration/drone/push Build is passing
|
2021-07-20 22:17:50 -07:00 |
|
|
|
3799f93393
|
eoc8: add third light for effect
|
2021-07-18 21:15:38 -07:00 |
|
|
|
1629b2cbfa
|
Add multiple light support.
|
2021-07-18 21:10:04 -07:00 |
|
|
|
839642b886
|
camera: make supersampling configurable, wire it up in eoc8.
continuous-integration/drone/push Build is passing
|
2021-07-18 20:30:06 -07:00 |
|
|
|
7a8ed15017
|
eoc8: zoom the fov.
|
2021-07-18 20:01:40 -07:00 |
|
|
|
5d8024a485
|
features: rename s/_/-/g and make double sizes Floats default.
|
2021-07-18 17:29:30 -07:00 |
|
|
|
ecf7cd7bdc
|
eoc: Updates to work with new Float abstraction.
|
2021-07-18 17:27:52 -07:00 |
|