Setting TexturePosition every frame will have performance issue. That’s why we didn’t add it. It’s ok to add a function that clears the texture offset though.
My 2c: Inexperienced developers will use features wrong no matter what safegaurds are put in place. Holding back experienced developers from making high quality games for the purpose of not confusing these people is counter productive.
Another option is to do something like BasePart.Position where the property change doesn’t fire the generic Changed signal, but you can still connect to it directly with GetPropertyChangedSignal.