1
$\begingroup$

Recently a question that came to my mind was that How are Physically Based Rendering Techniques researched and developed? Do people just use current equations by physicists or do they create their own? Hopefully I've explained my question correctly.

$\endgroup$
4
$\begingroup$

I think you need to split your question into real-time and offline PBR research.

For real-time PBR it's mostly about finding fast approximations for path traced equivalent. For example we know how to implement area lighting with contact hardening shadows with a simple MC integrator, but finding fast approximation for this is a complex task requiring strong background in mathematics and rendering algorithms/data structures.

For offline PBR research I think it's partly about understanding optics and limitations of current PBR algorithms and where the two diverges in a significant & meaningful way in the worlds we try to simulate. For example we know that the microfacet model is an approximations of the more complex way light interacts with surfaces, but are there important situations where this approximation fails in a significant way that we would need a better model?

Also even in offline rendering the performance is an issue, and all kinds of clever mathematical techniques needs to be developed and employed to speed up computations. For example calculating multiple scattering in participating media with brute force path tracing is extremely time consuming and clever techniques are needed to make this computation feasible for movies for example. Or techniques such as importance sampling is developed to reduce the computation in an unbiased way.

For both real-time and offline PBR research you need sufficient background information in the domain of research and good mathematical/algorithmic toolbox to be able to make any meaningful contribution to the research.

$\endgroup$
  • 1
    $\begingroup$ So after everything (sky, fog, lighting, shading etc) goes physically based, what comes next? Will most people just try to improve current approximations? Where do you think rendering will head to in the coming years? $\endgroup$ – Arjan Singh Nov 6 '16 at 10:08
  • 1
    $\begingroup$ For fun of it, I calculated that we would need ~250,000x the GPU performance to reach today's movie quality in real-time (30ms vs 2h per frame). This may sound a lot but if we continue with ~1.5x perf increase per year, we could get there in ~30 years (: It's obviously more complicated than that (mem bandwidth, algorithm improvements, etc.) but gives some idea in what kind of timeframe we might get into full real-time path tracing (: $\endgroup$ – JarkkoL Nov 7 '16 at 4:51
4
$\begingroup$

I guess physicists, and before that term was used philosophers, have always been thinking about the nature of light, color and shadow. Knowledge about those matters is not purely rooted in people trying to create the ultimate rendering technique for CGI. In Wikipedia there are whole categories that show formulas and models that were invented to describe attributes of lighting. What programmers do is to try to combine and fit those models into a probably more simple model that can be implemented in some way. With the increase in computing power, those models align more and more with the models that were created by physicists to describe lighting in the real world. If you look into recent (by that i mean 5 years back) papers that describe physically based rendering techniques, you will see that almost all of them base their algorithms on formulas and units of measure that are somehow used to describe real lighting.

$\endgroup$
3
$\begingroup$

The most straightforward method of researching physically based lighting is to grab a light and a camera and start taking pictures of an object from all angles when lit from all angles at varying intensities.

Then plot out the color values and start fitting a function to that 4+ dimensional data.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.