Improve performance

How do you go about efficiently moving a large group of parts using TweenService?

I need to move multiple massive 3d grids such as this one across the map via TweenService. I was thinking about unioning it, but I know unions are terrible for performance. Any suggestions?

2 Likes

Turn it into a mesh. And then move it.

1 Like

Hm, this is obviously terrible for performance to move, so we have two options, moving it in a different way, or turning it into a different thing… Here’s an interesting auxiliary thought. Maybe you could save the building as a mesh as Crypt mentioned, and then when you need it, smoothly transition from the building to mesh, and move it!

1 Like

I remade the entire grid in Blender, so it is now a mesh. As far as I’m aware, you aren’t able to take a model in Roblox and convert it directly into a mesh (correct me if I’m wrong about that)

I don’t like using Blender though, as I have a lot of issues with it. Especially with importing things. Sometimes certain meshes are transparent for no reason. And resizing the model in studio becomes very broken. Scaling on the X axis causes the Y axis to be scaled. Blender just causes a lot of wonky bugs which deters me from using it.

There is a method I share with the devforum a large amount for tweening models. It involves welding all of the parts to the primary part and then tweening the primary part’s position. This would look something like this:

for i, v in pairs (model:GetChildren()) do
if v:IsA("BasePart") then
local weld  = Instance.new("Weld")
weld.Part0 = v
weld.Part1 = model.PrimaryPart
weld.Parent = v
end
end

tweenservice:Create(--[[parameters]]):Play()

If you need additional help I can finish the script

You are sacrificing precise hitboxes using this method, though if they are not needed it is a viable method

2 Likes

I do not think so because roblox has a collision property for precise geometry so OP can just use that. Also meshes are more performance friendly.

2 Likes

FYI: You can export the build from roblox as an obj then import it again. Removing the hassle of remaking it.

1 Like

Thanks for all your help guys! :slight_smile:

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.