Outline for Today
Assignment 2, Chapter 5, and Midterm on Wednesday
Administration
Today
For Next Meeting
Wiki
Link to the UR Courses wiki page for this meeting
Media
Transcript
Audio Transcript
-
Happy Monday you
-
so for those of you who are
eligible, this is the election
-
day, I encourage you to take
time to cast your vote if
-
anyone a Saskatchewan Rough
Rider? Fan? Yeah. Me, too.
-
Anyway, there was about 10
seconds in the game between
-
Montreal and Winnipeg that
changed the outcome the outlook
-
for Saturday's match against
Calvary here and
-
hope it's All for The Best. I
-
so I didn't have the attendance
set up for the last meeting the
-
23rd because that was supposed
to be our mentor when I set
-
things up and I fixed in some
places, but not another. So when
-
you go to that link now to do
attendance, there are two of
-
them, so you can record your own
attendance.
-
If you were here on the 23rd or
-
you had the opportunity to say
you were here on the 23rd
-
so there's that.
-
So any questions or concerns
about assignment two,
-
here's a sample from code. Alex
car, those of you are in 733
-
he's the lab instructor for 315
I
-
so here's the little video I
-
so there's no blading. Used it's
just you get
-
the colors from the vertex
attributes in the East in The
-
JavaScript file.
-
So here the
-
the box is made out of six cubes
that are squished. That's one
-
approach. There are others that
seem okay? Okay,
-
So I have updated the links. I
-
and I created a class discussion
about
-
it, And here's the link to
submit a newer courses and
-
so here the collection of the
PowerPoint slides that you can
-
reference.
-
We'll look at seven, 7.3 here
today, and
-
That will be the extent
-
of our discussion You
-
so should we go through
-
No Winter. I
-
screen, you can see a pixel of
the smallest person moving.
-
So each pixel on the display
shows a sample how
-
so we don't think of pixels
having shapes, not a square or
-
rectangle, but each point on the
display is showing a sample of
-
the that we're representing,
-
starting from Black. Describe or
sketch how you would get the
-
color white using the three
primitive colors. How would it
-
differ if you started From white
and went to black? I
-
so if we start from black, we
-
have certain values of
-
zero for red, zero for green,
-
and zero for Blue. And
-
same so
-
this is red and
-
This is green. I'm
-
this is blue. I
-
so green plus blue is
-
yellow And
-
yeah, well, it's actually cyan.
I
-
red plus green, yellow.
-
And then blue plus red
-
is Bucha in General, and then,
-
style, okay, it's
-
not Adding the
-
no less,
-
anyway we have
-
what Can we say about RGB or
going from. So that's the color
-
we use on our displays. Start
from black or nearly black. So
-
what can we what adjective can
we use for RGB? Additive, yeah,
-
additive, I
-
so if we start from white, let's
say we're printing something,
-
then we can apply cyan, magenta
and yellow inks to get The
-
colors by subtracting from
White.
-
So CMY
-
is
-
subtractive i
-
If we look
-
at this cube on its diagonal,
-
so we go From zero to 00, to
-
I'm not Doing very well Here
with My I
-
so we'll See the colors
-
of around the edge of the
-
circle. So
-
I was trying to draw a hexagon.
I
-
so we have a way to think about
colors, which is a bit more
-
intuitive and
-
it's not perfect, though. So
this axis from left to Lake is
-
the valley and
-
in the distance from the center
-
to the edge
-
as we're moving out, as we move
along that
-
path, we change the saturation.
So we go from white
-
if we're doing yellow. So this
is white with a little tinge of
-
yellow. This is yellow with a
tinge of white,
-
and then you get full on Yellow
at the edge. So if the
-
value is
-
zero, doesn't matter what the
other
-
other parameters are. So
-
this is an angle and
-
this is just a value between
zero and one,
-
Displaying two. Represented that
way. Does that make sense? I
-
so I brought in the hue
saturation value. That's not
-
necessarily part of that
question. I
-
so
-
maybe it's a good idea to Well,
I
-
maybe a good question is, use
these four words In a sentence.
-
What do You think about That? I
-
we can take discrete take
samples of A continuous
-
phenomena to Create a discrete
representation. We
-
So What other variable do we
have to intend that when We're
-
creating this discrete
representation of a continuous
-
phenomenon?
-
I The precision
-
of The representation and
-
so the precision of the
representation is determined By
-
the precision with which we
store each sample and
-
one bit doesn't give us very
much precision. Black or
-
white, two bits give us a bit
More and
-
4s that
-
gives us
-
16
-
levels and
-
so we need to save this to store
information about the red, green
-
and blue values. So
-
that gives us $16.7 million
-
i Does that seem okay? I
-
how do we represent A point in
homogeneous coordinates?
-
How about A manager? I
-
a TLA is a three letter acronym
or abbreviation, because It's
-
not really acronym, can't
pronounce it. You
-
You don't have to worry about me
asking that. You don't have to
-
Write
-
that One down. You
-
What's
-
a feature of using WebGL two
-
when it comes to interaction,
-
we don't have to specify our own
And our own witches and so on
-
and
-
we're able to associate covad
functions with events. So when
-
something's clicked, we
-
take the appropriate action. A
-
long time ago, interaction was
done by poly, had a big loop,
-
and you just test that this
happened or that happened, and
-
it would just go on And on or
-
there's a typo there.
-
So let's Think about
-
the case
-
of code in the textbook. What do
we have if we have a
-
graphics programs and we have a
we have
-
graphics dot HTML and
graphics.js and
-
there could be more, but let's
Stick with these two.
-
Anyone like to buy a vowel or
make a guess or a consonant? Are
-
there any ease I
-
one.
-
Ah, yes,
-
we have two shaders, vertex and
fragment,
-
and we put them in the HTML file
-
what else is there? Wow, you're
good. I
-
Yeah, so we set up the canvas in
the HTML file, and we're going
-
to connect to it. We're going to
create a contact, a web GL, two
-
rendering context attached to
the canvas.
-
So what's In the graphics.js
file? So
-
and set up offers and
-
that Just go off So
-
so there's a question about grow
and Fauci that We're going to
-
cover next chapter so You can
-
ignore that On the screen. I
-
Are you seeing a little flashing
up? Yeah, I wonder if
-
that was well timed with the
flash. I wonder if there's
-
something wrong with the
projector okay,
-
why are triangle strips
-
important? The computationally,
the most efficient
-
represents about any kind of
-
objects.
-
It. I heard most of that it's
computationally efficient. It's
-
the most computationally
efficient way to
-
represent any kind of object, as
opposed to using the context of
-
concave, which is
-
at the context, which is a
-
disgusting community, yeah, so
they're good because we know a
-
triangle lies in the plane so We
don't have to worry about
-
quadrilateral not being a
-
not being
-
in the same plane, you get that
for free with triangles. You
-
We don't want three points on a
line,
-
though, so that's the only case,
-
and we don't want to really thin
triangles either, but we can
-
create a mesh
-
With triangle strips,
-
and we don't Have we can
-
specify vertices. We
-
so we get a large triangle,
Maybe
-
1v 2v 3f, v2 v3 v4 then
-
So we get four triangles from
six vertices and
-
as opposed to
-
more triangles and
-
each with three vertices.
-
So we're saving 50% on storage,
because we're not
-
duplicating values
-
from
-
we're not repeating vertex
values. So there are many ways
-
that we can we
-
and make our representations
more efficient. And it's not so
-
important
-
when we have six or eight
triangles, but when we have a
-
million or so, then it's
-
more of an issue.
-
Does that make sense?
-
Why is the flattened function
required in The code from the
-
tax code You
-
extra JavaScript and
-
capabilities and just creates
account remember the exam i
-
Three, two, I would have to
check that. Does anyone know
-
offhand? I
-
Okay, well, I'll check that.
-
Turn the projector off and now
it comes back on this screen.
-
See whether
-
it would be happy again.
-
So how do we get
-
any seeing in term,
-
say we have world coordinates
that deal with kilometers? How
-
do we make that huge scene that
we've modeled? How do we make it
-
so it fits into the minus one,
minus one, minus one to 111,
-
cube.
-
Does that make sense? I
-
So, Oh, okay,
-
it's happy again. I
-
Does That make sense? Do
-
we do transformations.
-
We transform the walls
-
with you. And
-
then we apply the projection and
-
what is that buffer? Why is it
useful? Or how it is used?
-
What's another name for it?
-
Yeah, can We also talk about
depth buffer? I
-
so restoring
-
for each pixel
-
value we update we store a Z
value
-
and we test whether, before we
make a change
-
to the
-
the image that's displayed, we
test whether the new value at
-
the depth is closer to the
viewer than the one that's there
-
already. So if the depth is less
with the new value than the
-
update pixel, if it's Not
closer, you don't if
-
Does that make sense? I
-
anything else that Come comes to
mind so
-
it. So We can design our own
path here and
-
so that's a lot of the code In
Chapter five in the book is
-
great meshes, and If
-
you're familiar with Triangle
strips, that idea of ink. We
-
can make a surface, okay,
-
I think we're at the end of
-
the day today. Thank
-
you very much for your
-
participation and
-
otherwise,
-
we have office hours tomorrow,
in person
-
or On zoom. I Move And
-
or On zoom. I Move And
Responses
What important concept or perspective did you encounter today?
- The important concept I learned from the meeting was the review about the midterm. I learned and understood from what I did not understand from when we first talked about it such as the importance of flatten float32, sketching the color white using the 3 primitives, relation between window and viewport, etc.
- Homogeneous coordinates and its uses
- Going through prior midterm exam questions in preparation for our midterm exam next class
- Some important concepts I encountered in class today are the Assignment 2 sample video provided by Alex Clarke, then we went over questions from a previous midterm, and did a quick demo of hat.html code.
- Some practice questions from the midterm; how colours (RGB+CMY) work, display terminology, and a few other general CG questions.
- Midterm review go brrrt
- Discrete, sampling quantization and continuous also about colors and midterm
- Clip space
- Geometry of a pixel
- We discussed the previous midterm exams, including pixel, colors, etc.
- saturation value
- we reviewed former midterm questions which was really beneficial to knowing what to study and the format of the upcoming exam
- We reviewed the midterm topics, including the pixel as the smallest addressable unit on a display, the RGB additive and CMYK subtractive color models, triangle strips, the Z-buffer, and the advantages of WebGL2, such as HTML5 compatibility and the use of callback functions and event listeners for interaction.
- learn about midterm question. pixe, additive color mixing, subtractive color mixing, depth buffer, homogeneous coordinate
- about exam
- Review of a old midterm, we use it to study for the current midterm
Was there anything today that was difficult to understand?
Was there anything today about which you would like to know more?