Description
Marble rotations are sent and processed as quaternions. To save on bandwidth, we could convert them to Euler angles with implicit XYZ rotation order and convert them back on the client. This reduces raw rotation data by 25% (4 numbers per rotation vs 3).
Since converting quaternions to/from Euler angles does require some math, we should check whether it notably affects server/client performance with large marble counts just in case, and reconsider if it's an issue.
Minimum Acceptance Criteria
[ ] Convert rotations to Euler angles with XYZ rotation order before sending them to the client.
[ ] Client should convert rotations back to quaternions upon receiving them.
[ ] Performance impact should be checked for large marble count.
Description Marble rotations are sent and processed as quaternions. To save on bandwidth, we could convert them to Euler angles with implicit XYZ rotation order and convert them back on the client. This reduces raw rotation data by 25% (4 numbers per rotation vs 3). Since converting quaternions to/from Euler angles does require some math, we should check whether it notably affects server/client performance with large marble counts just in case, and reconsider if it's an issue.
Minimum Acceptance Criteria