ModelWrapper allows you to set the CFrame, Scale, Color, Transparency, and Material of a whole Model, while preserving the original values and avoiding the dreaded ‘brick shift’ caused by accumulating float inaccuracies. You can set and reset each of those properties subject to the following minor limitations:
No support for resetting the CFrame (I don’t see the use-case)
Scale is set with a number, not a Vector3, so the model scales uniformly on each axis
Does not (in this version) accommodate adding or removing descendants after the Wrapper over the Model is instantiated
You may find this particularly useful when making placement systems, for example, where you may want the model to:
Temporarily be semi-transparent
Change color depending on whether the placement is valid
Documentation is found in the Module. Grab it here:
I think as @Starception suggested this would also be quite useful in the case of a plugin. Perhaps a widget that allows you to select which models should have this extra precision, then when the primary CFrame or size properties are changed you can apply the cached offsets.
I also think it would be worth having the cache be updated when a descendant is added to the model. At the very least have a method so that we can update it ourselves manually.