From 7687581e83392c3c736978f70e51ee3ccea05b22 Mon Sep 17 00:00:00 2001 From: Godzil Date: Fri, 21 Feb 2020 12:05:30 +0000 Subject: [PATCH] Finishing touch for patterns! --- README.md | 6 +++- output/ch10_test.png | Bin 0 -> 109041 bytes source/CMakeLists.txt | 4 +-- source/pattern/checkerspattern.h | 25 +++++++++++++ source/{include => pattern}/gradientpattern.h | 2 +- source/{include => pattern}/ringpattern.h | 9 +++-- source/{include => pattern}/strippattern.h | 0 source/{include => pattern}/testpattern.h | 2 +- tests/ch10_test.cpp | 16 +++++++-- tests/ch9_test.cpp | 2 +- tests/pattern_test.cpp | 34 ++++++++++++++++++ 11 files changed, 86 insertions(+), 14 deletions(-) create mode 100644 output/ch10_test.png create mode 100644 source/pattern/checkerspattern.h rename source/{include => pattern}/gradientpattern.h (93%) rename source/{include => pattern}/ringpattern.h (63%) rename source/{include => pattern}/strippattern.h (100%) rename source/{include => pattern}/testpattern.h (92%) diff --git a/README.md b/README.md index bac884f..b5e6198 100644 --- a/README.md +++ b/README.md @@ -32,4 +32,8 @@ From Chapter 08: From Chapter 09: -![Chapter 9 rendering test](output/ch9_test.png) \ No newline at end of file +![Chapter 9 rendering test](output/ch9_test.png) + +From Chapter 10: + +![Chapter 10 rendering test](output/ch10_test.png) \ No newline at end of file diff --git a/output/ch10_test.png b/output/ch10_test.png new file mode 100644 index 0000000000000000000000000000000000000000..be49c910e7a6d99d14dc8474f7cecd33855b785e GIT binary patch literal 109041 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

