Jump to content
  • Advertisement
Sign in to follow this  
arjansingh00

Physically Based Rendering

This topic is 672 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

So a while back on this forum I had asked if somebody could explain PBR to me, and most of the responses I got were to first implement basic lighting with diffuse & specular maps and then move on to more complex lighting. Now that I've done that I've gone through a few siggraph presentations that have helped me understand what PBR actually is. I was having trouble implementing this in my engine, but then I stumbled across this blog post: https://dirkiek.wordpress.com/2015/05/31/physically-based-rendering-and-image-based-lighting/

which explained everything quite well and included a sample to show how everything worked entirely.

 

However the sample used DirectXTK and since I am a beginner it was extremely confusing to understand how things worked since there were so many files to go through just to find a simple Material Struct. So far I have only written my engine with 1 header file, 1 cpp file & 1 effects file (I know I should use classes and additional header files to make the code easier to read and work with but for the time being I just want to get PBR up and running and I will then re-write everything for ease of use).

 

I'm not trying to ask for someone's code or to help me copy/paste code but could someone help explain how the direct lighting brdf's (forget the Image Based Lighting Part) are working in his sample?

 

This wouldn't have been a problem but I haven't had much experience with something like DirectXTK. 

 

 

 

 

 

Share this post


Link to post
Share on other sites
Advertisement

If you cut the extra specular and fresnel stuff out of PBR, which is a lot of the code trying to get the most realistic specular, you are left with a simple thing: metals have no diffuse term only specular. Non-metals have diffuse + specular.

 

And roughness is just a term for the physical surface and simply changes the directions of light bounces.

Share this post


Link to post
Share on other sites

I tried to implement what you said but I still can't get anything to work. All these papers and talks about PBR are great but I honestly need a good sample to look at to really understand and implement it. Any ideas on some resources that have samples or show how to implement PBR? I'm beginning to consider to stay with my current lighting system because of the lack of tutorials for PBR available on the internet. The one I found https://dirkiek.wordpress.com/2015/05/31/physically-based-rendering-and-image-based-lighting/ is good but uses DirectXTK which makes things a pain in the ass for a beginner. 

Share this post


Link to post
Share on other sites

I know this sounds demanding but could someone write a tutorial for the implementation of PBR? I feel entirely lost when it comes to implementation since there are hardly any tutorials, there are a few presentations and papers but I'm not at the stage to be able to understand these equations and be able to implement this without any help.

Share this post


Link to post
Share on other sites

Theory is always an approximation to the real world. The you further approximate when implementing a renderer. I feel the trend that the last approximation, to get it real time, is becoming less significant.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!