That’s just a bug with the SelectionBox being “stale”. We could try to improve it but trying to keep the selection box / handles 100% up to date always while the game is running has some significant performance implications, so there’s a bit of a balance right now.
Though it looks like something might be going more wrong than intended with the SelectionBox there. If you send me the model I can confirm.
Yikes, I thought that you were seeing the HoverBox or something, but that’s actually looks like a regression in Studio’s selection box rendering entirely unrelated to the draggers (the selection box gets out of sync if you use a script to move the parts in that way even with no tool selected).
Message @Bug-support with the format regarding the issue and they’ll get back to you after a few hours. If they deem it an issue they will update the post location into bug reports
How can I change the orientation of a pivot point, with code, once a game is running? I’ve been trying to figure out how for the past 30 or so minutes, but can’t seem to get it. I might just be totally missing/misunderstanding something, and it’s an easy fix. But any help would be appreciated!
-- Set the pivot of a model without a PrimaryPart to a world space CFrame
model.WorldPivot = <cframe>
-- Set the pivot of a part to be offset a given amount from its CFrame
part.PivotOffset = <cframe>
The rotation component of the CFrames in the above will give you what you want.
Don’t worry, we’ll have a complete detailed documentation page on the DevHub before the full release.
Though yes, the inner workings of it can be a bit hard to understand. That’s a cost we had to pay to get all the features we wanted like being able to move models from the properties pane without breaking any existing code.
Sorry, I don’t think I was clear on my intentions (totally my fault). But, how would I get it so the model would rotate, once a game has started? I completely understand how to set the pivot point, but I’m kinda having trouble understanding how to make the model rotation happen.
I was looking at the “Origin Orientation” value changing and got my wording mixed up. Although, due to said value not being able to be changed, via script. Would this even be possible?
Oh that, that’s what object:PivotTo( cframe ) does, you just pass it the CFrame and it moves the whole model there. It even accounts for floating point drift so if you repeatedly move a model with it the parts won’t drift, so this sort of thing will work as intended:
local originalPivot = MyThing:GetPivot()
while wait() do
MyThing:PivotTo(originalPivot * CFrame.new(0, math.sin(tick()), 0))
end
It’s a bit unfortunate that we couldn’t just expose the property to scripts. Basically this came down to a couple things:
It would be really unclear whether the property was just setting the pivot, or setting the setting the pivot and also moving the object.
Confusion over changed events. We would be unable to fire property changed events for the origin position / orientation props.
So we exposed it as the function :PivotTo instead.
Do you have an ETA on this? I have a bunch of character accessories in Blender that use the pivot to define their offset on a body part, and it would be a pain to reconstruct this data in Studio.
It’s coming! I have the code for it written. We have a company vacation inbetween though so it’ll take a bit to ship, tentatively it will probably be enabled July 14th.
The unfortunate part is that there’s no easy way to make the AssetManager support the pivots on import, since it just stores the raw meshes (while the pivot is something that should be attached to the MeshPart), but the other two importing workflows (Properties pane and Avatar Importer) will support it. We have import workflow changes underway that will eventually mean you’ll get the pivot in every import path, but that’s the best I could do in the interim.
You can still opt out through the Beta Features panel by unchecking “Pivot Editor”, however that option will be going away soon.
Please explain in more detail what issues it’s causing for you. Also, have you tried using handle summoning? (Holding tab to summon the handles) That’s intended to solve most of the cases where the old Move handle behavior was better.
It would be awesome if we could use this with TweenService. For example, tweening the Origin Orientation property to create a swinging door. Currently, I get this error:
TweenService:Create property named ‘Origin Orientation’ on object ‘Part’ is not a data type that can be tweened
Is this planned for the future? It’s just a Vector3, so I’m not sure why this data type can’t be tweened, when you can tween other Vector3 properties like position and size.