Auto resolution mode of Environment importance sampling is very slow

Ever since “Auto” mode of the environment importance sampling was introduced, any changes to environment map became very slow. So slow that in fact on many occasions dragging a UV transform slider does not appear to have any effect at all as the rendered viewport update rate is slower than the slider refresh. This completely kills interactivity when transforming environment maps for lookdev purposes.

It appears that the entire “heuristic” the auto mode does is that it sets the importance map resolution to the same resolution the environment map is. So even as small HDRI map as just 4x2k has 4k importance map, which is a complete overkill even in a case of a map with a tiny, super bright HDRI sunspot.

Here’s a video:

The issue is all the more frustrating given that Auto mode is the default now, resulting in poor performance out of the box even for relatively low res environment maps.

5 Likes

Some defaults in Blender are really way off.

There should be a thread all about wrong detaults. Not sure if it was fixed but the worst one in my opinion is “Zoom to Mouse Position” being off by default.

With these HDRs I actually noticed it’s slower but didn’t check properly so thanks for letting me know. Could easily be 1k in most cases maybe 2k for large HDRs.

Can confirm! I wonder if it’s recalculating the resolution every time the background color input updates instead of only when the texture changes. Either way, it does seem like overkill by default.

Bumping this thread again.

Now that Cycles has ability to use new lookdev mode of rendered viewport, adjusting environment map rotation is even more common, but the poor default importance sampling value makes the environment rotation in cycles brutally slow. This is just 4k HDRI! Just 4k. Imagine like 8k HDRI map:

When setting it to manual, even 1024 resolution is more than enough to sample this environment map with very small, very bright sun disc. The default value set by Automatic mode is definitely wrong. This should be fixed.

Currently, most users (except a few with deeper technical understanding of Cycles) probably assume that Cycles is simply slow at updating environment map, while in reality, there’s just poor default value.