How would I tween an entire model to a certain position?

You can write your topic however you want, but you need to answer these questions:

  1. What do you want to achieve? Keep it simple and clear!
    By solving it
  2. What is the issue? Include screenshots / videos if possible!
    I don’t know where to start
  3. What solutions have you tried so far? Did you look for solutions on the Developer Hub?
    No
    After that, you should include more details if you have any. Try to make your topic as descriptive as possible, so that it’s easier for people to help you!

Please do not ask people to write entire scripts or design entire systems for you. If you can’t answer the three questions above, you should probably pick a different category.

The most common way would to be to weld all the parts to one main part and tween the main part.

I’ve used this function for a while. Make sure a PrimaryPart has been set for the model to move around:

local tweenService = game:GetService("TweenService")
local info = TweenInfo.new(3) --Change to the time it takes for the transition to take place

local function tweenModel(model, CF)
	local CFrameValue = Instance.new("CFrameValue")
	CFrameValue.Value = model:GetPrimaryPartCFrame()

	CFrameValue:GetPropertyChangedSignal("Value"):connect(function()
		model:SetPrimaryPartCFrame(CFrameValue.Value)
	end)
	
	local tween = tweenService:Create(CFrameValue, info, {Value = CF})
	tween:Play()
	
	tween.Completed:connect(function()
		CFrameValue:Destroy()
	end)
end

This is quite the random guess.

TweenPosition is for UI objects only, taking a UDim2 as the first argument.

Even if it did work for parts you’d be tweening them all to the same destination instead of keeping their relative positions, ending up with a useless pile of parts.

If you’re unsure, check your code in studio before providing it as a potential solution.

1 Like

I would recommend this community tutorial Introduction to Tweening Models

It involves tweening a single ‘root’ part, with all other parts of the model being unanchored and welded to it. Note that in order to maintain welds/weldconstraints, the CFrame property must be tweened, not position.