Render algorithms


#1

Hello guys,
Was looking for an explanation on render algorithms. And a website I could get proper information on them.

I was skeptical about posting this here because am kind of new and don’t really know what and what is acceptable here.

Any information would be helpful


#2

Maybe a book, instead of a website…?

I’m not sure whether you mean GAME algorithms or 3D software “render” algorithms - the latter uses raytracing - Google that…? :slight_smile:


#3

Check out “lighting and rendering” from Jeremy Birn


#4

Renderman is an excellent website even if you don’t use the software.
There are many people involved with reading and writing shaders that can help explain how rendering works no matter the program.
They share excellent information on all aspects of rendering and light mathematics.


#5

Information on both sides would do


#6

By no means complete or up to date, but a nice entry point is this presentation:

http://www.cs.tau.ac.il/~dcor/Graphics/adv-slides/Introduction%20to%20rendering%20techniques.pdf

The two basic approaches are rasterization and ray tracing, but they are not exclusively used for realtime or offline rendering. In the past, algorithms closer to Rasterization than to raytracing were used in offline rendering as well, for example Scanline renderers and the REYES architecture used in Renderman. And nowadays ray tracing is used at interactive framerates. There are illumination models and approaches for global illumination, that can be used with both architectures and then there are many different variations of raytracing (like path tracing and so on…). There is a whole zoo of methods, so it will be hard to get a complete overview quickly, but looking into rasterization and raytracing will give you the basics. Now, the situation gets even more complicated as Deep Learning enters the scene. Not only does it allow to reduce noise, it can even be used for image synthesis on its own. See for example Deep Illumination: Approximating Dynamic Global Illuminationwith Generative Adversarial Network

If anyone has a good paper on rendering algorithm categorization or a diagram that relates all (or many of) the known algorithms I would be interested as well.


#7

I find quite extensive the Mitsuba doc. https://www.mitsuba-renderer.org/ You will find in the session dedicated to integrators, very detailed explainations on how the different algorithms work


#8

on pbrt.org you can find “some” information (not only the book!)
http://pbrt.org/