aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorladevieq <ladevie.quentin@gmail.com>2020-12-20 14:52:47 +0100
committerladevieq <ladevie.quentin@gmail.com>2020-12-20 14:52:47 +0100
commitfa931762847d46baf8eb3ff2f53cab74ca34ef0e (patch)
tree1d3bd17805d8a548c53ed78bc37b412adcb4b719
parent3935a609141623e7cfb3fa339da1a166e3917018 (diff)
Vec3 utility function lerp
-rw-r--r--src/main.cpp4
-rw-r--r--src/vec3.cpp6
2 files changed, 5 insertions, 5 deletions
diff --git a/src/main.cpp b/src/main.cpp
index e3b69b1..b964aeb 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -8,7 +8,7 @@ color ray_color(ray& r) {
auto unit_dir = r.direction.unit();
auto t = (unit_dir.y + 1.0) * 0.5;
- return (1.0 - t) * color(1.0, 1.0, 1.0) + t * color(0.5, 0.7, 1.0);
+ return lerp(color(1.0, 1.0, 1.0), color(0.5, 0.7, 1.0), t);
}
int main() {
@@ -47,7 +47,7 @@ int main() {
std::cerr << "Generating image" << std::endl;
for (ssize_t row = height - 1; row >= 0; row--) {
- std::cerr << height - row << " lines remaining" << std::endl;
+ std::cerr << row << " lines remaining" << std::endl;
for (size_t column = 0; column < width; column++) {
vec3 x = horizontal * column;
vec3 y = vertical * row;
diff --git a/src/vec3.cpp b/src/vec3.cpp
index 28523ab..8164aeb 100644
--- a/src/vec3.cpp
+++ b/src/vec3.cpp
@@ -57,9 +57,9 @@ vec3 vec3::unit() {
return *this / length();
}
-// vec3 lerp(vec3 u, vec3 v, double t) {
-// return (1.0 - t)
-// }
+vec3 lerp(vec3 u, vec3 v, double t) {
+ return (1.0 - t) * u + t * v;
+}
vec3 operator+(vec3 u, vec3 v) {
return vec3(u.x + v.x, u.y + v.y, u.z + v.z);