 So let's talk about the assignment. We are going to play with Hall-Hackford's Business Card Rate Tracer. This is going to be an enlightening experience because it says it's a Business Card Rate Tracer. This sounds really good because the whole code can fit on the Business Card of yours. Well, you will see that this does not mean that this is well suited for educational purposes. So it's not very easy to understand what is happening in there. In the package, I have also included a version that's a bit more eye-friendly. But when we are going to be talking about global illumination, we're going to use a simple global illumination program. And it's called Small Paint and I wrote it myself in a way that it would maximize both understandability and conciseness. So here is the first part which is not expected to be so convenient. And then the next global illumination program will be much more convenient. So to compile this, you use whatever tool you wish. I'm not going to confine you to use any given tool. This is a one or maybe two free file rate tracer. And in the zip file, I will show you I have put a compiler for Windows, which is called the mean GW. This is a port of different Unix compilers to Windows and they work quite well. So you can use this. If you are a Windows user and you don't like Visual Studio, you don't have Visual Studio or you would like to try a GCC on your Windows that you can use this. If you would like to use something else, you're fine. And if you're a Linux guy, you're a power user anyway, so you can deal with that yourself. But if you need help, just write to me. So what is the practical part? Well, get this file and there's going to be instructions on the readme. And let's make images with different maximum depth values. This means how many bounces are we computing? And do this from one to five ounces and see the difference in the output images. The question is, what did you experience visually and why? There's going to be an observations text file and this is where you need to write these stuff. But I'm going to discuss this on the next slide. And what I would like you to do is to cram out the depth that are you to a really large number and see what happens. Because maybe interesting things will happen. And the question is, what will be the dependence of the runtime, the execution time of the algorithm, with respect to this depth variable? And does it abruptly change at a given point, or somewhere, or not? And usually there is a set of questions for pros. So if you feel like a pro, you should definitely answer these. Sometimes these are really difficult questions. Sometimes not so much. And when I first had this course, I thought that maybe 10 to 20% of the people did want to try, because they are really interesting exercises. And to my surprise, almost 70 or 80% of the people in the first two years of this course, did all the pro exercises. And some of them even came up with exercises on their own, because they thought that, yeah, this is so much fun. I changed the code this way with what I got, what happened there. And if you find out something amazing, then show it to me. So I can also marvel at that. So set of questions for pros. This is plus points for the exam. If you don't do them, you still can get the maximum amount of points for the assignment. Let's take a look and try to do them, because it's a really interesting journey. The first is, what would be the algorithmic complexity of this step variable? So this means that I cannot only vary the execution part of the algorithm with respect to this step, but I can also write up the complexity of the algorithm with the bigger notation. The bigger notation, this is something that tells you the complexity of algorithms with respect to variables. So if I change, let's go back to algorithms and data structures. First is, dice-wise algorithm, if I remember correctly, it's of quadratic complexity. So if I have, is it? I think it is. So it's really favorable. So it means that if I have a big larger city where I need to find the best route between two points, then the complexity of the algorithm is not going to be raised so much. So this means that if it's n squared, means that if I have double the size of the city, then the algorithm is going to run four times as long. So I would like to know the complexity of this algorithm that you have. What do you respect to this big old notation? Second, four question is, what could we do to make this more favorable, whatever weird examples and ideas go? And if you did some change, then tell me the new complexity of the algorithm. And a regular set of questions play with the AOV variable. It's very easy to find out what it does already. The question is, what did you experience and why? And just a note that there is a, I think, more readable version of the same C++ code in the Z5. The format of the table that I would like to see is that we take the different numbers for depth values, maximum amount of bounces, and I would like to know the execution time in seconds. And this is a text file. But after filling such a text file, I would like you to plot this with whatever tool you have. I don't mind. If you like new plot use that. If you like more from alpha or not, what ever. I don't mind. And please put a PNG file of the plot also in your solutions. And one more set of light paths. This is waiting for you. So please draw a camera on this image, where it is exactly. And please denote what kind of light paths do I have here? And please tell me a few words about whether I see these light paths or not. So for instance, I definitely see a light path that is LV, because I can see the light source. So the ray that connects the eye to the light source is definitely accounted for, because I can see the light source. So what about the other light paths? And save it as a PNG or JPEG file. And this is just the names of the different files that I would like to see in your submission. And this is how the submission itself should be named. And about the deadline, I don't know yet. Apparently, Easter is coming. And when I first had this course, I told the other people that, well, next week there's going to be another lecture. And they said, well, not really, because there's Easter rig. And I come from Hungary, where Easter rig is one Monday. So it means that on Monday you get drunk and on Tuesday you go back to work with the hangover. And then they told me that it's not only Monday. So next Wednesday is going to be skipped because it's Easter rig. And I said, well, maybe they are following me, but maybe it's true, I don't know. Okay, then the Wednesday after that. And they said, uh-uh, not even that. And I was like, I'm surely, I'm surely being trolled by like 20 people at the same time. And then they told me that Easter rig in Austria is two weeks, at least in the universities. And I was like, that's amazing because I'm wondering, on that Monday that you have this Easter rig, everyone is drunk. It's ridiculous. Like the whole city goes crazy. And in Austria, I imagine that they're saying may happen, but for two weeks. It's an amazing country. Thanks for your attention and see you sometime. I will announce when the next lecture happens. Thank you.