DgZ`bXieJ6 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 bhMtjCMcjY#sXluE5SP5Pid3b9N$~#waaBmL literal 0 HcmV?d00001 diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt index cbd3a78..268939d 100644 --- a/source/CMakeLists.txt +++ b/source/CMakeLists.txt @@ -3,12 +3,12 @@ # First most is build as a library add_library(rayonnement STATIC) -file(GLOB RAY_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/include/*.h) +file(GLOB RAY_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/include/*.h ${CMAKE_CURRENT_SOURCE_DIR}/pattern/*.h) file(GLOB RAY_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp ${CMAKE_CURRENT_SOURCE_DIR}/shapes/*.cpp ${CMAKE_CURRENT_SOURCE_DIR}/worldbuilder/*.cpp) -target_include_directories(rayonnement PUBLIC include) +target_include_directories(rayonnement PUBLIC include pattern) target_sources(rayonnement PRIVATE ${RAY_HEADERS} ${RAY_SOURCES}) target_link_libraries(rayonnement LodePNG) diff --git a/source/pattern/checkerspattern.h b/source/pattern/checkerspattern.h new file mode 100644 index 0000000..0430086 --- /dev/null +++ b/source/pattern/checkerspattern.h @@ -0,0 +1,25 @@ +/* + * DoRayMe - a quick and dirty Raytracer + * Checkers Pattern header + * + * Created by Manoƫl Trapier + * Copyright (c) 2020 986-Studio. + * + */ +#ifndef DORAYME_CHECKERSPATTERN_H +#define DORAYME_CHECKERSPATTERN_H + +class CheckersPattern : public Pattern +{ +public: + CheckersPattern(Colour a, Colour b) : Pattern(a, b) { }; + + Colour patternAt(Tuple point) + { + double value = floor(point.x) + floor(point.y) + floor(point.z); + + return (fmod(value, 2) == 0)?this->a:this->b; + } +}; + +#endif /* DORAYME_CHECKERSPATTERN_H */ diff --git a/source/include/gradientpattern.h b/source/pattern/gradientpattern.h similarity index 93% rename from source/include/gradientpattern.h rename to source/pattern/gradientpattern.h index 348473e..0d1e359 100644 --- a/source/include/gradientpattern.h +++ b/source/pattern/gradientpattern.h @@ -27,4 +27,4 @@ public: } }; -#endif //DORAYME_GRADIENTPATTERN_H +#endif /* DORAYME_GRADIENTPATTERN_H */ diff --git a/source/include/ringpattern.h b/source/pattern/ringpattern.h similarity index 63% rename from source/include/ringpattern.h rename to source/pattern/ringpattern.h index df23943..eb6a5ee 100644 --- a/source/include/ringpattern.h +++ b/source/pattern/ringpattern.h @@ -18,14 +18,13 @@ public: Colour patternAt(Tuple point) { - Tuple distance = this->b - this->a; - double fraction = point.x - floor(point.x); + double squared = (point.x * point.x) + (point.z * point.z); - Tuple ret = this->a + distance * fraction; + double value = floor(sqrt(squared)); - return Colour(ret.x, ret.y, ret.z); + return (fmod(value, 2) == 0)?this->a:this->b; } }; -#endif //DORAYME_RINGSUPPORT_H +#endif /* DORAYME_RINGSUPPORT_H */ diff --git a/source/include/strippattern.h b/source/pattern/strippattern.h similarity index 100% rename from source/include/strippattern.h rename to source/pattern/strippattern.h diff --git a/source/include/testpattern.h b/source/pattern/testpattern.h similarity index 92% rename from source/include/testpattern.h rename to source/pattern/testpattern.h index 17afdfd..e903ebf 100644 --- a/source/include/testpattern.h +++ b/source/pattern/testpattern.h @@ -24,4 +24,4 @@ public: } }; -#endif //DORAYME_TESTPATTERN_H +#endif /* DORAYME_TESTPATTERN_H */ diff --git a/tests/ch10_test.cpp b/tests/ch10_test.cpp index 6e7926d..68a3a32 100644 --- a/tests/ch10_test.cpp +++ b/tests/ch10_test.cpp @@ -18,6 +18,8 @@ #include #include #include +#include +#include #include @@ -26,7 +28,7 @@ int main() /* First we need to construct the world */ Plane floor = Plane(); floor.material.specular = 0; - floor.material.pattern = new StripPattern(Colour(1, 0.9, 0.9), Colour(1, 0.2, 0.2)); + floor.material.pattern = new RingPattern(Colour(1, 0.9, 0.9), Colour(1, 0.2, 0.2)); Plane wall = Plane(); wall.material.specular = 0; @@ -35,7 +37,7 @@ int main() wall.setTransform(translation(0, 0, 5) * rotationX(M_PI/2)); Sphere middle = Sphere(); - middle.setTransform(translation(-0.5, 1, 0.5)); + middle.setTransform(translation(-0.7, 1, 0.6)); middle.material.diffuse = 0.7; middle.material.specular = 0.3; middle.material.pattern = new StripPattern(Colour(0.1, 1, 0.5), Colour(0, 0.2, 0.2)); @@ -55,6 +57,13 @@ int main() left.material.pattern = new GradientPattern(Colour(1, 0.8, 0.1), Colour(0.1, 0.1, 1)); left.material.pattern->setTransform(translation(1.5, 0, 0) * scaling(2.1, 2, 2) * rotationY(-M_PI/4)); + Sphere fourth = Sphere(); + fourth.setTransform(translation(.5, 0.25, 0.4) * scaling(0.3, 0.3, 0.3)); + fourth.material.diffuse = 0.7; + fourth.material.specular = 0.3; + fourth.material.pattern = new CheckersPattern(Colour(0.1, 0.8, 0.1), Colour(0.8, 1, 0.8)); + fourth.material.pattern->setTransform( scaling(0.2, 0.2, 0.2)); + World w = World(); w.addObject(&floor); @@ -62,6 +71,7 @@ int main() w.addObject(&middle); w.addObject(&left); w.addObject(&right); + w.addObject(&fourth); /* Add light */ Light light = Light(POINT_LIGHT, Point(-10, 10, -10), Colour(1, 1, 1)); @@ -69,7 +79,7 @@ int main() w.addLight(&light); /* Set the camera */ - Camera camera = Camera(1920, 1080, M_PI / 3); + Camera camera = Camera(100, 50, M_PI / 3); camera.setTransform(viewTransform(Point(0, 1.5, -5), Point(0, 1, 0), Vector(0, 1, 0))); diff --git a/tests/ch9_test.cpp b/tests/ch9_test.cpp index a1eaa80..2fd73d2 100644 --- a/tests/ch9_test.cpp +++ b/tests/ch9_test.cpp @@ -54,7 +54,7 @@ int main() w.addLight(&light); /* Set the camera */ - Camera camera = Camera(1000, 500, M_PI / 3); + Camera camera = Camera(100, 50, M_PI / 3); camera.setTransform(viewTransform(Point(0, 1.5, -5), Point(0, 1, 0), Vector(0, 1, 0))); diff --git a/tests/pattern_test.cpp b/tests/pattern_test.cpp index 8a4d7f9..fd20681 100644 --- a/tests/pattern_test.cpp +++ b/tests/pattern_test.cpp @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include @@ -174,4 +175,37 @@ TEST(PatternTest, A_ring_should_extend_in_both_x_and_z) { RingPattern pattern = RingPattern(white, black); + ASSERT_EQ(pattern.patternAt(Point(0, 0, 0)), white); + ASSERT_EQ(pattern.patternAt(Point(1, 0, 0)), black); + ASSERT_EQ(pattern.patternAt(Point(0, 0, 1)), black); + + /* 0.708 is just bit more than sqrt(2)/2 */ + ASSERT_EQ(pattern.patternAt(Point(0.708, 0, 0.708)), black); } + +TEST(PatternTest, Checkers_should_repeat_in_x) +{ + CheckersPattern pattern = CheckersPattern(white, black); + + ASSERT_EQ(pattern.patternAt(Point(0, 0, 0)), white); + ASSERT_EQ(pattern.patternAt(Point(0.99, 0, 0)), white); + ASSERT_EQ(pattern.patternAt(Point(1.01, 0, 0)), black); +} + +TEST(PatternTest, Checkers_should_repeat_in_y) +{ + CheckersPattern pattern = CheckersPattern(white, black); + + ASSERT_EQ(pattern.patternAt(Point(0, 0, 0)), white); + ASSERT_EQ(pattern.patternAt(Point(0, 0.99, 0)), white); + ASSERT_EQ(pattern.patternAt(Point(0, 1.01, 0)), black); +} + +TEST(PatternTest, Checkers_should_repeat_in_z) +{ + CheckersPattern pattern = CheckersPattern(white, black); + + ASSERT_EQ(pattern.patternAt(Point(0, 0, 0)), white); + ASSERT_EQ(pattern.patternAt(Point(0, 0, 0.99)), white); + ASSERT_EQ(pattern.patternAt(Point(0, 0, 1.01)), black); +} \ No newline at end of file