From 0c102ae9bf46daae4067d4ad6561097c1a59f375 Mon Sep 17 00:00:00 2001 From: Yoel <s73017@beuth-hochschule.de> Date: Sat, 17 Oct 2020 17:06:26 +0200 Subject: [PATCH] Changed scatter and implemented new calcLightMulti-func --- RayTracer/material/BackgroundMaterial.cpp | 10 +++++++++- RayTracer/material/BackgroundMaterial.h | 6 +++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/RayTracer/material/BackgroundMaterial.cpp b/RayTracer/material/BackgroundMaterial.cpp index e822666..22f7c2d 100644 --- a/RayTracer/material/BackgroundMaterial.cpp +++ b/RayTracer/material/BackgroundMaterial.cpp @@ -20,7 +20,15 @@ util::Vec3 BackgroundMaterial::scattered_d(const util::Vec3& d, const util::Vec3& n) const { return util::Vec3(0, 0, 0); } -bool BackgroundMaterial::scatter() const { +bool BackgroundMaterial::scatter(const util::Vec3& d, + const util::Vec3& n) const { return false; } + +float BackgroundMaterial::calculateLightMultiplier(const util::Vec3& d_in, + const util::Vec3& d_out, + const util::Vec3& n) const { + // Background should not be able to receive any light + return 0; +} } // namespace material \ No newline at end of file diff --git a/RayTracer/material/BackgroundMaterial.h b/RayTracer/material/BackgroundMaterial.h index ec75613..c6594c4 100644 --- a/RayTracer/material/BackgroundMaterial.h +++ b/RayTracer/material/BackgroundMaterial.h @@ -12,7 +12,11 @@ class BackgroundMaterial : public Material { util::Vec3 emission(float texel_x, float texel_y) const override; util::Vec3 scattered_d(const util::Vec3& d, const util::Vec3& n) const override; - bool scatter() const override; + bool scatter(const util::Vec3& d, const util::Vec3& n) const override; + + float calculateLightMultiplier(const util::Vec3& d_in, + const util::Vec3& d_out, + const util::Vec3& n) const override; private: std::shared_ptr<util::Sampler> texture; -- GitLab