What it does:
Ever wanted a plugin that could stretch your buildings? (Not Resize). This simple tool I made can do reflect, stretch, turn it into a parallelogram, widen, or make models taller much more easily.
Demonstration:
Link to plugin:
How it works:
Current BasePart primitives in Roblox are Parts, WedgeParts, and, CornerWedgeParts (excluding TrussPart and MeshPart and SpawnLocation). Sometimes, if you stretch the corner vertices of a Part, you transform the cuboid shape of a Part into something known as a Parallelepiped.
This primitive on the right now has to be made up of a new primitive as all Parts are cuboids and cannot become what you see on the right.
My plugin efficiently handles this by creating parallelogram faces which make up the new primitive (of which, each parallelogram uses one Part and two Wedgeparts to save on the number of parts needed to make the face.) It also optimizes polycount where necessary → If the Part being stretched isn’t being stretched at an angle as in the image, it will not waste resources in trying to turn it into a Parallelepiped and instead keep it as a normal cuboid Part. Lastly, my plugin also stores custom CFrame data in each of these new primitives if they’re ever constructed so that when you go to stretch them again (with my plugin), it won’t increase the polycount / PartCount further (by re-using that data).
From there, it also does something similar for WedgeParts and CornerWedgeParts (by constructing new primitives when necessary which attempt to minimize polycount).
Recommended Usage:
- When moving the XYZ points, right-click and ensure you use local space as this lets you drag those points parallel to the bounding box of the model.
-
Stretch failing?
Try anchoring your model before stretching. - I personally recommend using blender where appropriate to stretch meshes / meshparts as a roblox-mesh cannot undergo a shear transformation and hence, they cannot be stretched in all directions [but it does approximate them okay-ish sometimes → avoid shear transformations (only stretch and resize)]. It currently cannot stretch unions, though I might see if there is a possible way to do this in future.
- For more info, open settings in the plugin and/or read the plugin description on it’s install page.
This was originally released in 2018 but I thought I should do a write-up on how it works and a thread for bug fixes.
Lastly, do make use of the 3-side buttons: Settings [Cogwheel icon], Vector Lengths [RGB arrows icon], and, Local Matrix Data [Tic tac toe button].
All suggestions and feedback welcome