Problem with small scales and great distances #76673

Closed
opened 2020-05-12 11:16:17 +02:00 by Laure Ede · 4 comments

System Information
Operating system: Windows 10
Graphics card: Gforce GTX 960M

Blender Version
Broken: v2.82a
(example: 2.79b release)
(example: 2.80, edbf15d3c044, blender2.8, 2018-11-28, as found on the splash screen)
Worked: (optional)

Short description of error
When moving an object too far and rescaling it too small, the object becomes blurry and unusable for a render.
Context: I'm trying to make the Earth-Moon system to scale with a satellite orbiting the Moon, and the satellite always appears blurry.

Exact steps for others to reproduce the error
Basic cube at the beginning
Move to 10000m
Rescale all sides to 0.001
Clipstart at 0.001 (otherwise you can't see the cube)
and when you zoom it is blurry

I have attached the file I'm using to show the bug, but it works with the default cube.

Based on the default startup or an attached .blend file (as simple as possible).
Orion_bug.blend

**System Information** Operating system: Windows 10 Graphics card: Gforce GTX 960M **Blender Version** Broken: v2.82a (example: 2.79b release) (example: 2.80, edbf15d3c044, blender2.8, 2018-11-28, as found on the splash screen) Worked: (optional) **Short description of error** When moving an object too far and rescaling it too small, the object becomes blurry and unusable for a render. Context: I'm trying to make the Earth-Moon system to scale with a satellite orbiting the Moon, and the satellite always appears blurry. **Exact steps for others to reproduce the error** Basic cube at the beginning Move to 10000m Rescale all sides to 0.001 Clipstart at 0.001 (otherwise you can't see the cube) and when you zoom it is blurry I have attached the file I'm using to show the bug, but it works with the default cube. Based on the default startup or an attached .blend file (as simple as possible). [Orion_bug.blend](https://archive.blender.org/developer/F8530093/Orion_bug.blend)
Author

Added subscriber: @ticklina

Added subscriber: @ticklina
Member

Added subscriber: @Alaska

Added subscriber: @Alaska
Member

Changed status from 'Needs Triage' to: 'Archived'

Changed status from 'Needs Triage' to: 'Archived'
Alaska self-assigned this 2020-05-12 11:35:04 +02:00
Member

This is a limitation with the precision of computer graphics. Here's a blog discussing precision issues .

A short explanation of it is that computers can only track the precision of numbers to a certain point. As your object (the satellite) is quite small and it's very far away from the origin (10000m), the computer is unable to currently decided where the object is and so it renders as a glitchy mess or in your case because you're not that far away from the origin, as a blurry object.

The only real fix that I know of, and I'm not a programmer, is to do some number conversions and trickery to allow greater precision. But this is very slow and something you wouldn't want to do for real time graphics like the viewport in Blender. The other option is to get a processor that can natively supports greater precision and then get a version of Blender that supports that processor. At the moment, there is no consumer processor that can handle the precision needed for your project. So you'll have to work around the limitations of computer graphics by using different scale and to work with larger objects closer to the origin (0,0,0).

This is a limitation with the precision of computer graphics. Here's a blog discussing [precision issues ](https://blog.demofox.org/2017/11/21/floating-point-precision/). A short explanation of it is that computers can only track the precision of numbers to a certain point. As your object (the satellite) is quite small and it's very far away from the origin (10000m), the computer is unable to currently decided where the object is and so it renders as a glitchy mess or in your case because you're not that far away from the origin, as a blurry object. The only real fix that I know of, and I'm not a programmer, is to do some number conversions and trickery to allow greater precision. But this is very slow and something you wouldn't want to do for real time graphics like the viewport in Blender. The other option is to get a processor that can natively supports greater precision and then get a version of Blender that supports that processor. At the moment, there is no consumer processor that can handle the precision needed for your project. So you'll have to work around the limitations of computer graphics by using different scale and to work with larger objects closer to the origin (0,0,0).
Sign in to join this conversation.
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender-addons#76673
No description provided.