Changes to Part Surfaces

Hello all! We made a minor change to the existing Beta Feature to further simplify things.

Before, as mentioned in the post, when Join Surfaces was on, all flat touching sides would create a ManualWeld instance, and a special name was generated using the names of the two connecting parts.

Now, we just create a Weld instance and give it no special name. There is currently no difference between the two, and creating special names was inconsistent with how everything else is created in Studio (using identical names also creates a small network performance improvement).

This change should have already been applied to the Beta Feature, so this will already be happening if you have the feature enabled.


This change will not remove any properties nor will it affect Outlines.

1 Like

The surface option still exists in Studio even with the beta feature, However if you insert studs onto one brick and copy it the studs will not transfer over. Will the surface option in Roblox Studio be removed sooner or later?

1 Like

Are you able to provide an example of this? I’m pretty sure this only happens when you insert new parts rather than duplicating existing ones.


I wouldn’t consider it hours wasted, the more you learn how to do stuff the best way available, the happier you’ll be with your work :slight_smile:

I get that newer, less-experienced builders may have a hard time figuring out what the surface types do. It makes sense to at least hide an unused feature of the Roblox engine. Those who specifically want to use legacy surface joints can use MakeJoints (or for now, JoinToOutsiders), though I’d prefer it be hidden via an advanced setting in case someone needs it to work with older builds.

I couldn’t help but notice that the change hasn’t become mainstream yet. Are you keeping the legacy surfaces around a little longer for older builders to adapt?


Oh. Nevermind. I found the announcement.

Will yellow hinges be replaced with a constraint to power vehicles? Or do we have to script everything now… many people who develop cars and locomotives don’t know anything about making or installing scripts, so will this mean newer developers will no longer be able to power a vehicle without learning how to program? If this is true, its rather conflicting with all the other updates that have been done to making roblox easier for new developers…

1 Like

Haven’t heard anything about part surfaces in some time, and like @ForbiddenJ said,
“less-experienced builders may have a hard time figuring out what the surface types do.” I don’t know a whole lot about part surfaces so I think it may be helpful in the near future.:+1:t6:

Yellow surface hinges have been replaced by HingeConstraints for a few years now. We have a very simple tutorial with a script included to create a car using constraints. There’s also tons of cars and chassis on the toolbox that can be taken and customized.

That being said, this change is not removing the ability to use yellow surface hinges, as stated in the post. You will still be able to use them to build cars with VehicleSeats after this change.

1 Like

Is there any plan to eventually phase out hinges and motors?

I think that most developers script/build their own versions of hinges and motors -or some of the like- so the idea of phasing them out might have some positive feedback.

[Correct me if I’m wrong, I’m not a super expierenced developer]

1 Like

Just use this bit of code in the command bar and will delete everything with the name “ManualWeld” in the game, or whatever name you put in the if statement.

for i,v in pairs(workspace:GetDescendants()) do
	if v.Name == "ManualWeld" then

We may continue to hide and remove them from various studio tools, but they will always exist as an instance you could insert with a script to maintain backwards compatibility.

Surface Hinges and Motors have been replaced by HingeConstraints and other physics Constraints.

1 Like

So creating motors with a script would still work?

Ehm no, surface types are way easier to understand than those wierd constrains. Even if not many use it, it still important for me as a transport developer, it would damage my work flow, like all of my trams base of hinges. But the remaining questions is if you will also remove the Surface Property in the “Properties” Window.


@kleptonaut posted this on the released thread, for any people that aren’t viewing that:

1 Like

Do not remove VehicleSeats. I use their ThrottleFloat and SteerFloat values in my scripts. They are very comfortable and fast to use.

1 Like

Totally same here. Copying wheels or bogies takes a lot longer with constraints because you need to move or edit attachments every time.

Constraints are much better than surface types ever will be.

I’d suggest using the search tool first:

1 Like

If I have a ‘old’ game that relies deeply on SurfaceTypes, I’m getting the idea that it will not be impacted. What if I wanted to add an update to that game? Will I have to find some other way using constraints?

1 Like