(note: replies may not make sense with this post as I have edited it for engineers to replicate and to hopefully patch this bug in Roblox Studio)
Description:
When using the scaling tool built into Roblox Studio, the part is scaled or moved in the opposite direction at a fraction of the distance in relation to the scaling.
While this effect is much more prominent with smaller parts (at-least one axis smaller than 1 stud), it affects parts of all sizes and results in small gaps between a lot of parts and models and parts becoming disconnected to the spacing the developer intended on.
The plugin Studio Build Suite offers alternative part manipulation tools to those built into Studio, and their scaling tool does not have this bug, and is the only way I am able to continue modelling in Studio at the moment.
Expected behaviour:
The part should only be scaled in the direction it is scaled, and all other vertices of the cuboid selection box should remain in their exact position. When scaling a typical part, only the vertices of the face being scaled should be moved.
.
When I first noticed the issue:
While I first noticed this issue in December 2023, I have noticed over the years that I’ve had many issues modifying old parts and models in old experiences, as they are for some reason misaligned or have gaps when moved back to other models that should be on the same imaginary spacing grid. This may be caused by the same bug as I am not certain when this bug first started.
This bug may be an issue with the newly added pivots, and the pivot may not be perfectly centred, especially for parts with 3 decimal places in their position or scale where the pivot position does not have enough decimal places to be precise.
.
This is incredibly disruptive to modelling in Studio, or scaling any kind of part, union or even meshes, as it results in loads of tiny gaps and models and parts being misaligned.
.
Replication:
- Open any experience in Studio, I have replicated this in default experience worlds.
- Create a part and scale it down so that atleast two of its axis are less than 1 stud in size and the other axis is less than 5.
- Duplicate the part (this will help to display the disposition)
- Scale the duplicated part in a direction while maintaining your camera near the opposite face to the direction the part is being scaled in. If you continue holding click on the scale handle, you will be able to see with the transparency that the part has been shifted in relation to the original part (the one the second part was duplicated from)
While this bug affects smaller parts at a greater rate, it affects all parts at a rate linked to the distance scaled and inversely linked to its size.
.
An example:
This part is 1200 and 1500 studs in the x and z axis away from the origin (0,0,0) of the workspace.
When I scale it in a direction, it slowly scales in the opposite direction, when it shouldn’t be. This is a huge issue as it means it is impossible to properly scale and move parts so they are properly aligned, and this is an issue at all scales, not just the scale I am using.
(Note I am not holding shift, even though holding shift is meant to do this equally.)