Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


It is not uncommon for production scenes to rely heavily on geo area lights. In this test we will compare Geo Light geo light sampling technology in 3Delight OSL, Arnold and RenderMan. We will use a test with a geometric area light that is composed of a relatively large number of faces. The test, although limited, should allow us to find the convergence rate of each algorithm as well as general performance.

The Scene

The test scene allows for procedural generation of floating area lights using the "Tubes Per Step" PaintEffects attribute.

...

  • Only diffuse reflectors. The original test scene had a diffuse+specular surface but that generated a considerable amount of additional noise in Arnold. Since we want to concentrate on light sampling here, we decided to go for a simpler setup.
  • We will disable any adaptive sampling so to make sure we have very close ray-counts.
  • We will use only direct lighting to estimate the geometric area light contribution. In the statistics files for each renderer, one can see that we have only one path length.
  • The light sources contain about 80K triangles.
  • All Renders are done in Maya 2016.

The Renderers



ArnoldRenderMan/RIS3Delight OSL
Version




TechnologyUnidirectional path tracer.Using unidirectional path tracer. Other options are available but not useful for this test.Unidirectional path tracer.
ShadersC++C++OSL

Methodology

We are interested to find out about:

...

We will start by creating a "ground truth" image for each renderer (encouragingly, images produced by both 3Delight and Arnold are almost exactly the same). This image is generated by using a very large amount of samples so there is no more apparent noise. We will then render several images with varying amount of samples and measure the RMSE between these images and ground truth. Timings and statistics will be collected at each render. Having this data will allow us to draw a conclusion about the convergence rate and general performance.

The Setup

We use a 1x1 pixel sample in all renderers. Adaptivity is disabled as well as all additional bounces. This is done so to isolate the light sampler. In Arnold, the light samples are attributes of the geometry. In RenderMan/RIS the light samples are attributes of a custom shape. In 3Delight, the light attributes are on Maya's area light.

...

RendererArnoldRenderMan/RIS3Delight
Sampling

Geo Light


Notes

Arnold — For light samples, Arnold uses effective sample counts that are proportional – within a constant –  to the square of the user specified value.  As we will see, this makes  sense from a UI standpoint since the variance follows the inverse of the same rule in the case of Arnold. This makes the light samples slider linear in term of perceived noise. In the Arnold tables below, we will specify the effective samples per pixel along with the user samples.

...

3Delight – We have only one control for the general quality of the render. In the case of direct lighting, 3Delight "understands" that samples are best used for light sampling and that's what it does. As tests will show, those samples have a linear impact on perceived noise levels.

Results

The following graph gives a good idea on the algorithm sophistication of the different light samplers. 

Chart
width800
domainAxisUpperBound300
titleRMSE vs. RAYS
typexyLine
yLabelRMSE
domainAxisLowerBound0
xLabelMillion Rays



Rays2.453.134.517.2712.7823.845.8890.1
3Delight0.09331420.06582660.04412480.02904390.01855750.01175660.00752546

0.00449892



Rays0.6783.2610.816.9443.4173.6694.5
Arnold0.156990.1001150.05017870.03963990.02425150.01174130.00693426



Rays1.472.945.8811.721.147.0294.14376.3751.3
RenderMan/RIS0.1511250.1214870.09536490.07281480.05206060.03738760.02653880.01381480.00854045



The following graph shows the time required to achieve a certain quality. From user's perspective, this is an important quantity.

Chart
width800
titleRMSE vs. TIME
typexyLine
yLabelRMSE
xLabelTime
Time5.72s7.6312.1520.6837.7572.07165.69302.98
3Delight0.09331420.06582660.04412480.02904390.01855750.01175660.00752546

0.00449892

Time12692181492
Arnold0.156990.1001150.05017870.03963990.02425150.01174130.00693426
Time6.747.237.999.4218.5129.4098.08383.39
RenderMan/RIS0.1511250.1214870.09536490.07281480.0373876


0.02653880.01381480.00854045
The following graph shows how much time it takes to build the acceleration data structure depending on sample count.

Chart
width800
domainAxisUpperBound300
titleTime to First Pixel vs. Samples
typexyLine
yLabelTime to First Pixel
domainAxisLowerBound0
rangeAxisUpperBound50
xLabelMillion Rays
Rays2.453.134.517.2712.7823.845.8890.1
3Delight2222222

2

Rays0.6783.2610.843.4173.6694.5
Arnold00.351.23.21141
Rays1.472.945.8811.747.0294.14376.3751.3
RenderMan33.244.7915.551.297

Arnold

Samples (effective)2 (1.23)4 (4.91)8 (19.64)10 (30)16 (78.56)32 (314.29)64 (1257.18)
Image



Time1s2s6s9s21s1:218:12
TTFP0s0.35s1.2s2.03.2s11s41s
Shadow Rays0.678 M

3.26 M

10.8 M16.94 M43.4 M173.6 M694.5 M
RMSE0.156990.1001150.05017870.03963990.02425150.01174130.00693426

3Delight

Samples248163264128256
Image

Time5.72s7.63s12.82 s20.68 s37.75s72.07s165.69 s302.98
TTFP3333333

Shadow Rays2.45 M

3.13 M

4.51 M7.27 M12.78 M23.8 M45.88 M90.1 M
RMSE0.09331420.06582660.04412480.02904390.01855750.01175660.007525460.00449892



RenderMan/RIS

Samples12481632642565121024
Image

Time6.74s7.23s7.99s9.42s12.12s18.51s29.401:38.083:15.776:23.39
TTFP3.1s3.24s4.7s6.7s9s15.5s51.2s

97s



Rays

1.47 M

2.94 M

5.88 M

11.7 M

21.1M47.02 M94.14 M376.3 M751.3 M1499 M
RMSE0.1511250.1214870.09536490.07281480.05206060.03738760.02653880.01381480.008540450.00396



Conclusions

  • 3Delight generates light samples that are algorithmically better than both Arnold and RenderMan. In short, for N effective samples:

...