You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm currently working on a project with the sole purpose of exporting Roblox games to run inside Godot through a translation layer (as a consequence most of those games will be single-player)
Describe the problem or limitation you are having in your project
Having to implement Roblox's SurfaceLight however having no way of making this inside Godot.
Doing this requires real-time lighting, which VoxelGI and LightmapGI are unable to do, and SDFGI incurs too much of an overhead to be used here + it's not fully dynamic for meshes which is a problem.
Describe the feature / enhancement and how it helps to overcome the problem or limitation
Implementation of an AreaLight3D node. This node will have the following properties:
Vector2 size;
float range;
They are very similar to blender's AreaLight nodes.
Implementation of these would be enough for me to be able to implement the SurfaceLight instance.
Note
Implementation of this would allow developers to finally not rely on emission textures with GI to fulfill this, which would prove a benefit to multiple projects with their own use cases.
Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams
Note that rendering real-time area light shadows with good performance is notoriously difficult, so I expect capsule shadows to be a good alternative here. In fact, capsule shadows alone can suffice for dynamic objects if you're using LightmapGI for static object shadows (using an emissive mesh that you hide after baking).
I wonder if there is any performant way to make rectangular area lights affect volumetric fog too.
Doing this requires real-time lighting, which VoxelGI and LightmapGI are unable to do,
VoxelGI can do this in real-time if the emissive mesh has its GI mode set to Dynamic. This is quite slow due to the oversampling that can't be turned off though.
Calinou
changed the title
Implementation of AreaLight3D
Add an AreaLight3D node to render real-time light coming out from a rectangle in 3D space
Jan 2, 2025
Describe the project you are working on
I'm currently working on a project with the sole purpose of exporting Roblox games to run inside Godot through a translation layer (as a consequence most of those games will be single-player)
Describe the problem or limitation you are having in your project
Having to implement Roblox's SurfaceLight however having no way of making this inside Godot.
Doing this requires real-time lighting, which VoxelGI and LightmapGI are unable to do, and SDFGI incurs too much of an overhead to be used here + it's not fully dynamic for meshes which is a problem.
Describe the feature / enhancement and how it helps to overcome the problem or limitation
Implementation of an AreaLight3D node. This node will have the following properties:
Vector2 size; float range;
They are very similar to blender's AreaLight nodes.
Implementation of these would be enough for me to be able to implement the SurfaceLight instance.
Note
Implementation of this would allow developers to finally not rely on emission textures with GI to fulfill this, which would prove a benefit to multiple projects with their own use cases.
Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams
Implementation of https://eheitzresearch.wordpress.com/415-2/
If this enhancement will not be used often, can it be worked around with a few lines of script?
No.
Is there a reason why this should be core and not an add-on in the asset library?
Requires modification to RenderingServer which cannot be done at this point in time.
The text was updated successfully, but these errors were encountered: