I'm not sure where to put this comment, but I've been super impressed by this whole series! The topics are pretty textbook, but they are presented very well: great graphics, inflective speaking (without it sounding intentional or patronizing), historical context, and in my opinion this is in comparison to the other crash courses y'all have done as well. (sorry to the other crash courses =P ) Anyhoo, good on you! Can't wait for more! =D
I met the guy who created the Utah Teapot! I was an intern at Adobe's headquarters in San Jose in '07, and I needed some help writing a basic graphics algorithm. My boss (an equally high muckity-muck at Adobe, Jim King) called over to the Photoshop department and got Mr. Newell and another dev to come by and help me write this filter. It was a trip!
An enormous amount of computing. I just completed a clip that runs 1 minute, 21 seconds (Blender 2.8). It took 2 1/2 days to render. This video explains why. Great work.
great respect! finally I got an overview of all the terms used in GPU in a very well explained manner. LESS is MORE, SIMPLICITY is a KEY... Please keep going the good work!
As a 3D artist, I have to say, that we avoid triangles like pustulent rats. We work as much as possible with quads (four-sided polygons) It's pretty hard to control edge flow with triangles and sub-dividing is a pain too. Hate my comment to be a negative one, because I love this series and site in general. Thanks for making this.
thank you for this series, its super helpful to have someone easily lay out everything from the bare metal architecfture allllll the way up to high level programming languages and various technological applications
gracefool Yes, the General Projective Transformation was a watershed for computer graphics. I first encountered it in Elementary Nomography in 1960-61. Unfortunately, our computers weren't really up for it then. It was mostly punch cards and line printers.
Your second question is the easy one: assuming the simplest kind of anti-aliasing, super sampling, x2 means double the resolution is rendered before being averaged into the final image, x4 means quadruple, etc. There are other more optimized algorithms that are far more efficient with slightly less quality. For the first I googled and found a 1985 paper that answered it: 1. eyeball optics 2. fixation instability (saccades) 3. photoreceptors are in a hexagonal grid (very high density, better than a grid) 4. each photoreceptor acts as a low-pass filter 5. your brain effectively does temporal anti-aliasing But it still has limits, you can see aliasing when looking at certain regularly repeating objects, e.g. a fine wire mesh held at a steep angle, or standing next to a long chain-link fence.
the output of the matrix multiplication gives a distance from the camera in addition to it's location on the screen. So basically you input a point somewhere in space at (x,y,z) and after you multiply it by the different matrices you get a new point (x,y,z) where x and y is where on the screen it should be drawn and z is the distance.
Definitely one of the best crash courses ... Can't wait for an episode (or a few maybe) on Internet and local network security... viruses, worms, Malware, firewall ...
I have an exam in this tomorrow and I wish I'd found this video at the start of the course. Literally saved my bacon, suddenly everything makes sense. Thank you so much x
Thanks a lot for these videos, im a chemisrty major but i have been interested in computing lately and these videos are both informative and fun to watch
Really great stuff, this is excellent for me who knows quite a bit about programming, but there are clearly many areas where I have little knowledge and this fills those places nicely
If you're watching this and want to learn more, one of the foundations of 3-D graphics is Linear Algebra. Here is a crash course in Linear Algebra: czcams.com/video/kjBOesZCoqc/video.html
Amazing! I'm a 3d artist for quite some time and even though I deal with this topics every day, it is fascinating to understand what is happening behind the curtain! Thank you!
I thought she was going to get to some more complex lighting models to explain the shadows cast by the handle Utah teapot (since that was the reason it was a teapot). But I guess that she can't cover everything.
True, she can't cover everything. It IS "Crash Course" after all. :) But I enjoy you recognizing the Utah teapot. It's like an inside joke or easter egg (not entirely because it wasn't mentioned or alluded to).
Thank you, it makes so much sense now when I learn 3DS MAX, every shape and move has their own algorithms, it's not just projecting 2D imagery on screen
Too good. Have been reading/seeing lot of material over the last year. Lot of info, but no full picture. You connected all the dots and gave me a bigger picture. Thanks. Can you please map all the concepts you talked about to the following blocks Rasterizer/Vertex Shader/Pixel Shader ??? Also didnt understand why triangles win. You can draw a unique plane by 4 points also if i am not wrong.
Yash Patel Back in the day, my bosses liked ALL CAPS since they felt they were getting more for their money. After I graduated from punched cards to TTY terminals I never looked back at ALL CAPS.
I agree. An art course would be nice...like, how to do it. Just not get into "modern" art, or else at that point you throw away all of the skills that you've learned and just throw paint at the canvas.
The next one should talk about how GPU works, parallel processing etc. Also, let's get into some networking. IP and MAC addressing, TCP/UDP, routers, ARP etc.
Great stuff. I’ve learned a lot. I just wish she’d slow down a bit. There are virtually no pauses. I’ve binge watched through to here, and am really starting to notice it.
Looks like you need to go to school, hun. Here, let me fix it for you: "Who else would *have* preferred watching this video all day *instead of* going to school." The word "then" is a transition in time, meaning you want to watch this video all day, and then go to school after you're done watching. The word you were looking for was *"than,"* not "then," but even so, it would have made for a grammatically awkward sentence. Please go to school.
Tone doesn't necessarily come across properly through text based communication, so I suppose it's easy to read it with a condescending tone; I apologize. Though I may have been slightly frustrated at the general lack of concern for education and the English language that seems to run rife in society today. So again, I'm sorry if any snark managed to make its way into my words, it was more due to frustration than an intent to be mean.
The Sega Saturn used square polygons (called "quads") that were basically stretchable 2d sprites with 4 corners, and it made the graphics far more complicated and inefficient than they needed to be (at least 25% less efficient than triangular polygons!)
I believe you mean ray casting, one of the first ray-tracing algorithms developed back in 1968. True ray tracing is far more computationally expensive and so wasn't used for realtime rendering until fairly recently. But you're totally right, they could have gone into so many more details. Maybe they'll revisit graphics later. I'd like that. They didn't even come close to covering a modern rendering pipeline :3
Plystire I know of a game that was made with ray tracing entirely. It wasa first person shooter but the trick was that it wasn't really 3d. They just extended the walls upwards and downwards and scanned horizontally to visualise the map. Maybe it was duke nukem. I dont remember.
pop pop: That's not ray tracing, it's what Plystire said: raycasting. Duke Nukem 3D used it as well as Doom and Wolfenstein 3D. It was popular in the 90s because it was fast on limited hardware. Raytracing existed then, too, but would be incredibly slow on old hardware.
Small mistake. Quads are better than triangles when making 3d models since quad deform better in a 3d program. Triangles tend to make creases. You will see 3d artists try very hard to create an entire figure in quads, for example, look at the teapot you show.
The math is extremely simple (as you would expect because in order to be useful it needs to be computed faster than to actually process the polygon). As mentioned in the video, each polygon has a vector which defines its surface normal. You just compute the dot product of this vector with the vector facing the camera. If the result is positive the polygon is oriented towards the camera. If it is negative it points away from the camera and can therefore be discarded.
Best explanation of Anti-Aliasing ever.
The study of 20 years converted into 12 minutes
Yussef bens true
f in comments for them
@@cezarzbughin3362 f
f
More like 2000 years
"Triangles for the win!," is a phrase I never expected to hear in my lifetime. Great episode. Thanks for sharing!
Triangles are also super important for structural engineering.
Triangles run the world. **X-files tune playing in the background**
In modelling for animation we hate threes we want four nothing more nothing less
Circle gets the square?
Triangles win zelda
Most fundamental 3D modeling techniques are explained just in 12 minutes in crystal clear way. Wow! I'm so much impressed.
I'm not sure where to put this comment, but I've been super impressed by this whole series! The topics are pretty textbook, but they are presented very well: great graphics, inflective speaking (without it sounding intentional or patronizing), historical context, and in my opinion this is in comparison to the other crash courses y'all have done as well. (sorry to the other crash courses =P ) Anyhoo, good on you! Can't wait for more! =D
This is the gold standard man!
Note: that wasn't just any teapot. en.wikipedia.org/wiki/Utah_teapot
They somewhat mentioned this but not really.
Thanks to Tom Scott, I recognized it right away!
I met the guy who created the Utah Teapot! I was an intern at Adobe's headquarters in San Jose in '07, and I needed some help writing a basic graphics algorithm. My boss (an equally high muckity-muck at Adobe, Jim King) called over to the Photoshop department and got Mr. Newell and another dev to come by and help me write this filter. It was a trip!
... and this is why I read the comments!
"We live in a 3D world and I am a 3D girl." Said so seriously I almost didn't catch, amazing.
An enormous amount of computing. I just completed a clip that runs 1 minute, 21 seconds (Blender 2.8). It took 2 1/2 days to render.
This video explains why. Great work.
Carrie Ann, please make this series go forever
Man, this episode is actually incredibly well done. I mean all of these are, but the way you guys simplified this was especially well done.
I'm impressed on how you can present a rather complicated subject so that people get a good idea about what is going on. I presume.
great respect! finally I got an overview of all the terms used in GPU in a very well explained manner. LESS is MORE, SIMPLICITY is a KEY... Please keep going the good work!
Very cool. The humor/speed/content ratio is perfect, and I loved the audio effects.
This series is no lie, ONE OF THE BEST PARTS of my week
Great way of introducing an amazing technique like back face culling as "speaking of glitches".
As a 3D artist, I have to say, that we avoid triangles like pustulent rats. We work as much as possible with quads (four-sided polygons) It's pretty hard to control edge flow with triangles and sub-dividing is a pain too. Hate my comment to be a negative one, because I love this series and site in general. Thanks for making this.
Thank you PBS and everyone that finances it, this is a great show.
thank you for this series, its super helpful to have someone easily lay out everything from the bare metal architecfture allllll the way up to high level programming languages and various technological applications
As a mathematician specialized in computer graphics, thanks for this.
@ElPaisa As a DirectX programmer i can say it is word to word.
@@Shivang4 As a opengl programmer hello
@@linuxterm7622 sup!
as a C with SDL2 programmer, Hello
LongGone Eve as a binary programmer, hello.
Just wanna say this series is amazing and keeps on giving. This is a great first introduction to all of these topics.
Nice as always. Things to mention that would have made it even nicer:
1. Anti-aliasing isn't just artificial, your eye does it too
2. Matrix math
gracefool Yes, the General Projective Transformation was a watershed for computer graphics. I first encountered it in Elementary Nomography in 1960-61. Unfortunately, our computers weren't really up for it then. It was mostly punch cards and line printers.
Almost all of computing is matrix math and I believe she already explained how computers store values into matrixes and simple matrix math.
3. Quaternions. That teapot was rotating after all :)
Your second question is the easy one: assuming the simplest kind of anti-aliasing, super sampling, x2 means double the resolution is rendered before being averaged into the final image, x4 means quadruple, etc. There are other more optimized algorithms that are far more efficient with slightly less quality.
For the first I googled and found a 1985 paper that answered it:
1. eyeball optics
2. fixation instability (saccades)
3. photoreceptors are in a hexagonal grid (very high density, better than a grid)
4. each photoreceptor acts as a low-pass filter
5. your brain effectively does temporal anti-aliasing
But it still has limits, you can see aliasing when looking at certain regularly repeating objects, e.g. a fine wire mesh held at a steep angle, or standing next to a long chain-link fence.
the output of the matrix multiplication gives a distance from the camera in addition to it's location on the screen. So basically you input a point somewhere in space at (x,y,z) and after you multiply it by the different matrices you get a new point (x,y,z) where x and y is where on the screen it should be drawn and z is the distance.
This video was very helpful. I've just started learning 3D graphics and this helped me understand how it works. Thanks!!
"We're living in a 3D world and I'm a 3-dimensional girl!"
Weird flex but ok.
I am from Utah, home of that famous teapot, and I am proud of my state's contributions to 3D graphics!
@4:52 Thank you for finally explaining what that setting is.
I want more of this, this video was right in my wheel house.
Ashamanknight it was my cup of tea
It floated my boat.
Knocked me socks off
Definitely one of the best crash courses ... Can't wait for an episode (or a few maybe) on Internet and local network security... viruses, worms, Malware, firewall ...
remarkabaly brillient, short and crisp. Seen many videos but this one stands out. Many thanks.
I have an exam in this tomorrow and I wish I'd found this video at the start of the course. Literally saved my bacon, suddenly everything makes sense. Thank you so much x
Carie Anne: 'I'll ping you next week'
Me: 'I hope the ping response isn't delayed too much' :)
This is the best series in this whole website.
Thanks a lot for these videos, im a chemisrty major but i have been interested in computing lately and these videos are both informative and fun to watch
Very well made video with nice simple explanations while also mentioning the more complex ones, good job
Really great stuff, this is excellent for me who knows quite a bit about programming, but there are clearly many areas where I have little knowledge and this fills those places nicely
Good stuff for sure!! There needs to be a video like this for everything.
This is one of the best videos I've seen on the topic.
Can't wait for the networking episodes!
If you're watching this and want to learn more, one of the foundations of 3-D graphics is Linear Algebra. Here is a crash course in Linear Algebra: czcams.com/video/kjBOesZCoqc/video.html
Andrew Farrell Also the General Projective Transformation. Dunno if YT has anything on it, though.
3 Blue 1 Brown is the best
Amazing! I'm a 3d artist for quite some time and even though I deal with this topics every day, it is fascinating to understand what is happening behind the curtain! Thank you!
Explained with such clarity. A great teacher.
Raycasting and raytracing!
... aww, nevermind.
I thought she was going to get to some more complex lighting models to explain the shadows cast by the handle Utah teapot (since that was the reason it was a teapot). But I guess that she can't cover everything.
True, she can't cover everything. It IS "Crash Course" after all. :) But I enjoy you recognizing the Utah teapot. It's like an inside joke or easter egg (not entirely because it wasn't mentioned or alluded to).
Normals
FilmmakerIQ did a video about that : czcams.com/video/Qx_AmlZxzVk/video.html
This was a very nice summary. I'd also like to see more (ray tracing, etc).
I was always searching, how the 3d graphics work. You Made my Day. Thanks a lot :)
I don't know why it took 3 years for me to find this video, very good info and just what I was looking for.
I didnt think that my curiosity would be satisfied by a 12min video. I definitely thought wrong
This is my job in an extremely tiny nutshell. :D
Charlotte Brown you're a graphics designer?
You're a GPU?
You're an Xbox One ?
Wow! I want to work in an extremely tiny nutshell like you!
You make teapots
I mean why you need a Computer Science Degree after watching these videos.
this content should be used at schools
Networking: Crash Course Computer Science #28
really well written & produced & delivered!
Good job! Ex graphics prof, doing review, watched this on 2x and spotted something I didn't remember well until you explained it.
Thank you, it makes so much sense now when I learn 3DS MAX, every shape and move has their own algorithms, it's not just projecting 2D imagery on screen
Loved this! Made complex concepts very accessible. Only one beef: "comprising" or "composed of", but not "comprised of." ;)
Ahhhh, Surface normals and right hand rule... Kudos on the Metal Gear Solid clip.
That was the best Aqua song reference I've heard to date. Great intro lol
I was trying to understand this concept for 2 days but now it is clear after watching this video. Keep doing the crash courses.
The networking hints towards the end where very blatant.
Nice dp :P
this is like a summary to the computer graphics course I took last semester
Blown away... Subscribed
Too good. Have been reading/seeing lot of material over the last year. Lot of info, but no full picture. You connected all the dots and gave me a bigger picture. Thanks.
Can you please map all the concepts you talked about to the following blocks
Rasterizer/Vertex Shader/Pixel Shader ???
Also didnt understand why triangles win. You can draw a unique plane by 4 points also if i am not wrong.
Love this course. Keep the good work!
YOU GUYS NEED A CRASH COURSE ART. LIKE UNIT 1: PENCIL, THEN PAINTING AND SHADING AND PENMANSHIP AND YES PLEASE
You should look up "all caps" on google
try pressing the the Caps Lock key
O THANKS!!! ITS SO MUCH EASIER TO WRITE NOW!!!!!!!
Pierre Gabory
Maybe he's a mainframe COBOL programmer still using punch cards.
Yash Patel Back in the day, my bosses liked ALL CAPS since they felt they were getting more for their money. After I graduated from punched cards to TTY terminals I never looked back at ALL CAPS.
I agree. An art course would be nice...like, how to do it. Just not get into "modern" art, or else at that point you throw away all of the skills that you've learned and just throw paint at the canvas.
a very good starting point for anyone looking for entry points to further reading. thanks for this :)
The next one should talk about how GPU works, parallel processing etc. Also, let's get into some networking. IP and MAC addressing, TCP/UDP, routers, ARP etc.
Doom 1 did the occlusion not with the z-buffer, nor the painter's algorithm. It did it using the BSP tree algorithm.
Hooly...!! What a video! I Love at first sight with this format!
After all this time of gaming, i finally found out what anti-aliasing is. Many thanks to this amazing channel!
i swear if these guys were my teachers in my school i would never miss a day!!
4:25 Bow before me, console peasants! For I am mighty and you are weak!
Absolutely phenomenal video
Great stuff. I’ve learned a lot. I just wish she’d slow down a bit. There are virtually no pauses. I’ve binge watched through to here, and am really starting to notice it.
*Who else would have preferred watching this videos all day instead of going to school?*
Looks like you need to go to school, hun. Here, let me fix it for you: "Who else would *have* preferred watching this video all day *instead of* going to school." The word "then" is a transition in time, meaning you want to watch this video all day, and then go to school after you're done watching. The word you were looking for was *"than,"* not "then," but even so, it would have made for a grammatically awkward sentence. Please go to school.
Danielle Spargo Idk if u mocking me or genuinely tryna help but thanks anyways
no need to sound so condescending. you definitely could've corrected them in a nicer way.
Tone doesn't necessarily come across properly through text based communication, so I suppose it's easy to read it with a condescending tone; I apologize. Though I may have been slightly frustrated at the general lack of concern for education and the English language that seems to run rife in society today. So again, I'm sorry if any snark managed to make its way into my words, it was more due to frustration than an intent to be mean.
shouldn't of skipped english class I see
Serendipitous finding of the week: *TEA* in the URL!
The Sega Saturn used square polygons (called "quads") that were basically stretchable 2d sprites with 4 corners, and it made the graphics far more complicated and inefficient than they needed to be (at least 25% less efficient than triangular polygons!)
Im still usintg the 1080ti in nov 22' and its still a beast!
I was hoping for a call out for ray-tracing. It was great (back in the day) because it was easy to make 3D scenes.
I believe you mean ray casting, one of the first ray-tracing algorithms developed back in 1968. True ray tracing is far more computationally expensive and so wasn't used for realtime rendering until fairly recently.
But you're totally right, they could have gone into so many more details. Maybe they'll revisit graphics later. I'd like that. They didn't even come close to covering a modern rendering pipeline :3
I'm pretty sure he's talking about static 3D scenes created with a ray tracer (POV-ray anyone?).
Plystire I know of a game that was made with ray tracing entirely. It wasa first person shooter but the trick was that it wasn't really 3d. They just extended the walls upwards and downwards and scanned horizontally to visualise the map. Maybe it was duke nukem. I dont remember.
pop pop: That's not ray tracing, it's what Plystire said: raycasting. Duke Nukem 3D used it as well as Doom and Wolfenstein 3D. It was popular in the 90s because it was fast on limited hardware. Raytracing existed then, too, but would be incredibly slow on old hardware.
Best video of the series (for me)...so far anyway :).
I have finaly understood how 3d rendering works
You couldn't know how much such videos elaborate very deceiving ideas, your infographics are awesome guys
As an electronic engineer student(rare engineering field in my country), I love this idea
Its Very Informative..
Problems and confusion of 20 years just solve in 10 minutes...
I am become Great Fan of yours..
LOVE FROM INDIA...
Great info, thanks!
Amazingly well explained, I'mma watch all your vids now, good day
Thanks for the IT Crowd ref at the end.
Nice runthrough! It would be cool to see a slightly longer version as others have said... Best part was the madonna joke though.
what is the diffrence between texture mapping and texture filltering?
This episode is my favorite so far.
thank you
So nice and clear course! Thanks!
Small mistake. Quads are better than triangles when making 3d models since quad deform better in a 3d program. Triangles tend to make creases. You will see 3d artists try very hard to create an entire figure in quads, for example, look at the teapot you show.
Genius, thank you.
Perfect explanation for 3D graphics
@3:52 *because triangles are polygons
Thank you very much! I understood so much just in 12 minutes.
why is antialiasing called antialiasing? what is the "aliasing" that it needs to reverse?
Nicely explained
Could you please add an episode about ray tracing? I recently played through Portal with ray tracing and was amazed by how beautiful everything is.
How to determine if each plygon’s face would be seen by viewer or not? With any math? If math what mathmethics should be used?
The math is extremely simple (as you would expect because in order to be useful it needs to be computed faster than to actually process the polygon). As mentioned in the video, each polygon has a vector which defines its surface normal. You just compute the dot product of this vector with the vector facing the camera. If the result is positive the polygon is oriented towards the camera. If it is negative it points away from the camera and can therefore be discarded.
Amazing video !
Yessss one of my favorite topics