Materials and Physically Based Rendering // Ray Tracing series

  Рет қаралды 39,022

The Cherno

The Cherno

Күн бұрын

Пікірлер: 89
@TheCherno
@TheCherno 2 жыл бұрын
Hope you guys enjoyed this episode - it’s getting super exciting now! Don’t forget to learn all your math at brilliant.org/TheCherno/ Get started for free, and hurry-the first 200 people get 20% off an annual premium subscription.
@ChrisM541
@ChrisM541 2 жыл бұрын
Hey Cherno, (if the following makes sense...) any chance you could test out something I'm sure every gamer/new & some old coders will find extremely interesting, something I haven't seen anyone do:- From what I see, there's a lot of folks out there that think "the GPU does all the work" and don't realise just how much the CPU contributes to frametime/fps, and thus, how crucial it is to try to ensure your code is 'the best it can be' and to try to think about speed optimisation at all times inside the game loop (and any associated processes/dependencies). To show how the CPU(the programmer's game code) contributes... Could you test the maximum frame throughput for any typical gfx card, using pre-set frames, basically switching off everything else in the gameloop (no input/collision detection/ui update etc etc checks) apart from only the code that sends a frame to the GPU (i.e. as little CPU involvement here as possible). I don't know if the GPU 'speeds up' things if the frames are identical, if so, set up minor/enough changes to defeat that. Then, re-enable the switched off game loop items and test again. This is to show folk how much the CPU contributes to frametime/fps in a typical game loop. No problem throwing in a 'slowdown loop' inside the gameloop if frametimes are 'too fast' (of course, keep the slowdown code active for both cases...we're only measuring the frametime difference).
@pavelperina7629
@pavelperina7629 2 жыл бұрын
Hi. Looking at "shader" code at 20:17 or 26:10 i see some issue that is basically in any book older than 10 years. Computer screen uses gamma correction. Half black is not 128, but something like 180, i can't recall. What you may try is adding something like `vec3 matDiffCol = pow(u_color,vec3(2.2));` at start of your shader and something like `fragmentColor = vec4(pow(color, vec3(1.0/2.2)), 1.0);` at the end. Gray value (186.0/255)^2=0.5 for purposes of shading and color mixing and in the end half gray is converted to RGB=186,186,186. Even more correct is to use some different color space for recovery in areas where RGB values are clipped which may result to false colors in areas where one or two colors are oversaturated, but I have no experience with this. Main problem (at least for me) with PBR is getting good materials. Like porcelain covered with glass, making aluminum somewhat coarse and somewhat oxidized, so not pure metal, making some microtexture ... actually it's basically impossible. So in the end most noticeable improvement is Fresnel reflection which depends on angle. If you do raytracing or you have nice cubemap around the scene (or procedural color)
@AndyEder
@AndyEder 2 жыл бұрын
Having worked in real-time and offline graphics rendering tech for 30 years, seeing such a well-thought-out and presented series on ray tracing is excellent. Thanks for introducing this exciting field to more people.
@spacechannelfiver
@spacechannelfiver 2 жыл бұрын
These are some of the most realistic hand movements I've ever seen in computer graphics. Recent Meta presentations clearly fell into the uncanny valley.
@arsenbabaev1022
@arsenbabaev1022 2 жыл бұрын
Its sad seeing every new episode in a series getting less and less views. The topics are interesting on their own even without trying to replicate them.
@Notverygoodatall
@Notverygoodatall 2 жыл бұрын
That's how most educational series go. Even if they are interesting
@espertalhao041
@espertalhao041 2 жыл бұрын
The video was published less than 2 hours ago, at a not-so-good time for Americans and Europeans. The video will get more views with time.
@lolcat69
@lolcat69 2 жыл бұрын
i mean yeah, is sad, but you literally saw the video when it was just uploaded, so dont espect 1M views in less than an a week lol
@rand0mtv660
@rand0mtv660 2 жыл бұрын
@@espertalhao041 I would say this person isn't necessarily referring to this video in particular. If you go back and look at all videos in this series, there is a steady decline in views. This is of course unfortunate because the series is pretty interesting.
@Qubaef
@Qubaef 2 жыл бұрын
It's just that this series is pretty bad. 9 episodes in and he is still explaining super basic concepts which anyone interested can learn in less than few hours from better resources. There is no proper target audience for it. If you are programmer, you don't need this series. If you are just a hobbyist, you don't care about the 20 minutes of coding.
@esphix
@esphix 7 ай бұрын
0:52 Having been a professional light source with over 10 lightyears of experience, I can definitely confirm that it is easy and straight forward being a light source
@aurealisgraphics
@aurealisgraphics 2 жыл бұрын
Neat episode! I still want to mention though, that jittering the reflected ray doesn't yet make it physically based, as it isn't based on any microfacet profile or PDF. Still a great way to introduce new people to the subject though; talking about the GGX PDF or the GGXVNDF might be interesting for future episodes!
@RahulGuha-lq8bo
@RahulGuha-lq8bo 2 жыл бұрын
After watching ur c++ videos from 5 years and seeing you now , u have changed quite a lot
@attilabacsa2808
@attilabacsa2808 4 ай бұрын
Amazing! You deserve tons of more viewers. 🎉
@goshisanniichi
@goshisanniichi 2 жыл бұрын
Pretty easy to add Fresnel reflection at this point as well. I'm looking forward to transparency, especially internal reflection.
@n0msayn
@n0msayn 2 жыл бұрын
This is the first video I've seen from you, and I am amazed at how engaged I am. Your teaching skills are really good
@magnuswootton6181
@magnuswootton6181 3 ай бұрын
its a proper reflecting raytracer, im digging it!
@aidandalzell3812
@aidandalzell3812 2 жыл бұрын
what you could say in that intro is that materials are important for all render methods and that the main thing for ray tracing is lighting
@brannonharris4642
@brannonharris4642 2 жыл бұрын
loved this one, dude. Fantastic explanation and pacing.
@timsonss
@timsonss 2 жыл бұрын
I was looking for graphics tutorials starting with PBR yesterday and wished you had videos on this topic. I have a weird feeling now that this has happened like I am a fortune teller!
@mr.mirror1213
@mr.mirror1213 2 жыл бұрын
This series is soo good , I was struggling to implement raytracing
@pawelstolecki3491
@pawelstolecki3491 Жыл бұрын
thanks for making the content, very useful!
@sozno4222
@sozno4222 7 ай бұрын
I’m a bit confused when you said Albedo is the non reflective color and then continued and said ‘what about the reflectiveness’. Everything about materials is about reflectiveness, including albedo. The different parameters simply say what should be reflected and when. A red color means it’s returning red light. Right?
@MerrickKing
@MerrickKing 2 жыл бұрын
Well the world revolves around me, so I guess I must be a light source
@per-axelskogsberg3861
@per-axelskogsberg3861 2 жыл бұрын
Neat, you explained it very well.
@Alkanen
@Alkanen Жыл бұрын
Hi there @TheCherno! Do you know when you'll continue on this part and build a texture/material pipeline for the tracer? Optimisation is good of course, but getting pretty pictures is more fun :)
@HazStepFTW
@HazStepFTW 2 жыл бұрын
Ray tracing series always has the best thumbnails 😂
@DerrickCanfield
@DerrickCanfield 2 жыл бұрын
I am currently a light source and can confirm it is very easy. However the human body emits an extremely small amount of light.
@asteriskman
@asteriskman 2 жыл бұрын
yea, lets talk more about this path tracing concept!
@redafakih12
@redafakih12 2 жыл бұрын
What a series🔥
@bishboria
@bishboria 2 жыл бұрын
The effect of the additions add up pretty quickly. it's looking great
@Swistakaqq01
@Swistakaqq01 2 жыл бұрын
Hi Cherno, im curious if you could look at NVIDIA's "Generalized Resampled Importance Sampling" (GRIS) and have a talk / video about it and maybe how to we could use some of this ideas to enchance the renderer. (There is a great video about this from Two Minute Papers called: "Ray Tracing: How NVIDIA Solved the Impossible!")
@thedebapriyakar
@thedebapriyakar 2 жыл бұрын
I fucking love you Chernikov
@neozoan
@neozoan 2 жыл бұрын
Well done! Thank you!
@MrMariozzz78
@MrMariozzz78 7 ай бұрын
whay library can i use with code-block from programming in c++ e raytracing?
@friction5001
@friction5001 2 жыл бұрын
Even though I’m not a game dev this is interesting
@troyhancock9293
@troyhancock9293 2 жыл бұрын
To be fair, a lot of rendering engineering jobs and the skillset are not necessarily game dev related. It just so happens game dev needs rendering engineers, same with the finance industry and a lot of R&D stuff.
@patriotaRBC
@patriotaRBC 2 жыл бұрын
I'd like to see some tutorial on terrain editor. That'd be great
@冯兴毓
@冯兴毓 2 жыл бұрын
really helpful!
@rouchy_
@rouchy_ 2 жыл бұрын
If I hadn't the videocard with RTX feature support, Am I still can follow this series?
@anon_y_mousse
@anon_y_mousse 2 жыл бұрын
Yeah, thus far he's not done any hardware acceleration. It's just software based.
@Howtheheckarehandleswit
@Howtheheckarehandleswit 2 жыл бұрын
So far, absolutely! Obviously, since I am not the one making the videos, I can't promise what the Cherno will do in the future, but so far we have actually been doing all the rendering on the CPU, so which video card you have makes no difference at all. If I had to guess, I suspect Cherno will not make it require an RTX card in the future, since that would limit his audience to people with RTX cards
2 жыл бұрын
So what kind of model is actually used in games today? I mean, do you use ray tracing in real time in a game? How do game engines render point light effects? Is Phong model still used?
@kamil_atakan
@kamil_atakan 2 жыл бұрын
Hi cherno!
@BlueBeluga_
@BlueBeluga_ 2 жыл бұрын
Can someone explaine to me what the difference between raytracing and radiosity is?
@diligencehumility6971
@diligencehumility6971 2 жыл бұрын
Damn bro, you have taken on a few extra pounds. Me too. I am becoming fat. Let us stop this madness! You looked way better without thick cheeks, and so did I. Let's change this.
@coffee-is-power
@coffee-is-power 2 жыл бұрын
Based
@Jkauppa
@Jkauppa 2 жыл бұрын
how do you learn to give and not pay for free stuff
@Jkauppa
@Jkauppa 2 жыл бұрын
set no pre-conditions, then you are free from the money-law master of yours
@Jkauppa
@Jkauppa 2 жыл бұрын
I'm not in any hurry, not me by Christ in me, Christ as me
@Jkauppa
@Jkauppa 2 жыл бұрын
money is not an acceptable (consumable) produce
@Jkauppa
@Jkauppa 2 жыл бұрын
therefore all things mingled with money are tainted
@Jkauppa
@Jkauppa 2 жыл бұрын
the whole thing becomes useless
Path Tracing // Ray Tracing series
23:21
The Cherno
Рет қаралды 52 М.
Computer Graphics Tutorial - PBR (Physically Based Rendering)
13:40
Victor Gordan
Рет қаралды 35 М.
Their Boat Engine Fell Off
0:13
Newsflare
Рет қаралды 15 МЛН
Every team from the Bracket Buster! Who ya got? 😏
0:53
FailArmy Shorts
Рет қаралды 13 МЛН
The Lost World: Living Room Edition
0:46
Daniel LaBelle
Рет қаралды 27 МЛН
RTX 3090s on SALAD are Down
9:52
brandon coin
Рет қаралды 1,4 М.
I made a better Ray-Tracing engine
17:38
NamePointer
Рет қаралды 257 М.
How Ray Tracing (Modern CGI) Works And How To Do It 600x Faster
32:06
Josh's Channel
Рет қаралды 584 М.
Making a Better Particle Simulation in C++ (Part 2)
25:05
Keyframe Codes
Рет қаралды 2,8 М.
FASTER Ray Tracing with Multithreading // Ray Tracing series
22:23
BEST WAY to read and understand code
17:24
The Cherno
Рет қаралды 167 М.
Welcome to Ray Tracing
23:48
The Cherno
Рет қаралды 204 М.
Coding Adventure: Ray Tracing
37:58
Sebastian Lague
Рет қаралды 1,2 МЛН
Emission and Emissive Materials // Ray Tracing series
24:06
The Cherno
Рет қаралды 31 М.
An introduction to Shader Art Coding
22:40
kishimisu
Рет қаралды 1 МЛН
Their Boat Engine Fell Off
0:13
Newsflare
Рет қаралды 15 МЛН