Indoor Dynamic Environment Maps Beta

That’s because its reflecting the skybox overtop of the real reflections no matter what I do. This is with a black skybox. The previous one was with the default. I’ve tried the Realistic Sky skybox too.

“Realistic Sky” Skybox
image

I think you have to use surface appearance instead of reflectiveness.

1 Like

In Roblox’s example as well as multiple of the examples other developers have posted in this thread they are showing regular spheres with different levels of reflectance. This is intended to work on a regular reflective sphere.

2 Likes

I have a question.

I’ve been using a workaround to this kind of feature for an entire year now (took 6 images of an area manually then changed the skyboxes if you hit a certain area with a raycast above ur head), so I have a really important question and suggestion: Would it be possible to use this to GENERATE preset skybox images in studio to use for the normal sky?

It’d save me a lot of time trying to take pictures of an area and trying to line them up, and if generating them would exist, then we could use it for more than just indoor areas.

5 Likes

Why not just make advanced options then? Tying things to the Graphics Slider isn’t going to work forever, you know…

2 Likes

Okay, I’ve realized now this “Automatic” application of reflections is going to conflict with something i’ve worked weeks on.

Currently, I use a custom-made day/night cycle that tries to show reflections at all times of day, and it also changes reflections by changing the images on the sky if you enter an area. This is present in THREE GAMES, one game which I contributed my system to, Midnight Racing: Tokyo. If this gets implemented, wouldn’t this DIRECTLY conflict with my system and therefore ruin it? Please don’t make this automatic…

Edit:

This is further proof, using my system, that an automatic dynamic cubemap would directly conflict and even overlap with this system of mine. If the dynamic indoor reflections was implemented here, it would have overlapped the tunnel reflections with its own, causing a distorted looking reflection.

14 Likes

This is great! However, it has some problems. For one, as @builderwaci mentioned, it will break parts of the game we work on (we work on a mutual project together). We have manual reflections set up already and are skeptical of this new system and how it would significantly change our already fine-tuned reflection setups if it were to be forced. We also both agree that this should be part of an advanced graphics options feature. The belief behind not including advanced graphics options, as I know it, is that it will confuse younger players and they’ll mess something up by pressing random buttons in the client. This philosophy has always been problematic for developers, but now more than ever as leaks surface of Roblox requiring age verification, including uploading your ID to a third-party service for age verification in order to use voice chat. This, by itself, is insane, but also nullifies Roblox’s excuse for not including advanced options by age-restricting features while still refusing to compromise on advanced graphics options by age restricting them, a popular compromise proposed by developers whenever the subject is brought up. As developers, we want as much control of our games as possible, and forcing new features while refusing to give the end user any control of, say, maximum distance of Light objects, is a slap in the face to all of us.

5 Likes

This seems really cool. I do agree that we should be able to place the cubemaps ourselves as well, both with tools in Studio and with functions in scripts. Having an automatic option is really neat, but it isn’t perfect and being able to set the position ourselves would fix these problems.

My game uses procedural generation, and there is a factory randomly placed in the world. Being able to ensure that the cubmap is generated from the center of the factory by setting it’s position would be useful to me, otherwise I might not be able to use this feature at all.

Also, screen space reflections would be a nice alternative. Some fast moving objects, like cars, rolling balls, guns, swords, etc. would benefit from this. Terrain water already has screen space reflections, so it could be used on parts as well. I remember a Roblox employee said they couldn’t add it yet for performance reasons, but it would be cool to see eventually.

2 Likes

Very good update.

Hopefully we can see player reflections here soon?

Maybe even for outside as well

Env maps are static, so players won’t be put into them, if you want player reflections you gotta make a path traced/ ray traced script or just do a script that clones the player

Metal won’t reflect anything whatever I do, but ice, smooth plastic and plastic will, with exposure set to 5+ of course

FINNALLY!
I hope it will come to life very soon, I can’t wait to play roblox games withous re-shade but with reflections!

FINALLY!! Thanks so much for this live reflections update Roblox, keep up the good work!!

1 Like

well reshade got Screen Space reflections which is a thousand times better than ENV but will cost more performance than ENV.

1 Like

Please paralax correct the cubemaps, as well as making them work properly with outdoors. This would make the feature useable and much better looking.

22 Likes

I really REALLY want this instead of the very ugly ENV maps we have.

4 Likes

It looks cool but also could impact a lot of game lighting by the problems below

while trying it out and trying to break it by basic buildings and more i encountered these, (so far pixelated reflections is my personal fear) and there’s the problems :

is it in real-time or it’s updated by each part’s changes?
https://gyazo.com/475904aecf03f642a7115142ba8db34e
and by some notice, it could lag from high amount of parts by indoor unless you are near lower amount of parts or in cramped space which reduces that lag, (eager bulk execution were the cause)
the reflection resolution is terrible, it does help with performance but near it doesn’t change the resolution and stays low
automatic lighting probe has issues with positioning, it might seizure a bit but it should have smooth movement or a transition to mask the intense shake

stuff about that were probably not important to fix if eager bulk execution is disabled :

with indoor dynamic environment, you can really cheat if you bring 100 flashlights in a cave and then shine them to yourself to do this
https://gyazo.com/cf8203d5606c0b5d354481b9ef74720c

having the day time with reflection to above 1000 can light up the entire indoor or all spots indoor


it could get worse by applying pointlight
https://gyazo.com/b0df0ba13dcd2bfbeea409b04d4406f1

with +1m reflections, it could cause this


and flickering
https://gyazo.com/bde04e90deb9581ffd734d1da4653711
it could fill up the indoor with just a sphere with light by the certain camera angle
https://gyazo.com/0c7f4f7093ae14e9213f4d2c4a26da54

How do you expect to be able to make both low-res and high-res cubemaps without shooting the game’s performance in the leg 60 times a second?

no

It should have been obvious that making a part very “reflective” would cause this. I don’t see why you should even bring this up.

It was never designed to handle a very ““reflective”” part, why is this even an issue?

You can’t avoid this with the current method which is rendering the whole scene 6 or more/less times. It should have been very obvious that it would cause high amount of lag

1 Like

Important to note that this is not intended to be a perfect mirror, but rather is a great tool for making reflective parts in an environment look more like they’re supposed to be there. On a meshpart intended for gameplay, odds are likely that the reflection appearance will not be focused on, it’s more likely the general shape and colors of the reflection will be.

I think this is extremely cool, but definitely a bit of a shame that we cannot set additional metadata in our games so roblox knows artist-intended places to fetch cubemaps from. There are certain viewpoints in my game that could be chosen intentionally to maximize impact of reflections. The current algorithm for choosing the probe location sometimes chooses not to update to a clearing where players will spend more time, or chooses a position that doesn’t optimally reflect the best parts of the surroundings.

I don’t understand why Roblox pushes so hard for everything ingame to be a physical real-world concept. Games are partially built on metadata and invisible information. It only increases the power of the engine to be able to handle both automatic and authored cases such as this. It currently works “good enough”, which to be fair is very well, but the manual touch could make it that much better.


As an aside, it would be cool to know more about how Roblox automatically chooses the location for the probe.

14 Likes

This feature is amazing, it’s what we needed for a while now since PBR came out.

My cars look good with this interior lighting.



Sometimes it doesn’t work though in my other games, so that needs fixing. I hope soon we get exterior reflections aswell.

6 Likes