Jump to content
You are about to reply to a thread that has been inactive for 1611 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts

Posted

Hello, this has been issue for me from many years, i like to know if there is a solution,

When i link or unlink to a mesh objects some or the Linked object change very small the rotation Z  for example from 90 to 89.95. and thats enought to notice the problem

is anyone has experince this issue? Thanks

image.png.2bb6aeacc04b1ddc28b8a829ded8a255.png

 

 

Posted

If this is above the ground level by a significant amount then this is known behaviour, floating point numbers have a finite range of digits, the more you grab to the left of the decimal point the less you have left for the right of the decimal point.

  • Like 1
Posted (edited)

And not just the number of digits you have on the left/right, but what those digits are.

For example: 9.1 is 16 times more inaccurate than 1.1, and neither of those values can be stored exactly by a computer.

  • 1.1 = 1.10000002384185791015625
  • 9.1 = 9.1000003814697265625

And it's not just that, but everything you see on your screen in SL is the result of many layers of calculations, where these errors become very noticeable.

Floating-point values (with the decimal point) are actually stored in two main parts. The "exponent" and the "mantissa".

You can play around with them here: https://www.h-schmidt.net/FloatConverter/IEEE754.html

 

All that said, your best fix is to be as close as possible to the region's <0, 0, 0> coordinate. Don't build or use your items in a skybox if you don't want to see "mini-jitter."

Edited by Wulfie Reanimator
  • Like 3
Posted

Floating point numbers are basically a compromise on how to use the the same number of bytes.

  • integers are perfectly accurate but have a fixed minimum interval (1)
  • floats can both represent very large and very small intervals, but at the cost of accuracy.
Posted
21 hours ago, Profaitchikenz Haiku said:

If this is above the ground level by a significant amount then this is known behaviour, floating point numbers have a finite range of digits, the more you grab to the left of the decimal point the less you have left for the right of the decimal point.

You get the issue at ground level too and although it is related, it isn't the regular floating point number issue.

When you change which part of the linkset is the root, the rotation of every part of the linkset is recalculated from the root prim's global and each child prim's local rotation. No matter how many decimals the floats have, there will always be a slight deviation when those two vectors are added up.

  • Like 2
  • Thanks 2
Posted (edited)
26 minutes ago, Profaitchikenz Haiku said:

Is there any reason why mesh should be worse than prims when unlinking and relinking?

No. What is significant, however, is the exact rotations of the child prim/mesh/sculpt and the new and the old root. It's been a while since I looked at this so I don't remember the details but there are certain combinations of "right angle rotations" (90, 180 and 270 degrees) that are particularly troublesome.

Edited by ChinRey
Typos
  • Like 1
  • Confused 1
You are about to reply to a thread that has been inactive for 1611 days.

Please take a moment to consider if this thread is worth bumping.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...