It’s been a while but Future Is Bright project is coming to its logical end. Phase 3 has been actively developed for quite some time but we are ready to start Studio Beta to share the current progress. This isn’t final so expect things to change. Phase 3 is all about pixel perfect local lights (Spot, Point and Surface) and shadows (shadows for Surface lights are not gonna be supported this time).
So here’s the main changes:
- New lighting technology: Future (the name is preliminary, it might or might not stay, we’re evaluating options)
- Shadows property of lights now affect per-pixel lighting
Remember that if you publish your game right now, the changes won’t be visible for your players since the change is Studio-only for now. We want to be sure that everything works perfectly before final release; be sure to let us know about any problems you encounter.
Here are some screenshots with “Future is Bright” phase 3 enabled
To achieve best performance, per-pixel lighting distance depends on the current quality level and on platforms/devices that don’t support it would fallback to ShadowMap (or Voxel if ShadowMap is not supported). Also note, that shadowed point lights are much more expensive than shadowed spot lights. This beta will be enabled for DX11, Vulkan and Metal.
Unlike other lighting modes Future does proper specular highlights for local lights so the material choice is more important than ever.
UPD 07/09/2020
some of the things that are being asked for but not part of fib3
- make light radius larger than 60. this has many internal implications that are not part of fib3. we’re thinking how to improve this, but not as part of this update.
- autoexposure is not part of fib3, will be shipping it separately
- surface light shadows. not planned as part of fib3 but we’re working on a solution for that
- some surfaces are too glossy. this can be addressed either by changing the material or in near future by using SurfaceAppearance and customizing textures
few fixes went live with this update, here’s what’s fixed and had landed to production
- narrow surface/spot lights looked broken
- a potential crash when changing light parameters
- local lights didn’t affect grass at all
- surface guis lighting and fogging looked bad with fib3
what is fixed but hasn’t been shipped yet
- spot light didn’t cast shadows through the parts they are attached to
- light leaking through surfaces. although this is super hard to solve fully, it’s been substantially improved
- shadows not being updated sometimes
- weird shadow artifacts. this is hard to fully address but the artifacts were significantly reduced
we’re also looking into chaging the falloff of lights and also trying to better match overall shape and brightness of voxel and fib3 lights. we’ll update the post when next batch of fixes comes live
UPD 07/20/2020
some of the fixes that went live with this update
- spot light didn’t cast shadows through the parts they are attached to
- light leaking through surfaces. although this is super hard to solve fully, it’s been substantially improved
- shadows not being updated sometimes
- weird shadow artifacts. this is hard to fully address but the artifacts were significantly reduced
we’re currently investigating options for light falloff and better matching of voxel and per-pixel lights so that quality level transition is as smooth as possible. we’ve also decided to re-add surface lights shadows though they aren’t technically correct but better than nothing. performance is also been investigated. we’re super excited to see what community was already able to achieve with fib3 and looking forward to see new amazing places!
UPD 10/29/2020
it’s been a while, we’re working really hard to ship fib3 this year, here’s the list of what was recently fixed/added
- surface light shadows. this can be somewhat fragile given how limited resolution of shadowmap is and how big the lights can be. and the shadows themselves are kinda hacky. but it’s better than nothing. let us know what you think!
- various performance optimizations, including shadowmap lods, light update throttling and some other little touches here and there. please note that some of those are also affecting Shadowmap mode, so we never stop optimizing things
there were probably more fixes/changes under the hood but the bottom line is we’re getting ready to release this on clients. if you find something that is still broken/feels off/doesn’t work please either create a bug ticket and DM me or just DM me with the description of issue and steps to reproduce. Hopefully we can make it shine together! Thank you!