Deprecating Surface Tool API

Hi devs,

Over the past few years, we’ve been removing the old-style Surface behavior in favor of better methods. Last fall, we removed Hinge and Motor surfaces, and at that point, the Surface tool in the Model tab became solely a visual change. (In case you didn’t see, we recently released a Surface Orientation Indicator to help you quickly identify the front face, since some of you used those surface types to determine “front”).

Continuing this evolution away from Surfaces, we are removing the Surface tool and marking the API deprecated. We will maintain the API for backwards compatibility for the foreseeable future. Because the API exists, it’s possible to write a plugin to restore the tool’s behavior, if you need.

Thanks!

142 Likes

This topic was automatically opened after 16 minutes.

Roblox did an good step from This one.
You can actually use ParticleEmitters, Usually according To the post, You use it for that, However also some problems will happen;

  • You cannot use them for building unless you have F3X plugin.

  • If this would happen to ALL games before The update, Then so It would make chaos.

8 Likes

This one hurt my soul. Roblox, our little lego game, is growing up too fast :sneezing_face:

Will the studio keybinds for surfaces still be maintained as well? A big part of my building style is based off of Surfaces, and I’m not interested in making a plugin at the moment.

Definitely not, because I don’t know what I’m gonna do if they are :sob:

43 Likes

I assume surfaces in general will be removed soon? If so, What will happen to the textures that they use? I ask because it could mess up the look and feel of several games if they are

8 Likes

You should mark this API reference as deprecated. @peraldon

https://developer.roblox.com/en-us/api-reference/enum/SurfaceType

The OP, which is only two paragraphs long, specifically states that they will keep Surfaces- they’re just deprecating the Surface Tool APl. This is going to be true indefinitely. Old games will retain their look.

7 Likes

Kinda sad to see this go.
I used the surface tool to find the front of a part if i was too unsure of the face.
Though it’s nice to see Roblox cleaning up the old tools!

6 Likes

With surfaces being more and more deprecated, is there a chance that parts created with Instance.new("Part") will be changed to be initialized entirely smooth, or will they always have studs on top and inlets on the bottom?

8 Likes

you can just use a ConeHandleAdornment instead. works just as well :+1:

3 Likes

what will we do if we want to make a stud game, we would have to apply a texture on every single brick, this isn’t a smart move, as it takes away game ideas from smaller developers who can’t code well and depend on what they have in studio, perhaps an official surface plugin can come out as a “you can install this if you want to”.

10 Likes

TheZonerBio, Cc @Vundeq OP is only two paragraphs and mentions the new built in replacement for the face-finding use-case in the first paragraph. Please read announcements before replying.

@Wertyhappy27 I don’t see how this impacts “smaller developers” who can’t code(??) well. It is simply an art style gimmick. Developers should explore other art styles. It’s also only a matter of time until a community member builds a good replacement plugin. Roblox need not spend engineering resources to provide this.

@MysteriousVagabond The Instance.new defaults will probably never change since existing code relies on the default properties (i.e. my code only sets X properties on a new instance, if Roblox enables Y properties I don’t expect, then my game might break).

3 Likes

To be fair, the surfaces as they currently exist only display on plastic parts, which already hampers their artistic use cases pretty substantially. You’re better off applying a texture of the surface to the part instead.

3 Likes

Check out Surface Orientation Indicator

4 Likes

Personally, as a classic builder, I don’t like this change. It’s now harder to obtain all studded parts or general studded parts. I don’t like that I have to either write a plugin or wait until someone makes a plugin for it. I get that ROBLOX wants to move away from surfaces, but it’s ruining some parts of the community.

11 Likes

Can’t you just use textures?


rbxassetid://1059424432

7 Likes

I understand your desire–when we were making this call, we looked at our analytics and saw that there were a few people making stud games but not enough to warrant keeping the feature. A texture will be the most future-proof solution, but since the surface API still does exist, it is possible to write a plugin to do so. If the usage was high enough or this feature important enough to warrant a 1st-party plugin, we would have left it as-is, but it wasn’t.

10 Likes

I know changes like this can be frustrating, but since the API is still available, your projects’ current behavior won’t change and it is possible to rebuild the tool’s functionality. Or as others have pointed out, perhaps textures are an option, too.

11 Likes

Good catch. Yes, we will change that, too (goal will be to preserve backwards compatibility; looking into it with eng now). Ironically most of the usage of the Surfaces tool has been to switch parts to be smooth.

11 Likes

This is a solid change. After SOI (Surface Orientation Indicator) was announced/released, surfaces lacked relevancy and became somewhat redundant to the better methods that now exist. Writing a plugin to restore the same functionality is somewhat easy so, there’s really not much downsides to this not being here.

1 Like

FWIW, I do not think this is a good idea. This will break games that expect otherwise.

4 Likes