Thank you so much for sharing this! Im studying Computer Science online, alone, with books. Sometimes I miss a teacher explaning. It makes a massive difference.
Very interesting, just an MD engineer pilot retired Army officer trying to learn something new that i can practice python with. Really liked his lec on quaternions - all my engineering and physics crs and no one mentioned quaternions , yet i recently started a book on aircraft controls and yep there they are , i'm so happy i discovered them, they are so cool!
Whats crazy is that this how your eyes work, the entire process of squishing the images we see is done for us, here we see the process deconstructed and its awkward as fuck.
This isn't really how our eyes work. this is far weirder. Here the 3D space is "physically" squished. With our eyes we receive just a small portion of reflections of light from the 3D space. That's why raster graphics aren't as "realistic" as as pathtracing/raytraced light simulations, but it is way faster. Still really cool.
I know this is old, and I'm also no expert, but clip space is 2d whose domain is -1,1. Clip space is the projection of image space from the origin along -z onto the xy plane. So no, he doesn't mean "clip space", he means "image space."
11:31 there's a discussion about why camera faces -z axis. The x and y axes you'd want to be right and up respectively. You'd also want a right-handed coordinate system (as the other choice is evil) which means the positive z-axis will be behind the camera.
+techeadache OMG! And after that point in the video if you squint your eyes the board appears to be full of Illuminati symbols. I swear that professor will shape shift into reptilian form soon!
+LAnonHubbard Run the video backwards. You might be able to spot a hooked x. Only the penitent man shall pass. Damn negative sign! Stay out of algebra. Everyone hates you. Stupid subtraction wannabe. Get out of here before the professor rubs you out. Yeah you heard me. Keep walking.
thanks for the lecture, but when you bring everything inside the cube by using the 4x4 matrix, this still volume, while the image should be a plane square or rectangle (film). is any other matrix is going to do this job, or I missed things.
Why use pre-matrix multiplication? He mentions OpenGL. Every single tutorial online or in a textbook I have seen uses column vectors and post multiplication. Why the inconsistency?
9:24 "THE BOX"[the camera] flies around in 3D space. What is equation of that transform function? 11:05 only shows the end result of the world space after it is transformed into the camera space. Did I miss a lecture? The answer might be hidden in "Rotations About an Arbitrary Axis". But I will have to put two and two together. I hate thinking for myself. Well at least the viewing transform is written out. The projection transform is described but not written either. I can guess that it is a 4x4 matrix that accomplishes a simple division by W. Is "THE FILM" mapped into the cube-shaped viewing space at an adjustable position or is it fixed in OpenGL?
+techeadache i dont know if you figured it out since, but the way I understand is that before projecting the point using the camera transform, the points of the 3d world are converted to the camera space (where the 'Z' is behind the camera). So if the camera moves in the space, before computing the picture, translation + rotation have to occur to make things right before using the camera transform. (then again, I might be wrong, I just discovered today ^^ )
+mr_os Yeah it would have been nice if that professor mentioned something like that. I am sure that is exactly what is meant to be done. Even if it is trival or brainless or just plain obvious. All of a sudden, all the world space points are in the camera space. And it felt like I missed a step in the 3D pipeline. Is it by Euler's Angles or Quaternions or some other mathematical magic that moves those points around? Maybe this lecture should have been called "The Perspective Projection Viewing Transformation with a Contemporary Camera Classification Part 2(a)".
My guess is that it had to start simple, so you just compute a picture with the origin of the world at the camera point (ignoring the camera moving). Once students understand that process, you can teach the rest. But don't get me wrong, I think you are right. At least a little mention should have been made. And yeah, you would need to compute a translation + rotation with quaternions (to avoid gimbal lock) before the camera transform. The result would still be one single 4x4 matrix (that changes when camera changes position).
Back in the mid 1980's I took an extension course at UCLA. I didn't have time to eat a decent meal before class, so I ate out of a vending machine and went up to the Engineering-Math Library before class. I Stumbled on to some IBM Research Journals that were very enlightening. Math PhD's had carefully researched algorithms and presented how they would do it if memory was not constrained. Then, they bastardized the algorithms to squeeze them into crippled computers. Before I finished the course, the friends of the library literally gave away these volumes because they were more than 15 years old and the library had run out of shelf space. So, the bastardized algorithms survived, but the research into what should have been got destroyed. Our algorithms today are simply the patched versions of the bastards. Nobody has ever revisited what should have been. Its simply very awkward settled science, good enough for half a century ago when the bigger IBM 360's had 16K of core.
The professor is awesome. Hope I get teachers like him when I get into college.
The lectures are so cool and interesting so far! I expect an applause from the audience at the end of each video.
I loved the lecture. Such intuitive explanation :) If the professor is reading this comment, you have my respect Sir.
Thank you so much for sharing this!
Im studying Computer Science online, alone, with books. Sometimes I miss a teacher explaning. It makes a massive difference.
Very interesting, just an MD engineer pilot retired Army officer trying to learn something new that i can practice python with. Really liked his lec on quaternions - all my engineering and physics crs and no one mentioned quaternions , yet i recently started a book on aircraft controls and yep there they are , i'm so happy i discovered them, they are so cool!
You can tell just from one lecture that this guy is a good teacher.
@XLC lol that's fine, it's basic math errors that the student can notice themselves. What a teacher is worth is how well they can convey the concepts.
Wowee! Fantastic explanation and love his enthusiasm. Surprised there's only 41k views - thank you for posting!
I can't even imagine how easy it could have been to understand this stuff. Thanks 🙏
hell of a lot better than my graphics lecture...
Yeah, almost feel scammed comparing it to this
A more commonly used name for the shape of "truncated pyramid" used in this domain is frustrum
These lectures are really great!
This was pritty complex!! Great teacher . Thanks
Thank you so much for this lecture, way better than many online tutorial.
Thanks for putting these up! Took a couple pauses but by then end I felt good about it.
Nice, thanks for proving this awesome content and explaining with motivation! We really appreciate your effort
Nice audio quality. Much easier to follow with clean audio.
Whats crazy is that this how your eyes work, the entire process of squishing the images we see is done for us, here we see the process deconstructed and its awkward as fuck.
This isn't really how our eyes work. this is far weirder. Here the 3D space is "physically" squished. With our eyes we receive just a small portion of reflections of light from the 3D space.
That's why raster graphics aren't as "realistic" as as pathtracing/raytraced light simulations, but it is way faster.
Still really cool.
awesome explained thanks for sharing!
Fantastic teacher
Very nice lecture. Any art student could easily draw 3D perspective drawings for him to show pyramid stump and cube. That would make it even better.
This comment is especially funny if you are an art student watching this video so you can draw in 3D
Very nice explanation. Thanks!
maybe mock-up vector-axis model(like with wires) that can be manipulated?
This video helped me a lot! Thank you so much for sharing it!
i 'think' the professor meant "clip space" when he wrote "image space". after the w division, it becomes "ndc space"
I know this is old, and I'm also no expert, but clip space is 2d whose domain is -1,1. Clip space is the projection of image space from the origin along -z onto the xy plane. So no, he doesn't mean "clip space", he means "image space."
Thank you, i really understand so a lot now.
It's not a truncated/compressed cube, it's basically a planar cut, which can be round or square, whichever is best for your math.
because of the nature of infinity and L2 norm.
11:31 there's a discussion about why camera faces -z axis. The x and y axes you'd want to be right and up respectively. You'd also want a right-handed coordinate system (as the other choice is evil) which means the positive z-axis will be behind the camera.
+LAnonHubbard
27:52 The massaged cube turns evil (left-handed) after a lot of rubbing. Corrupted with pleasure!
+techeadache OMG! And after that point in the video if you squint your eyes the board appears to be full of Illuminati symbols. I swear that professor will shape shift into reptilian form soon!
+LAnonHubbard
Run the video backwards. You might be able to spot a hooked x. Only the penitent man shall pass.
Damn negative sign! Stay out of algebra. Everyone hates you. Stupid subtraction wannabe. Get out of here before the professor rubs you out. Yeah you heard me. Keep walking.
thanks for the lecture, but when you bring everything inside the cube by using the 4x4 matrix, this still volume, while the image should be
a plane square or rectangle (film). is any other matrix is going to do this job, or I missed things.
what was this class called?
7:57 Rage against the chalk
Why use pre-matrix multiplication?
He mentions OpenGL.
Every single tutorial online or in a textbook I have seen uses column vectors and post multiplication.
Why the inconsistency?
Some programs do it one way, some do it another way. You just need to know what your system uses (just google row-major vs column-major opengl)
there's the chance its how the university/academy does math as a whole, but it could be a convention the teacher prefers just in general
Many thanks for this great video!
At moment 25:26 shouldn't it be [0 0 -an+b +n] because -n×-1 = n?
nevermind a student fixed it at 26:12 XD. AMAZING LECTURE
I didn't understand either, I had to remember how to multiply matrices and came to the conclusion that there was a typo on the board
Great lecture
This is awesome. Thank you!
9:24 "THE BOX"[the camera] flies around in 3D space. What is equation of that transform function? 11:05 only shows the end result of the world space after it is transformed into the camera space. Did I miss a lecture? The answer might be hidden in "Rotations About an Arbitrary Axis". But I will have to put two and two together. I hate thinking for myself. Well at least the viewing transform is written out. The projection transform is described but not written either. I can guess that it is a 4x4 matrix that accomplishes a simple division by W. Is "THE FILM" mapped into the cube-shaped viewing space at an adjustable position or is it fixed in OpenGL?
+techeadache i dont know if you figured it out since, but the way I understand is that before projecting the point using the camera transform, the points of the 3d world are converted to the camera space (where the 'Z' is behind the camera).
So if the camera moves in the space, before computing the picture, translation + rotation have to occur to make things right before using the camera transform.
(then again, I might be wrong, I just discovered today ^^ )
+mr_os Yeah it would have been nice if that professor mentioned something like that. I am sure that is exactly what is meant to be done. Even if it is trival or brainless or just plain obvious. All of a sudden, all the world space points are in the camera space. And it felt like I missed a step in the 3D pipeline. Is it by Euler's Angles or Quaternions or some other mathematical magic that moves those points around? Maybe this lecture should have been called "The Perspective Projection Viewing Transformation with a Contemporary Camera Classification Part 2(a)".
My guess is that it had to start simple, so you just compute a picture with the origin of the world at the camera point (ignoring the camera moving).
Once students understand that process, you can teach the rest.
But don't get me wrong, I think you are right. At least a little mention should have been made.
And yeah, you would need to compute a translation + rotation with quaternions (to avoid gimbal lock) before the camera transform.
The result would still be one single 4x4 matrix (that changes when camera changes position).
i witch i learned this at school :(
Are the recitations any where to be found?
Anybody from game development:).
Lol dude you dont need this for game development keep it simple
@@nikunjmajithia5002 you need this
Very nice !
at 15:18 I'm assuming this would be the film?
Is the camera pyramid the view frustrum?
view frustum is the frustum of the pyramid (the truncated pyramid by near and far planes)
Very Good
26:36
which formula is he using
He divides eveything by W(the n)
Amazing
anonymous
trying yo keep up with 4 ilts english. now im shopstore owner. tomorrow will be that call telling me we need your animation practiceses.
Back in the mid 1980's I took an extension course at UCLA. I didn't have time to eat a decent meal before class, so I ate out of a vending machine and went up to the Engineering-Math Library before class. I Stumbled on to some IBM Research Journals that were very enlightening. Math PhD's had carefully researched algorithms and presented how they would do it if memory was not constrained. Then, they bastardized the algorithms to squeeze them into crippled computers. Before I finished the course, the friends of the library literally gave away these volumes because they were more than 15 years old and the library had run out of shelf space. So, the bastardized algorithms survived, but the research into what should have been got destroyed. Our algorithms today are simply the patched versions of the bastards. Nobody has ever revisited what should have been. Its simply very awkward settled science, good enough for half a century ago when the bigger IBM 360's had 16K of core.
I love you UC DAVIS
kinda wish he could draw in 3d
dudeeeeeee