Layered PBR SurfaceAppearance

As a Roblox Developer that focuses on realistic & detailed assets, we are heavily restrained by the lack of layered PBR textures / decal-projection.

  • You may currently only apply one set of PBR textures to a mesh. Fine for base-functionality.
  • However, the problem arises when we want to apply effects to this base-coat.

For example:

  • What if we want to apply a realistic mud-layer ontop of the base-coat? This is currently impossible.
  • What if we want to apply a realistic wound / scar ontop of the base-coat? This is currently impossible.
  • What if we want to apply a wet effect on the lower half of a playable that just exited a water body, ontop of the base-coat? This is currently impossible.


This image is an example of the best we can do for a “wounded” effect currently using normal decals.

  • Decals are incredibly outdated, given how they’re just flat-plane textures.
    • They don’t follow the UV-mapping.
    • They don’t use PBR, so they’re too flat.
    • They’re generally speaking just useless for the result we’re trying to achieve.

This is why we first need LAYERED PBR support & later DECAL PROJECTION support within the Roblox engine.

  • Layered PBR textures will allow us to create dirt / mud effects for the dinosaur when muddy/dirty.
  • Layered PBR textures will allow us to create wounded / bloody looks to our dinosaurs when low HP.
  • Layered PBR textures will allow us to make the jaw & facial areas bloody after having consumed a carcass.

Layered PBR:

  • It likely wont get easier to implement than this. Simply just implement a ZIndex property for SurfaceAppearance, so that we can apply multiple to one mesh.

    I’m no technical expert, so I have no easy solution for the implementation of Decal Projection.

Best regards,

  • Jaco2811, Lead Developer @ Jacys Studios.
36 Likes

This has been a frustrating limitation for me as well, as I’m dreaming of most of the same things (albeit stylized).

With the makeup update there is new engine API for compositing images together, but I don’t think those can be applied into surface appearance afterwards? I haven’t tried it. In any case. It’d be a sloppy solution that does not work nicely whatsoever with existing customization and immersion systems.

8 Likes

We need a dynamic solution for it, that simply just allows us to stack the SurfaceAppearance using the Transparency-filter. We have an estimated 10,000+ unique textures in-game.

So we need a universal solution, to limit us from having to spend 7 years making effect-textures for each scenario built-into each texture, haha.

30 Likes

I agree! We need layered PBR SurfaceAppearances so badly for games especially with all the skinnedmesh updates!

this can be used for car damage, bump!