Page MenuHome

Cycles OptiX rendering yields different results from CUDA and CPU with large floor.
Closed, ArchivedPublic

Description

System Information
Operating system: Windows 10 Home 64 bit
Graphics card: GeForce GTX 1650 SUPER (apparently a 3070 user also experienced this problem)

Blender Version
Broken: 2.91, 2.93, 3.0.0, 3.0.0 (Cycles-X) ...and probably more, if not all, versions which allow OptiX rendering.
Worked: (!)

Short description of error
Cycles rendering set to OptiX yields darker, noisier diffuse lighting outside a square area under a light in this example file.
This only becomes visible when the plane is large, facing upward, and located in the [-1, -2] range along the Z axis.

Exact steps for others to reproduce the error
From factory settings:

  • Add a plane.
  • Move it to (0, 0, -1).
  • Scale it up by a factor of 100.
  • Render using OptiX acceleration.

Thanks for making amazing free software, devs!👍

Event Timeline

An interesting further note... Applying the scale on the plane yields a different (but still wrong result).

Also, not sure if this matters since this is a Cycles thing, but this also affects rendering via Cycles-X as of the build on June 20. CUDA rendering is correct on Cycles-X whether the scale is applied to the plane, or not.

Alaska (Alaska) closed this task as Archived.Jun 21 2021, 2:02 AM

This is a general ray tracing precision problem, we want to improve this (e.g. D6250) but it's not considered a bug.

As for why this occurs in OptiX and not others, I believe it's because OptiX traces rays in a lower precision than other rendering methods.

The method I found to "fix" this is to give the object a simple sub-division surface modifier with the amount of sub-division required being different depending on the scene. By giving the renderer more geometry it seems to resolve the issue.