Real-Time Physically Based Rendering: A quick explanation

  Рет қаралды 48,812

3D ART PRODUCTION & APPRECIATION CHANNEL

3D ART PRODUCTION & APPRECIATION CHANNEL

7 жыл бұрын

This video will explain what PBR is and how to create textures for it. English subtitles available.
If you're interested in more of the math, Brian Will has published a good video on it • OpenGL - PBR (physical...
I've got free stuff on my gumroad page: gumroad.com/cubetutorials

Пікірлер: 49
@3DArtProducation
@3DArtProducation 5 жыл бұрын
Errata: In this video I make it seem like the photons colliding with a metallic surface will be reflected before any form of absorption behavior takes place. That is not the case. Sending a photon back out again is a secondary effect in the interaction process. There is always an interaction between the photon and the atom. So refracted light interacting with metallic atoms will have interacted and been changed, and not simply bounces off the surface as wrongly implied in the video regarded refracted lights on metallic surfaces. But because the light structure of refracted light tends to be less distorted upon exiting the surface, there is a greater sense of reflection in the refracted light than light coming from non-metallic surfaces. So while the color of the light has changed, the structure of the light is often similar, so it would be possible to see the reflection of the surrounding area in a different color than what it really is, which is different from specular light. The graphic on 05:38 says Microsurface factor when it should be Specular factor
@AshishBorakhadikar1003
@AshishBorakhadikar1003 5 жыл бұрын
PBR is so interesting and this video has sparked the "know it all about PBR" Thank you for this really good explanation. enjoyed it completely. I think i would understand Substance Painter /Designer better now. Thank you so much!
@selicatoart3362
@selicatoart3362 3 жыл бұрын
you don't know how much you're helping me right now. Thanks a lot!
@svivan20
@svivan20 3 жыл бұрын
Ok got 2 things clear from these video I had problems understanding before! First is the 3 light behaivors at 0:44 that PBR channels try to simulate. The other fact cleared is that glossiness and roughness are the same thing but inverted at 6:00! Thank you so much!
@gunesmtl5912
@gunesmtl5912 5 жыл бұрын
Excellent.Thank you.Waiting for more videos :)
@NickEnchev
@NickEnchev 4 жыл бұрын
Great explanation, thank you!
@Aerydna
@Aerydna 4 жыл бұрын
great video, simple and clean
@nicolaizafra9705
@nicolaizafra9705 7 жыл бұрын
Thanks for educating me sir, I appreciate it :)
@khybot
@khybot 4 жыл бұрын
thanks. concise and well explained!
@6plusiota9
@6plusiota9 2 жыл бұрын
great explanation, thanks
@infideluxe
@infideluxe 5 жыл бұрын
Beautiful overview. Thank you.
@killianrocky3431
@killianrocky3431 3 жыл бұрын
Pro tip : watch series on flixzone. Been using it for watching loads of movies recently.
@oakleyjensen6172
@oakleyjensen6172 3 жыл бұрын
@Killian Rocky Yea, I have been watching on flixzone} for since december myself =)
@fabianwinston7371
@fabianwinston7371 3 жыл бұрын
@Killian Rocky Yup, I've been using Flixzone} for years myself :D
@lincolnjudson8172
@lincolnjudson8172 3 жыл бұрын
@Killian Rocky Yup, I've been using Flixzone} for months myself :D
@raianislam3610
@raianislam3610 4 жыл бұрын
Thanks bro....it helped me a lot
@FabiolaFaby
@FabiolaFaby 3 жыл бұрын
Thank you! :D
@lahcenechel1855
@lahcenechel1855 6 жыл бұрын
i came from blender en up here ,very good tutorial a request maybe will be taken in consideration on the future .types of shaders on the 3d world one by one explained and maybe some practice of the theory on a 3d software to see it in action it will help to understand more thanks again a lot you have the talent to make things simpler .
@3DArtProducation
@3DArtProducation 6 жыл бұрын
Hi, thank you very much for your feedback. I will remember it as I make future videos. In this particular video I wanted to make the theory software independent, but I think you are right that there should be some footage with the theory in practice. I will find a better balance for it for future videos.
@glowiever
@glowiever 4 жыл бұрын
how would one implement it in opengl es shader? the es versiom does not support texture lod lookup which is required for roughness.
@cryora
@cryora 5 жыл бұрын
Ah but what about light polarization and Brewster's angle?
@danieleccleston7928
@danieleccleston7928 3 жыл бұрын
I want to try implementing these concepts with opengl
@georgerussell2947
@georgerussell2947 4 жыл бұрын
What about roughness?
@user-iy2jb8st3u
@user-iy2jb8st3u 3 жыл бұрын
I want to know what kind of BRDF Model used in this video? Cook-Torrance, Disney principled or some others? I'm realy curious about it. And do you have some blogs or articles which explain how to implement it, thanks a lot.
@3DArtProducation
@3DArtProducation 3 жыл бұрын
Hi! I just rendered out these images in Substance Designer. Implementing is a bit above my pay-grade. I read about 3d programming but I don't write it. I just appreciate having a theoretical understanding of it when I work with art production. Sorry I can't be of any help.
@JoeIdolChannel139
@JoeIdolChannel139 7 жыл бұрын
Sorry if this is a stupid question. I still don't understand. Why there are others "physically based" terms beside "rendering" such as physically based shader, lighting, and even for animation. What's the meaning of those? What's the difference? Sorry if my English is terrible.
@3DArtProducation
@3DArtProducation 7 жыл бұрын
Hello! No it's a good question. The word "physical" is used loosely in computer graphics. It's mostly a marketing term that the creators can use because they feel the behavior resembles "the real thing" and so on. What it usually means is that the behavior of the light or object changes relative to other forces and elements within in the scene. Physically based lightning, for instance - can mean that the behavior of the light ray will change upon the interaction of a surface. For instance if white light enters a surface and resurfaces as red light, - the surrounding surfaces will maybe also be shaded red (to a small degree) from those emitted rays. The "maybe" is because the other surfaces might simply absorbs the red light, so it does not resurface again to hit our eyes. If the light was not(!) "physical", then it would bounce off the surface as if it had never really interacted with the surfaces, - and continue to shade surfaces as if it still was white light. Yet the surface which was hit is still colored red. That does not make sense in a real world scenario. This is just one example of what could justify using the term though. There are plenty of other behaviors of light that can be imitated. [Author note: This is further elaborated in detail in a following comment] As for physically based animation, it can mean that the objects in the scene can be given a weight based on the size and material class, which will change its behavior when interacting with the gravitational factor within the scene. For instance, if the arm of a character goes limb, how fast will the arm fall into a resting position? The renderer will have to calculate this based on its weight and the gravitational down-force. Physically based rendering, shaders, materials and so on are called 'physically based' because the data which is fed to the shader is broken into individual data parts which can be used to shade the surface in a similar way a real surface is. . What is the color of the re-emitted light? (albedo) How much does the submerged light scatter? (metallic) For the light rays that simply bounces off the surface without submerging, how large is the spread angle? (microsurface) Older shader types which are not physically based shade the surface through more simplified and abstract data structures. Diffuse and Specular, for instance. Specularity was basically a metalness-roughness hybrid which decided the luminosity and size of light sources directly visible in the reflected angle. A dedicated roughness channel was not really a thing. There was simply a set hotspot-value which decided the sharpness of any direct lightsource which was reflected into the camera. And sometimes, there was another slider which you could use to reduce the luminosity so you could have a large specular coverage of the surface without overexposure. It depended on what specular model the renderer was using. But the value was set in stone and affected the entire material surface. Imagine trying to draw a surface which was part noisy and part polished. The hotspot sharpness would be the same across both the noisy and polished part. It was really difficult to make convincing surfaces this way, as polished surfaces reflect light more uniformly (thus sharper hotspot) than unpolished surfaces (scatters into many directions). Edit #1: Fixed (I hope) a very confusing sentence. Edit #2: Added a bit more clarification in the lighting paragraph. Edit #3: Some typos.
@JoeIdolChannel139
@JoeIdolChannel139 7 жыл бұрын
cubetutorials Wow, that's a very detailed explanation. Thank you. So, if we use "physical based rendering" technique does it means we also using physical based shader, lighting, etc at the same time too?
@3DArtProducation
@3DArtProducation 7 жыл бұрын
Not necessarily, but both offline and real-time renderers are capable of "physical" light behavior to a minor degree so it is often the case. The short answer is that the term "physically based" is a bit meaningless when it comes to lighting. Lighting in 3D graphics has been referred to as physically based since shaded surfaces was invented. So it's basically a buzzword. Not many use it. It's difficult to market the term "physically based lighting" because it is hard to know what defines it. How many light properties do we have to emulate before it really resembles real lighting, and deserve the use of the term? And then there is the question of technique versus visual result. There are two major techinques used today in 3D computer graphics. The ray-cast technique (computationally intensive but accurate) immitates a lot of the actual photon behavior through these rays. This is used for offline-renderers, because the technique requires so many calculations that our hardware are not capable of rendering it out in the required screen resolution fast enough. The other technique is photon mapping, which creates texture maps that stores the ray data per texel (per point in the texture, often referred to as a pixel but a pixel is a LED on your screen, common misconception) before runtime. This means there is no need to use raycasting for scene reflections and light scattering at runtime. The data for this is stored within textures for each object. You've encountered this technique when Unreal Engine or Unity has asked you to bake the lighting or lightmass, etc. It is basically why real-time 3D graphics kick ass today. So when someone says the lighting is physically based in a real-time renderer , they probably actually mean the visual end result, and not the method and technique of which it is created. Since offline renderers use ray casts for pretty much everything in the lighting process for the scene, it is much more similar to physical light in its technique. It is therefor more fair to refer to it as physically based than the photon mapping technique. The photon mapping technique uses rays to create the textures, but the visual effects are made through the textures and not actual rays at runtime. So this is the technique versus visual result thingy. But the video game industry has done a good job at shying away from the term physically based lighting to avoid this confusion. They have instead called the visual effects they have been able to emulate for what they are. They do use different words for the same thing however, which can be confusing. Global illumination, indirect illumination, and diffuse inter-reflection are all the same thing for instance. They are all the visual effect of the surface color of a surface appear on its neighboring surfaces etc, which we have been talking about so far. If you wanna go balls-deep with this you can search for Henrik Wann Jensen High Quality Rendering Using Ray Tracing And Photon Mapping (siggraph 2007) and Peter Shirley Physically Based Lighting Calculations For Computer Graphics (B.A 1985). I casually read them here and there ones in a while. There is a lot of things to learn from the texts, even if you're not very mathematically adept.
@JoeIdolChannel139
@JoeIdolChannel139 7 жыл бұрын
Thank you, now I know a lot about those terms. I'll check out the references.
@Eugensson
@Eugensson 7 жыл бұрын
«Physically based rendering» is usually defined by having following properties: 1. Every material respects the law of conservation of energy (objects do not glow by themselves, only reflect, no fake specular light); 2. Every material respects Fresnel reflection (it is always present); 3. Materials are traditionally grouped into two categories: Metallic and Dielectric.
@aldairgonzalez860
@aldairgonzalez860 5 жыл бұрын
Is there a book about this topic? or an article? where I can get more information?
@3DArtProducation
@3DArtProducation 5 жыл бұрын
Hi! For references I used Real-Time Rendering, 3rd ed, ThomasMöller, Eric Haines, Naty Hoffman, CRC Press 2015. And various articles on photons where the book did not suffice. I couldn't find the perfect book for me either, sadly, I don't think there's a book out there which thoroughly explains it equally well scientifically and in 3D rendering practice. The book mentioned is quite nice though if you want to understand the rgb shaders. And you don't hate math formulas.
@aldairgonzalez860
@aldairgonzalez860 5 жыл бұрын
Thank you so muhco for the info, I'm curetly working in a real-time project and it's making me have a lot of questions.
@GrayOlson
@GrayOlson 5 жыл бұрын
Check out this document blog.selfshadow.com/publications/s2013-shading-course/hoffman/s2013_pbs_physics_math_notes.pdf
@xiaolangwang7602
@xiaolangwang7602 5 жыл бұрын
how to do transparency?
@3DArtProducation
@3DArtProducation 5 жыл бұрын
Hi! This depends on the software you are using so it is best to search for 'transparency' and the software you are using. Some renderes reference the alpha channel in the albedo for instance, while others have explicit channels which holds a greyscale image.
@xiaolangwang7602
@xiaolangwang7602 5 жыл бұрын
@@3DArtProducation thx
@takeyoshix
@takeyoshix 3 жыл бұрын
Why cant you just use terminology that was used for decades: Diffuse (texture), Specular/Shininess (texture/map), Bump/Normal (map), Cubemap, Ambient.... Albedo, Microsurface etc etc... are you using terms from a specific application? Surely not common OGL or DX...
@spaceman-pe5je
@spaceman-pe5je 3 жыл бұрын
diffuse is NOT the same as albedo. that's the whole reason he's explaining this, lol. same goes for specular/shininess map - this whole video explains how with the new PBR standard, metalness/specular color is one map and microsurface details (roughness/gloss) is another. ambient occlusion and bump or normal map aren't important here, as he mentions in the beginning - they have stayed the same. the terms he uses are not specific to any application, either.
@goal2004
@goal2004 7 жыл бұрын
You're saying "Albedo" wrong. It's not Al-Bido, It's Al-Bee-Doe.
@3DArtProducation
@3DArtProducation 7 жыл бұрын
Oh! Thank you very much for correcting me. I'll be sure to say it correctly from now on.
@goal2004
@goal2004 7 жыл бұрын
Happy to help :)
@cristiandelolmo9387
@cristiandelolmo9387 7 жыл бұрын
XD
@TonyBraun
@TonyBraun 6 жыл бұрын
...Alb (short for Alba)----->white light... ...e (short for ex)------> out from... ...do-------->I am giving.....
Computer Graphics Tutorial - PBR (Physically Based Rendering)
13:40
Victor Gordan
Рет қаралды 32 М.
The Science of Rendering Photorealistic CGI
17:23
Filmmaker IQ
Рет қаралды 330 М.
Little girl's dream of a giant teddy bear is about to come true #shorts
00:32
Scary Teacher 3D Nick Troll Squid Game in Brush Teeth White or Black Challenge #shorts
00:47
Materials and Physically Based Rendering // Ray Tracing series
27:18
Blender Physically Based Shading: Theory
29:30
CynicatPro
Рет қаралды 57 М.
I made a better Ray-Tracing engine
17:38
NamePointer
Рет қаралды 248 М.
Physically Based Rendering for Artists
24:53
Andrew Maximov
Рет қаралды 106 М.
Physics and Math of Shading | SIGGRAPH Courses
38:35
ACMSIGGRAPH
Рет қаралды 97 М.
Explaining PBR Texture Maps
12:04
SimonSanchezArt
Рет қаралды 40 М.
OpenGL - PBR (physically based rendering)
12:47
Brian Will
Рет қаралды 30 М.
What is PBR? Physically-Based Rendering Explained
3:58
Gamers Nexus
Рет қаралды 91 М.
RAY TRACING and other RENDERING METHODS
10:22
Andrey Lebrov
Рет қаралды 263 М.
SMART idea and very USEFUL 📱 #camping #survival #bushcraft #outdoors
0:14
Ăn Vặt Tuổi Thơ
Рет қаралды 23 МЛН
ДОМИК ИЗ АРБУЗА #юмор #cat #топ
0:40
Лайки Like
Рет қаралды 1,8 МЛН
Опасность фирменной зарядки Apple
0:57
SuperCrastan
Рет қаралды 2,9 МЛН