How to get a reflective surface

Hello there!

Roblox have released some amazing lighting and ambient features since the beginning of this year, and one of the updates allows us to have some realistic and lovely reflections. In this tutorial, i will show you how to get some great reflections on the floor, making them it like glass alongside its texture.

Please note: This does not reflect you character, but reflects the skybox in a very realistic way.

  1. First, open up Roblox studio and open an your place or game in which you would like there to be a reflective surface. i’ve gone ahead and made a quick floor with a tile texture.

  2. Here, my texture is made to fit the part, and all the lighting is set to default. Now, the first thing to do is to enable shadow map. This can be done by clicking on lighting, and scrolling down until you find technology. By default, this is set to Voxel. click on it and change it to shadowmap.

  1. Now, to enable the magic, we must scroll up to the top of Lighting and there, we will find two options: EnvironmentDiffuseScale, and EnvironmentSpecularScale. these are set to 0 by default. setting them both to 1 will result on the skybox emitting light, which is what we want to get our realistic reflections. These two settings also change the behavior of how metal, glass, corroded metal and diamond plate react to light.

image

  1. once these have both been set to 1, you will see a change. your screen will become very blue and bright. This is because of the Roblox Skybox emitting light. Since the Skybox is blue, then its light is going to have a blue tint.


    (If its not blue like above, it means your skybox is different and is emitting a different tint based on its color.)

  2. Now change to a Skybox that looks good. search skybox in the toolbox, or import your own. Mine is Sunset Sky be Ohio_Enforcement.

  3. Now click on your floor part. once selected, change its material to glass, and pump up its reflectancy to around 85%.
    image
    You will see no change on the top of you part, because your texture is on top, and is not partly transparent.


    to change this, open up your floor Parts hierarchy and select the Texture.

    Now, set the textures transparency to around 60%.

  4. Now if you zoom in closely, you will see that the floor is reflecting the skybox very well indeed!

  5. This will work with any texture, and thanks to these settings being enabled, you can also have very realistic looking metal, like the examples below:
    image
    image

Hope this was helpful,
Thanks for reading :slight_smile:
image

195 Likes

Oh my goodness! Your tutorial shines (quite literally)!

With all jokes aside, thank you for this tutorial because adding this reflective surface on objects such as a dominus was very difficult if not impossible before. I like how, as soon as the new properties (i.e. EnviornmentSpecularScale) came out, you swooped in and found a way to utilize it to meet our needs.

I really appreciate this!

19 Likes

cool i like it - the amazing man jake

4 Likes

I feel like i would only use this method to change the reflectance on hats, not textured bricks. I would just make the texture on the brick transparent, and make the brick it’s on reflective (using the same skybox method you used).
Thanks for the tutorial anyway, i bookmarked it because i will 100% forget this method otherwise.
so, thank you :slight_smile:

2 Likes

This is really neat! I have been testing this out for about 10 minutes and it looks great on everything!

6 Likes

I see you found all the dominuses and tried the method on them. When i started off with this feature, i found that pretty much all of the hats or weapons on the meshes tab of the toolbox look really nice. So if you’re looking for items to fill shelves in an environment, i suggest you just get a bunch of random meshes from the toolbox and turn their material to metal.

3 Likes

Will do! Thank you very much for telling me about this!

1 Like

Thanks! This will really help me out with my builds I will be working on.

This so awesome thanks for showing us this I hope one day Roblox makes it so you can reflect objects off it

3 Likes

this isn’t reflective, therefore it’s misinformation, I’d suggest editing the title

1 Like

It is a reflective surface.
It’s clearly reflecting the skybox giving it a shiny look. Roblox doesn’t support actual object reflections yet.

2 Likes

i do state this as well in the beginning.

no misinformation in that i believe.

2 Likes

Terrain water supports screen space reflections, but that’s hardly applicable in most situations.

2 Likes

This is amazing! I am not a builder or a mesh designer or anything like that – I am a programmer, it is all I know how to do – but I am definitely adding this to my group’s game. My builders will definitely like this.

1 Like

Hey! This was a really good tutorial, full props to you. I know it’s very late, but hey! That doesn’t mean I cannot show my thanks. This really helped me with a Lab I’m working on to make characters look a lot more shiny, since Diffuse surfaces just look to flat. It makes them look more real, especially with Future Lighting. Future lighting with this tutorial is definitely a go! 10/10 :+1:

ooo, glad it helped!

would love to see some pictures if they’re available!

I’ll get some for you, right now! I will edit this post once I do so…

Update

This is probably one of the best shots I could take. Since my character is well… white, it’s pretty difficult to see the shines. I’ll take one more to demonstrate the Advantages, only with CRM, and being all black.

Photo 1:

Photo 2:

Somewhat hard to see in both, but in my opinion still looks good ingame, in some areas where the sun shows, or there are Light Points. Thanks for this ^^

p.s Future still kinda buggy, so shadows on the walls are natural I suppose

1 Like

Using water terrain, you can indeed get some pretty neat real-time reflections.

Example of this:

12 Likes

Oh my God. Thanks for the tip. That looks so gooodddd.
Roblox should add better reflections already, maybe using the same system as water so that we dont have to do this.

Did you just create a water region under the part?

1 Like