Custom Materials For Parts and Terrain And Higher-Resolution Textures

As a Roblox developer, it is currently impossible to create custom materials for parts and terrain.

Allowing developers to create their own materials would allow more detail and creativity in their work, and it would separate their game from the rest of Roblox.

Developers should be able to upload normal, specular, and diffuse maps in their games, of course, they would go under moderation to prevent inappropriate content from being uploaded.

As for decals & textures, the max resolution should be at 2048 x 2048, of course, the resolution would be downscaled with the player’s quality settings ( to avoid performance problems. )

74 Likes

I’d enjoy this immensely, though loading places would be strenuous on older devices and slower networks.

1 Like

I don’t think creative freedom should be limited to some slower devices, otherwise things like the Unreal Engine 4 wouldn’t exist. :stuck_out_tongue:

Of course, developers would have complete control over the quality of the created materials and textures, so I think it should be entirely up to the developers if they want to support older devices.

14 Likes

YES! Custom specular, diffuse, etc would be very, very nice when attempting to add a depth effect on certain materials like sand and stuff. I also think materials should become their own category instead of tying them all in with decals. It would be nice to have a “Search by material” option in the toolbox when in Studio. :smiley:

Edit: I think this should go into Client features because it impacts the game client :stuck_out_tongue:

3 Likes

Not solely a matter of slower devices. Balancing the infrastructure needed to store and deal assets against UGC is important. Along with that, having to dish out X amount of data to each individual client compounded by every time they join a game isn’t very healthy for networks without local assets to pull off of.

1 Like

Is it not healthy though? I mean, the actual place file is stored in the cloud, unions, meshes, current textures and decals, audio files, pretty much everything but materials and some UI elements are cloud-based. I don’t think having another type of texture, being HD or an actual material, would hurt the network anymore than what it is possibly under.

1 Like

Compared to other objects, textures + spec maps are more data intensive than meshes, unions, and even the place file itself.

Assume that you’re texturing most of the objects in your game at 2048x2048px, providing a spec map of the same size for every texture, and your game’s around the size of Apoc 2. Every time you want to play that game, you’d have to download 200-500mb of textures on top of your other assets.

If I haven’t made it clear, this would be a client issue more than anything. Internet speed for a majority of Roblox’s users is no-doubt on the lower end of the spectrum, and with an entirely cloud-based game platform, there’d really be no reason add this.

(would like to see bump maps tho. would limit them at the 1040p resolution we have now)

5 Likes

Spec maps and texture maps are no different than simply uploading a “decal” and then putting them into a texture object. Of course, it would still appear as blue and green or whatever other color, but the actual file size of said texture would not change, simply because it would be put into a material object.

It’s also possible to have 2048 x 2048 textures under a megabyte in size by simply saving the file as a .jpg.

There’s also different types of .dds maps that are around 8-16 megabytes in size, if they’re optimized correctly. This wouldn’t be too much of a difference than an 16 megabyte audio file, which are allowed on Roblox.

Even if a texture file was 16mb in size, it’d still be the same strain on the game as a 16mb audio file. Rendering and such of said texture would be done on the client’s computer, and with new texture compression and mesh compression coming in a future update ( according to the roadmap ) having a large texture wouldn’t be a huge problem.

And HD textures are possible with .jpg and certain compression algorithms with PNG and DDS.

5 Likes

Bumping this to see if there’s still a bit of hope to implement this, or at least, normal maps.

3 Likes

Thanks for the suggestion - surprised I haven’t seen that until now. :stuck_out_tongue:

2 Likes

This was actually done for a hack week project this year:

6 Likes

So I’ve seen.

The foliage system looks like something that could be implemented as well.

1 Like

(As far as I know) As a Roblox developer, it is currently impossible to change the look of the default material textures. While I know I can easily upload my own textures and use those, I think being able to upload textures to make them default part materials would better increase individuality among games. For instance, across different games, parts with “WoodPlanks” material would have different looks to them, instead of one, unified look. One big reason I’m posting this and not just using Texture objects on parts is CSG is already supported through default material textures and not for texture objects. Also, since we’re on the same relative topic, what about custom texture support for terrain? Again, that way all grass terrain won’t look the same (besides just editing the color).

9 Likes

I would really like some sort of (limited) customization for part materials too, or variants of existing materials.

For example, the grass and fabric materials are both semi-realistic. The grass material has a lot of dark spots due to the self-shadowing, but this realistic aspect looks quite out of place in my games in which I don’t employ similar levels of realism. Instead, I would prefer to use a more “flat” grass material texture with various mild irregularities (i.e. individual grass blades no longer visible). The terrain grass material actually is very closer to what I’d like to use on parts.
Only the (smooth) plastic materials currently come close to this style for grass, but these materials are too flat for my taste and have massive specular highlights that don’t fit my desired grass material either.

3 Likes

Seems that this feature is coming in the form of the SurfaceAppearence object!!

8 Likes

They also are adding a material service! I hope we can organize materials in the new asset manager too without having to cram everything into a dropdown.

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