Outline for Today
Wiki
Link to the UR Courses wiki page for this meeting
Media
Transcript
Audio Transcript
-
Yeah, I would say mornings like this are my favorite. Because the snow is undisturbed. It's falling. Just gently it's so nice. It's only like one or two minus one or two degrees today and just so peaceful and then I have to start shoveling and cleaning my car off and all those things. For a few minutes just walking out in the snow is gently falling now that was the best moment of the day. For me, I think let's see how far I can stretch this out of my doctor when I'm the other stuff
-
No, I don't think so.
-
should try it anyway. To see
-
Come on.
-
Okay.
-
So Happy last year of class. meetings. So everyone do their presentation for the other class of half of minus. minus So would you do pairs No, we really like comic.
-
Different groups. Like he did single project and like he had two more participants.
-
Oh, so between one and three PBL did projects Yeah. Like
-
the professor said like we can choose single or like we can go single or we can
-
Okay, all right. So final exam question.
-
Those here now, what question would be good to ask. Everyone would reward your attendance here this morning. 10 o'clock.
-
I actually haven't went through the beginning materials anything that hadn't been done?
-
Sorry this wasn't my design. I'm just working with it.
-
I like it.
-
It's not bad actually. I
-
know we get to see when you're using
-
Yeah. Too bad.
-
Frame rate, time.
-
Favorite time
-
we can also ask what frame rate
-
so I wrote on the board so I could reward people who are here. So what was my favorite time of day today?
-
Then there is no snow
-
to get like snow.
-
Days and unexpected snow outside Dad's favorite time.
-
But well, I mean, but today it was walking out in the snow was falling and it wasn't the snow wasn't disturbed. All we had that was pure. Yeah, and it was it was nice. It's not too cold. It was just nice to see how the snowflakes falling. And no footprints on the snow around.
-
Maybe the answer is like the last class. That's your favorite time of the day on Monday. While
-
having that bad day
-
learning most of what I just said.
-
Okay,
-
so it's our last meeting today.
-
secret question last question proposed in the answer. We don't have the answers to we just talked about it is the pristine snow. Yeah, okay. I thought it's lost the damn look. Wow. No.
-
It's my only class
-
so I updated pictures up until yesterday or last meeting. So after I found all the pictures on the missing videos from the web post on the Wayback Machine, I posted an issue on the GitHub repository. And they fixed the blog post. So you don't have to go through them. Particularly. We can just access the web page because that was so if you notice before, it was a
-
lot of unhappy faces in the blog post.
-
So I also did a pull request to add the instructions to do nvm use
-
without ads.
-
So they haven't taken that they didn't accept my modifications. And instructions. But I was reading through the issues that they said. Someone said all your libraries are so out of date. He said well, I have this nvm RC and I thought well I better find out how to use that. So it turns out if you use NBN use it tells you if you have that version of node installed. It'll switch to that. And if you don't, then it'll tell you to install that version. And with that step things went much more smoothly than they did the first time I tried
-
the view then we abused the but I've just used it to switch between versions now.
-
Without arguments it tells you what's been used where it reads the nvm rc file. So that was a bit that I learned about that. Anyway
-
Morning Good Morning.
-
Okay, so here let me see if I can get this to run today
-
so I'll stop that because someone might have a seizure. But that's a reflection map
-
and I'm using it in all the different sides so let's just look at similar things done in Apple Fifth Avenue.
-
Okay, so
-
what we're doing here is in the vertex shader, we're setting the position of the vertex and then we're getting the eye position in the normal and then we're doing we're finding where we're in the environment. We would gaze would be reflected to because we're doing a reflection that's so then we're doing input. So we're passing recovering this vector r. We're passing it into the fragment shader and then returning the color based on the texture map and the coordinates
-
so let's look at the other file.
-
So this is all pretty standard stuff we've seen before. But then configure cube map is the one that's different so that's how we're getting the map. Of what we're reflecting onto the cube.
-
So you can see here we're putting six images into the cube map.
-
Map, there's an image for positive x, negative x, positive Y, negative y, positives and negative Zed. So that's kind of creating the environment map that we're looking at. And that's, that's what they done in Fifth Avenue as well. They're using off screen buffers to to capture images of the different faces, and then they're mapping that onto the cube map or use it for making those accessible in the cube map.
-
Okay, so I thought next we would go through last year's final and see what you like and we don't like if you don't like anything I guess we'll just not had an exam. I'm just kidding.
-
assignment has been marked. I'm just going to look at the marks after. So if you're I just want to reiterate if you're having questions about getting things to run, or anything else, any other questions about coding. Please come and see me. So we've got those other two pieces of code due in a week, the 12 and the finals on the 13th. And then you'll get your mark soon after that. But I'll I'll be available not on the 12th but before then I'll be available. So please send me an email or use your courses. To get in touch with me. You're welcome.
-
First, the first time in a few years that I'm using my reusable coffee mug
-
I'm so nervous. It's hot. I filled it up on the way here.
-
Okay
-
I was mentioning I have a new iPhone 15 Now the main difference is that it's black. Instead of blue before and I went with my wife and daughter and they picked pink and blue so I the only choice I had was black which was fine with me matches as well. Yes. And the case has sparked is Spark is clear but it has sparkles in it and they said that matches my personality anyone care Do you agree with that or not? See, this is an example of
-
me not being able to it's not fair. To for me to ask that because our relations relationship here. And so that's why like when we do user studies we don't we want to make sure people give free and informed consent just little connection to the HCC material. Anyway, okay. I'll take one more just to make sure.
-
You feel like we've had said enough about pixels or would you think there's a question there that still needs to be could be asked
-
Okay, so what's the question that we could ask
-
pictures?
-
We'll try that out. We can have a discussion online if you like this or or not.
-
About colors striving to get colors when printing onto a sheet of paper.
-
Okay, so, describe how you do it, please. If you want a sheet of paper, you'd say have a white sheet of paper so we start subtracting
-
so we go with cm y and black
-
students usually see ya, so see I'm Why am three gives you black but after three passes of ink. If you have a lot of black and the image, the paper gets wet and the colors get muddy maybe. So practically adding black is a good thing
-
okay so I won't ask just these but we'll be in ballpark
-
Okay. So how do we use how do these concepts come up in WebGL? Two.
-
Say using a site or using site or make we can use continuous mapping.
-
Okay, yeah. So when we're animating we can so we use mathematical descriptions to change the parameters that we're going to display in our in our new graphics. That's good. What about discrete?
-
How about when we declare a frame buffer or a depth buffer? We're giving us particular size right so we have a resolution. So that one that one texture program example where we drew the texture at a very low resolution 16 by 16 Let's say they could see the jagged edges so that's
-
that's part of the street
-
so that also brings in sampling and quantization
-
is the process of good working continuous
-
yeah thinking about pixels
-
maybe a way to organize our thinking about samples. Oh, that looks actually I don't have to issue a disclaimer today. So for each pixel, we say that maybe we're going to sample at the center
-
the sample that we take in the center is going to be displayed at this position on the screen so what do we this is fine if we have a big shape like a circle, maybe a circle that gets drawn like that. Then all everything is going to be
-
we're all gonna get the circle color. For this. We imagine this is the thing this is the continuous phenomenon we're sampling. So we don't have any problems. They're deciding what what to assign but then what if we have circles that are this big?
-
So we might if we see that there's maybe a change
-
if resume and we see that there's it's not a consistent value. We might do some extra sampling. Like here and here, here and here. And then realize the Navy should add a little bit of this contribution of this shape some managers a different color
-
so we might move oversized or super sample a pixel and trying to decide if what's the best number to represent that area? On the screen? Did that answer your question? Okay.
-
I'm glad. Okay. So what's the rule about sampling? If we want to if we want to represent circles that are this size or this size that might fall through the regular grid. We started so are we sampling with a high enough frequency here to get these features
-
I'm trying to phrase it in a bit of a different way. So if you want to if you want to capture a circle this size, how much how
-
far apart your samples need to be?
-
So to capture this size we need to sample this far apart.
-
That makes sense because like I've just drawn it you're gonna say why did he draw to capital ice so I've updated the pictures but I haven't updated the transcript so I'll get those updated today. So we went on Thursday night for the iPhones but then I didn't realize it was near closing time. By the time I realized that they given me a 256 gigabyte file instead of 128 gigabyte phone so that I had to spend Friday going back and getting that sorted out. So never a dull moment. That's why Yeah, it's always interesting going cell phone shopping
-
Okay, so homogeneous coordinates.
-
useful because we can then express all the transformations in a single matrix
-
included a sample code here to describe
-
is that we can let me know what you think about that kind of question.
-
What kind of question what kind of coding question Would you like?
-
Would you like to see
-
so I said code review or what kind of coding question Would you like to see? So we've done some code this semester, so how best to assess your learning in that respect?
-
seem okay so when I'm asking questions I appreciate you nodding your heads and saying okay, but I would like to engage you in some conversation about these online so please break the mold from the semester. Engage with me in some conversations, I would appreciate it. Somebody else? Yeah. And Karen, you posted the link about the ABA Fifth Avenue. So
-
I because I went through the code it is so complicated. If you put that question in. Everyone's going to hate me tomorrow.
-
I'm not going to ask. Well, I mean, there's lots of issues there's lots of interesting issues related to environments for WebGL to programming. What kind of libraries are useful to support and
-
why in general? So, from that article, I was reading about different kinds of frameworks. And so it's a big can of worms.
-
So I don't want to open another can of worms
-
but maybe it's
-
just maybe a question about
-
reading that blog post.
-
So now that it's been fixed up, all the links work
-
or I guess you could say.
-
So that was the other example I showed last day about doing a React application using fiber and three and three Jas Yeah.
-
Okay, I think I'm
-
good morning sir. Hi.
-
Evening. So maybe I could add a question about using Bootstrap as well. In terms of interaction that seem alright
-
with Bootstrap
-
so what are the two things that are being interpolated in each of these, and how do they relate to vertex and fragment shaders? And assignment three
-
did you want to make a comment?
-
sure about it, but I was going to say the lightning and shine shininess shininess and Lightning
-
has not being interpolated. But so we're interpolating the vectors. So when we do the vertex shader, we're we're calculating values that get interpolated in the fragment shader, but when we if we move the calculation to the vertex shader, then
-
instead of passing values and the fragments from the vertex shader, we pass vectors then we can interpolate the vectors. That means we can get highlights
-
so this is our triangle and we have a bright highlight there. So it's gonna be different if we do a group interpolate color values. For the vertex shader, compared to interpolating vectors from the vertex shader. Because then we can capture this highlight
-
talking about interpolation and what's being interpolated, that was the question.
-
You so because we're tripling the vectors then we are doing a separate calculation here, and then we can see that that's where the highlight we can give that the highlighted.
-
It deserves. Does that make sense? The PIC, the picture doesn't go far enough. But anyway, so the question is whether we're interpolating whether we get from the vertex shader that color values or factors does that make sense? Everyone? Okay.
-
ascribe the interaction of a late with other elements in the scene. As calculated.
-
So, maybe we don't need to ask about flatten again.
-
whose desire for flatten question has been flattened
-
no one
-
you like it being a short question. Yeah. Okay.
-
So a question about how we go about that. So we have model transformations and then you
-
and then projection
-
Right So how does the Zed buffer work?
-
I think that's, that's remove what I didn't hear. Can you repeat your answer moving
-
the sofas over there
-
Yeah, so it's about
-
okay, it's about that's what it does. But how does it do it? How do we use a Zed? buffer to accomplish our surface removal?
-
So sometimes those few are used interchangeably.
-
So let's say we draw a triangle
-
and what's the depth of this triangle?
-
Let's say five. Okay, now we get another triangle. Depth three okay.
-
Shouldn't be shouldn't be the five above the three. That's
-
further away
-
in my example, Zed is increasing you can actually configure that with the depth test
-
now let's say we get something that's it starts out at being
-
I'm trying to think how I'm gonna draw this
-
so the idea is we have a triangle I said equals five we draw it if the fragments that are indicated or nearer than what's there already. So if we draw this one first. Our depth buffer depth buffer bid is clear. So there's nothing in there. Zed equals five is going to be visible so we dry in fragments associated with a triangle.
-
Then when we get to this triangle that's closer. So for these fragments, where there's nothing previously we just draw it but then we're doing a comparison. Is three closer than five? Yes it is. So we're going to replace the buffer. So we're going to record in the depth buffer the distance of this new triangle here, so that equals three and we're going to cover the top of the Zed equals five triangle
-
let's say.
-
So if we imagine each vertex has a different different depth then we'll see.
-
Below the triangle pop out
-
so we're always keeping
-
or keeping a buffer, not a color values, but of depth values. So any anything that gets added to the frame buffer is tested against the Zed buffer to see whether the new value would be closer than what's already there. So it makes sense.
-
We might say, let's just sort them in order. And that works. If we say this one's at five, this was a three like that alpha blending examples that I did.
-
We're all of them are at different depths. But it doesn't work when we have intersections between there is no way to order this triangle because of intersects. So exempt buffer gives us a way around the problem of finding the proper order for the permanence.
-
Let's see how I'm doing this.
-
Describe bump mapping, texture mapping and environment mapping
-
So that's it that's the exam.
-
So maybe we could add something about alpha blending
-
so the question if there are other topics to include in the final exam
-
so we're out of time. Any questions or concerns
-
expanding the assignment deadline, if possible. Should we have the report? Today assignment for other subject as well so it's possible that will be very important.
-
So the last assignment foreign four and five are relating to the same issue and they're due one minute to midnight on the 12th of December.
-
You finished your work further class
-
action today. The issue is though we have got a final report that needs to be submitted. And that report has a specific format and everyone is struggling with the format for
-
example, this classes right yeah, so it would be best if we don't submit it before the day because we will be reading a case study for the exam.
-
Is it possible to have the sufficient pass the date of the final exam was really telling me that you're gonna get the exam on 13th and be done on 14
-
What is in the morning? So
-
by that logic, okay, and I'm just I'm just hoping because 15 to the Friday. That's the end of the week, the end of the semester, and we get to make sure that everyone stays at home on Friday 50
-
I'll see what I can do.
-
Okay. Just friendly for the record, which like it's, we don't know, particularly report format.
-
It's not even that first report but I will I don't want to like submit like work on assignment before this. The like the final exam this class
-
Well, I think the code would be a help to prepare for the exam
-
so I think doing the assignments will help you prepare for the exam
-
Oh, look into it. Okay. Oh, take it under consideration. Yes. Okay. That would be great. Thank you. You're welcome. So, this is our last meeting. Thank you for this semester. I really enjoy my pleasure. Okay. And I'm available between now and the exam. I won't be around on the 12 otherwise, you can find me so if you have questions about coding, let me know. If you have any questions, let me know. And I will add some stuff to our to my web pages. About what we've done. Give you make sure the links are working
-
and so on. And I'll send an update when I have that finished.
-
So thanks again. Take care and if I don't see you before, we'll see you on the 13th at 9am. Right here I didn't confirm this as a location but I think this is the exam location
-
So thanks again. Take care and if I don't see you before, we'll see you on the 13th at 9am. Right here I didn't confirm this as a location but I think this is the exam location
Responses
What important concept or perspective did you encounter today?
- Professor discussed about the final exam questions.
- It was the last lecture today. Hence, the last year question paper was discussed
- Today we discussed about the possible question, so It was a review from the begining which was really good to review what we all learnt during this semester,
Was there anything today that was difficult to understand?
- How mirror reflection image was introduced using 6 points.