[Open Source] Screen Space Global Illumination for URP

Hello (and bye), forum users!

As usual: UntySSGIURP

I decided to release it first though I only tested the package in Unity 6.

SSGI High:

Feedback is welcome, let’s improve it together!

See you in Unity Discussions.

4 Likes

If you encounter any issues with this package while the forum is closed, feel free to open an issue on the github page.

Edited:
I’ve found some bugs and will need to spend time updating the documentation in the next few days.

I added infinite bounces to SSGI during the forum migration period, and it looks much better now than before.

For baked GI (lightmaps), the light bounce setting is set to 2, so it looks darker.

1 Like

Looks great! Excited to check it out soon, maybe this weekend. How’s the performance? Can you post some videos of lighting conditions changing and stuff?

1 Like

Thank you! I’m currently working on my own project, so I might provide some performance stats (and further optimization if necessary) & showcase videos later.

1 Like

This is the best SSGI i have ever seen

1 Like

Not works in play mode when moving the camera

I’m sorry to hear that! Could you provide more info so I can identify the possible problem?

  • The SSGI settings (volume override & renderer feature)
  • The current rendering path
  • Any reflection probes in the scene?
1 Like

I follow the install guide and i have tried everything
I just downloaded your ssgi from github source and drag it into the project (unity 2022)

In the below video as you can sse when i move the camera in play mode, the effect not works properly:
Play Mode.zip (793.2 KB)

In the below video as you can see when i go to the near distance, the ssgi not works… I think this is a Screen Space limitation
Angle Problem.zip (2.0 MB)

Is this render graph compatible?

Yes, I agree it’s due to the limitations of screen space solutions.

You may try placing a reflection probe as shown below. This way, when SSGI fails, it can get the approximate scene color from nearby reflection probes.

1 Like

Yes, starting from Unity 6000.0f1.

1 Like

It is better that the indirect intensity of lights depends on the “indirect multiplier” in the light component
In other words, GI be influenced by “indirect multiplier” value of the light sources

1 Like

Good idea to consider. Currently, SSGI doesn’t support adjusting GI intensity for specific objects (except on/off), which is needed for stylized URP projects.

However, since SSGI is a post-processing effect (using direct lighting + emission as input), it’s impossible to adjust the indirect lighting from specific lights individually. An alternative would be to set a different “indirect multiplier” for each rendering layer in the SSGI volume override.

I’m not sure when I’ll add it or if it’s actually practical (32 rendering layers available in URP), but thanks for the suggestion!

1 Like

How can i fix the play mode issue? i want to check the performance

Currently, I’m working on some optimizations that will be released in v1.0.9.

Could you share the test project (Assets, Packages folder & Unity version) with me since it’s nearly an empty project? It’ll help me investigate the issue quickly.

1 Like

Now I installed from the github and everything works fine
The performance is excellent
Everything looks good with reflection probes
Is it possible to increase the global GI or AO intensity?

Glad to hear that the issue was resolved!

You can increase the SSGI intensity using the Indirect Diffuse Lighting Multiplier in the volume override.

Regarding “AO”, SSGI doesn’t calculate AO directly, but I think it’s possible to use the ray hit distance (in meters) to adjust “AO areas”.

I’ll look into this after releasing v1.0.9 to see if we can control AO this way.

1 Like

Your SSGI is very similar to Lumen
The lumen consists of three parts

  1. Indirect Lights
  2. Indirect Shadows
  3. Realtime Reflection

In the below gif you can see the indirect shadows how make the leaves more volumetric:

So you need to work on your AO part to make foliage better

Also I saw a very good SSR effect in another SSGI solution in the github… So you can add a realtime reflections into your SSGI so you can compete with Lumen

Thanks for the suggestion!

Having a vegetation scene (ex. a forest) to test SSGI sounds like a good idea, and I’ll try to create (or find) one when I have time.

As for SSR, I do have one but it’s been a year since the last update, and I don’t think I have much time to improve it at the moment.

1 Like