Skip to main content

Blog Archive

Dynamic Lights Now Support Shadows

September 30, 2013

by zeuxcg


Archive

Ever since the release of dynamic lighting last spring, our gamers, builders and developers have united in requesting that objects blocking SpotLights and PointLights – in addition to sunlight – cast shadows. We received so many requests for this unarguably intuitive improvement that we prioritized it in our development pipeline and pushed it to production as quickly as possible. While it’s a simple advancement on the surface, the Rendering Team poured significant time into making it happen without a hit to your performance.

SpotLight PropertiesBecause you might not always want an object to cast a shadow for artistic or gameplay purposes, this feature is an option for each light in your game. It is turned off by default; you can enable it using the new “Shadows” property. With the Explorer and Properties panels exposed in ROBLOX Studio (View > Explorer and View > Properties), select a SpotLight or PointLight (always parented to a part) and look for the Shadows checkbox in the Properties panel. Toggle it to see what happens.

Shadows appear on both desktop and mobile, and with moving and static light sources. Transparent parts block light accordingly. There is one caveat you should keep in mind as you build: our lighting is voxel-based and the voxel size is four studs, meaning an object needs to be four studs thick in order to completely block light.

In addition to shadows, we have given SpotLights an extra property called “Face”. This orients the SpotLight to shine in the direction of the chosen face, instead of being fixed at the “Front”.

Object-Shadow-Example-3

While we’re on the topic of dynamic lighting, it’s worth mentioning another common request: a fix to light seeping through corners of walls into otherwise dark rooms. This is a surprisingly complicated problem, but we have some ideas as to how we can remedy it in the future. In the meantime, you can create walls that are more than four studs thick to prevent the lighting grid from leaking into what should be a dark room.

Dynamic lighting brought an entirely new sense of atmosphere to ROBLOX. We’re excited to see it become even more dramatic in your creations. Feel free to share games and places that use shadows particularly well!