An update on Future Is Bright

The main github page still links to V11

3 Likes

https://github.com/Roblox/future-is-bright/releases/download/v12/future-is-bright-v12.zip

9 Likes

v12 doesn’t seem to be working correctly for me, it’s just using CPU voxel and there’s no property under Lighting that lets me switch to shadow map. Graphics settings are cranked up to maximum (I also have decent hardware, didn’t have too many problems performance-wise before), and messing with HybridBlendDist and HybridBlendSoftness doesn’t do anything.

What am I doing wrong here?

Edit: Ah.

4 Likes

thanks for working on performance this cant ship till i can get solid FPS while playing in shadowmap :triumph:

8 Likes

I hate to say it, but everything seems to look worse in the new prototype, and I can’t seem to find any way to tweak the lighting settings to make it look better.

Everything looks extremely metallic and dark.

The only way I can make things look decent is by changing the OutdoorAmbient to 255, 255, 255, and also making the Ambient something in the midrange of values. Otherwise, it looks like the lighting you would see in a crappy horror game. Whenever I change the lighting to those settings, though, it messes up with the exposure. In a game with indoor and outdoor areas, the exposure difference when AutoExposure is enabled is huge, and it just looks weird.

Maybe this will be solved with the dynamic voxels, but you can really see this difference when you see unloaded voxels.

7 Likes

Make sure you have this option enabled.

I had a similar problem by default, and it changed when I enabled the FutureIsBright option.

12 Likes

Ah, that makes a lot more sense.

Everything still looks metallic though, and I still have to change the OutdoorAmbient/Ambient to high values, but with the shadows it makes a lot more sense.

Also, when the shadows load in, it’s pretty jarring.image

6 Likes

That jarring are caused by those two options here.
image

The BlendDist changes the distance of how far that jarring appears. (You could have it on a distance far enough the player wouldn’t be able to see it that well)
And the Softness should speak for itself, but it makes the shadow softer for everything after the set BlendDist.

Edit: I think it’s performance-wise better than having those shadows everywhere for the engine to render lol (like before v12).

Examples of what the options do

HybridBlendDist on 750

HybridBlendDist on 0

HybridBlendSoftness on 100 (with HybridBlendDist on 40)

HybridBlendSoftness on 0 (with HybridBlendDist on 40)

8 Likes

Now I need to figure out how to do lighting in areas like this

I’m using PointLights so the ceiling can be lit (SurfaceLights are accurate, except that they leave the ceiling entirely dark), but then that makes a highlight at the point where the PointLight is located, which looks really weird.

Maybe I’m lighting things wrong, but it seems like this system only really works with suspended ceilings for SurfaceLights or lights emitting from a small, central point for PointLights and SpotLights.

It’s hard to make things not look dark without using artificial, invisible lights all over the place. But that also doesn’t work because of the metallic highlights all over the place. Maybe it’s just because I’m doing it wrong though.

I have the feeling it will only work well when you place lights inside actual visible light objects, but that also makes it so the ceiling is dark.

5 Likes

Remember to always check out the release notes when a new version comes out. In particular, a lot of stuff about v12 that’s been scattered across the past several posts is plainly explained there.

12 Likes

@zeuxcg instead of solely focusing on extended lighting range to light up huge areas ; what about an actual volume area light as seen in an old Hackweek lighting Demo ?!

The way this light worked was basically simply illuminating anything inside an entire parts size or so …
or illuminating everything in a rectangular area … like a block of light…a corridor of light

also about surface lights ; those currently still do not cast any shadows ; plus it would be neat if we could somehow get specular highlights which are shaped as rectangular as the surface light ?! … since a round specular highlights from a wide rectangular light source makes barely any sense in my opinion … and looks weird for wide ceiling lights …

Also based on @DataBrain 's place ; i think the engine finally needs some sort of global illumination / light reflecting off surfaces ; light bouncing … so teh surface lights could actually dynamically fill the room with light …

And sorry for the long text but one last question ; now that the voxel system is used again ; will we ever get self illumination for the Neon material ? so that bright neon colors get their own custom shaped specular highlights ?!

OH and before i forget to ask ; what about shadow transparency for transparent parts ?
and one other thing which was featured in the same old hackweek lighting demo ; tinted shadows ; so if light goes trough any colored transparent pixel it colors the shadow based on the color of the transparent parts and of particle pixels ; this would be especially useful for real tinted glass !

9 Likes

This is also one of the main concerns I have with the system. With the voxel system, there is basically some really fake global illumination due to light blending between voxels.

Feels like the only way to get such scenarios to look right is by using a brighter indoor ambient (which I’d like to avoid personally in order to also have very dark caves).

7 Likes

There’s only so many variables you can add to an equation before it becomes intractable to solve. We’re thinking about a lot of these issues but a lot of these aren’t practical to focus on solving right now.

5 Likes

Yeah, that’s been on my list of concerns as well. We’ll look more into it.

4 Likes

We are working on tuning this transition a bit. Some things that will probably happen:

  • the blend region will be tuned to help make this better
  • the default ShadowSoftness property of Lighting will probably be somewhere around 0.2-0.5 to help
  • we might look at different voxel algorithms for generating shadows although this is a bit of a stretch

On a high level, we are expecting to have some sort of not-100%-pleasant looking transition here - it’s hard to get the cake and eat it too.

15 Likes

Quick update: we’ve released v13: https://github.com/Roblox/future-is-bright/releases/tag/v13

This release has the first version of anisotropic occupancy support - we now voxelize parts using a more involved process that helps us handle objects that are thinner than 4 studs. The current implementation is not optimized fully yet and also we’re looking into some cases where an object that should be lit is incorrectly shadowed due to this.

Also this release adds a lot more shadow optimizations (still working on more, had to disable some that weren’t working well yet), improves shadow LOD blending and changes default Light.ShadowCutoff to 0.75 to improve compatibility with existing content.

Please don’t hesitate to report bugs here or on GH. This release is the first release that has all the large pieces of the technology that we’re planning to ship - from now on it’s mostly optimizations, quality tuning, bug fixes and content compatibility work. We are planning to look closer into automatic exposure algorithms but that will probably happen a bit later this year.

29 Likes

Is AA disabled in v12 and v13? It doesn’t seem to be active on Level21 graphics

This is v13

image

4 Likes

Also this

4 Likes

finally something my low end pc can enjoy
thanks zeuxcg

edit: this is a nice improvement to FPS!

i still lag a lot in places that use a decent amount of lights though

with lights


without lights

but still a really great improvement !! i can finally enjoy FIB without lagging a ton!

also- some bugs i found:

image
image
image

6 Likes

Does that mean that v13 will look almost as the final version?

3 Likes