When a player spectates another entity, their rotation is rounded to a multiple of 1.4 degrees. Slow rotation therefore isn't smooth and occurs in steps.
How to recreate
/summon magma_cube ~ ~ ~ {NoAI:1b}
Spectate the magma cube. Open F3 to see your rotation. It should be 0.0 / 0.0.
/tp @e[type=magma_cube,distance=..2] ~ ~ ~ 1 0
The view doesn't change.
/tp @e[type=magma_cube,distance=..2] ~ ~ ~ 2 0
The view rotates, F3 reads 1.4 / 0.0.
Comments 4
This seems to be caused by byte accuracy. The rotation increments client side in steps of 1.4 degrees. 1/256*360 = 1.40625
Can confirm in 1.21.11.
/tp @e[type=magma_cube,distance=..2] ~ ~ ~ 1 0The view doesn't change.
The view seems to rotate to 1.0 / 0.0, updated reproduction steps to confirm the underlying issue:
/tp @e[type=magma_cube,distance=..2] ~ ~ ~ 1 0
/tp @e[type=magma_cube,distance=..2] ~ ~ ~ 2 0
/tp @e[type=magma_cube,distance=..2] ~ ~ ~ 3 0
/tp @e[type=magma_cube,distance=..2] ~ ~ ~ 4 0
/tp @e[type=magma_cube,distance=..2] ~ ~ ~ 5 0
Results:
1.0 / 0.01.4 / 0.02.8 / 0.02.8 / 0.04.2 / 0.0
Can confirm that this is an issue. Also affects 20w51a.