Jump to content
  • Advertisement
Sign in to follow this  
arjansingh00

Physically Based Rendering In Directx

This topic is 716 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 I want to implement a Physically Based Rendering system in my Render Engine but after looking at all of the siggraph presentations online,

I've got to admit I don't understand much due to the fact I'm not that good with math and cannot understand any of the equations in the presentations. I was wondering if someone here could explain how to implement this. 

 

I was reading this article: https://dirkiek.wordpress.com/2015/05/31/physically-based-rendering-and-image-based-lighting/

Which kinda helped but I still don't understand a lot of it, so I'm downloading the code sample to see how it works.

 

Pretty much all I understand so far is that I use a BRDF to calculate the amount of Specular and Diffuse light there is and perform a blur on a Cube Map. 

 

Basically if someone could explain PBR to a 3 year old that would be great.

Edited by arjansingh00

Share this post


Link to post
Share on other sites
Advertisement

I'll hijack this a tiny bit:

 

Moreover, why on earth every PBR article is 80% IBL? What if I don't want to do the whole environment map shebang? What if I dont want indirect lighting and I just use a fixed plain old ambient term and thats it?

Share this post


Link to post
Share on other sites

I think you might have a hard time finding someone who can explain how to implement irradiance calculations (or approximations thereof) to a 3 year old.  If you are serious about implementing your own renderer, then you need to understand how it works.  Have you read any books on the topic?  Are you willing to put in the effort to implement and debug the system?

 

If not, then why not just use something like UE4 or Unity?  If so, then start digging in to the resources available - there is lots of info on YouTube with explanations, so try to go as far as you can on your own before asking someone to explain the whole thing to you.  If you get stuck on a specific piece, then there are lots of people here to help!

Share this post


Link to post
Share on other sites

Sorry I have a bit of a tendency to ask stupid questions. I've been looking at a few of the resources online on the topic. Are there any you would recommend? 

Share this post


Link to post
Share on other sites
The Nodes from the frostbite presentation are really detailed and will point you to the right papers.
You can find that at http://blog.selfshadow.com/publications/s2014-shading-course/ . Also the introduction presentation of this course has a good overview.
If you want to really understand what is going on I suggest to break it down in smaller Parts. For example First look at the Fresnel term, then shadowing function and normal distribution and after that put everything together.

Share this post


Link to post
Share on other sites

Sorry I have a bit of a tendency to ask stupid questions.


Its not a matter of stupid question. If you don't know, you simple don't know. However, I think you missed the point that JasonZ was trying to get across. Its impossible to implement something you don't understand ( copy-paste does NOT count as implementation ). First get the basics down and then proceed from there. You said you are not good with math. Do you have basic lighting implemented and fully understood? If not then there is no point in proceeding to more complex lighting.

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!