Working Limits: The Actual Situation

Hello, everyone. Recently, in one of my projects, I encountered an issue where artifacts appeared on objects when moving away from the world center. For example, on a character, clothing started to intersect with the character when beyond a certain distance. When the character was within 20 meters of the world center, these artifacts were not observed. I found out that this is related to the working limits within Blender. The Blender manual states that distances from -5000 to +5000 are usually reliable. I decided to conduct an experiment to determine how the distance from the world center actually affects object distortion.

So, here’s Suzanne with a subsurface scattering shader (I usually use this in my projects, so I decided to test it on this shader). Initial coordinates on all axes are set to 0.

The next image shows Suzanne with an X-distance of 100 meters. So far, it looks stable (but this doesn’t account for cases where your character may have clothing with a small offset, causing it to intersect with the character mesh).

The following image shows Suzanne with an X-distance of 1000 meters. Artifacts are already noticeable. It’s hard to call this a reliable working range.

The next image shows Suzanne with an X-distance of 5000 meters. Now the distortion is evident, although I’m still within Blender’s working limits.

If you think this is related to the subsurface scattering shader, I’ll say it’s not entirely true. For example, with a simple diffuse+glossy shader, the same artifacts appear. The first image is at X=0 meters, the second is at X=1000 meters, and the third is at X=5000 meters. The same artifacts. But why don’t they appear on a cylinder, you might ask. I think it’s because Suzanne has a subdivision level of 4, while the cylinder has a subdivision level of 1, and its vertices are only at the ends. In simple terms, the more vertices an object has, the more susceptible it is to distortion when moving away from the world center.



I must note that this is not a Blender error. It’s a typical limitation for most 3D software. I don’t know if there’s a way to bypass this limitation. I would actually like the world center to be dynamic. For example, assigning the world center to the active camera during rendering or something similar. At the moment, I only see one solution: stick as close to the world center as possible. I believe a reliable range might be around 20 meters if you use closely spaced meshes, such as clothing, for example. If you use simpler objects, a reliable range might be 100 meters. If you’re rendering a default cube, this range might be around 5000 meters. Thank you all for your attention.

1 Like

pretty interesting topic, thanks for sharing !
did you try to change the camera clipping ? sometimes it helps when dealing with some artifacts but maybe not these ones !

1 Like

For those who do not know it’s in the manual:
https://docs.blender.org/manual/en/latest/advanced/limits.html#working-limits

1 Like