Light Probes in VL.Stride

hi,

Light Probes are a quick and lightweight methods to approximate global illumination (i.e. incorporate indirect lighting not stemming from active light sources).
Stride supports them and VL.Stride also takes them into account in the DefaultRenderSetup (see SceneWindow/DefaultCompositorSetup/DefaultCompositor/DefaultRenderSetup).

Creating and calulating light probes within VVVV is apparently not possible right now (I did not find any nodes for creating them and triggering the calculation). When creating a scene with the Stride Editor and placing/calculating the light probes there, one would hope that these would be picked up when this scene is loaded in VVVV using the AssetScene node. However, this does not happen - the light probes do not appear in the loaded AssetUrls from the LoadProject node. Also the lighting effect of the probes is clearly not there:

Am I missing something here or is this feature not supported?

Edit: typo

2 Likes

Would be nice if you could upload that test project of yours.

yes indeed, here is a project and a VL file to test it.
LightProbeVL.zip (334.3 KB)

Some guidance:
the light probes in MainScene are loaded in VVVV when retrieving it using the AssetScene node. one can find the respective LightProbe entities using the FindEntitiesWithName node. the LightProbe Entity has a component called LightProbeComponent, which stores the spherical harmonics (SH) coefficient color values (those can be looked up by opening the Assets/MainScene.sdscene with a text editor.

       -   Entity:
                Id: 558fb1d4-84a3-410f-bf32-f7d18541eca1
                Name: Light probe
                Components:
                    0e9ed4aa6d62926a075367a1a4babe4b: !TransformComponent
                        Id: 0df562a0-c6fc-474d-868f-d5e89b019a90
                        Position: {X: -4.8326116, Y: 0.13652691, Z: 3.1763976}
                        Rotation: {X: 0.0, Y: 0.0, Z: 0.0, W: 1.0}
                        Scale: {X: 1.0, Y: 1.0, Z: 1.0}
                        Children: {}
                    d2ef49022f87c3a308eda2b923ddc6d4: !LightProbeComponent
                        Id: 40076fc5-36af-4a1b-8442-347eddaab93e
                        Coefficients:
                            - {R: 0.069902234, G: 0.08278165, B: 0.11524755}
                            - {R: 0.0068840217, G: 0.0030220468, B: 0.016503826}
                            - {R: -0.006703034, G: -0.020229138, B: -0.02855806}
                            - {R: 0.023765054, G: 0.059016313, B: 0.07931887}
                            - {R: 0.0051666764, G: 0.017109819, B: 0.032491177}
                            - {R: -0.008686198, G: -0.019749127, B: -0.026495429}
                            - {R: 0.013047716, G: 0.016229851, B: 0.017078383}
                            - {R: -0.009092991, G: -0.017156517, B: -0.022877589}
                            - {R: 0.0069545875, G: 0.006554856, B: 0.0007674043}

here is what I’m seeing:

  • In the Stride Editor one has to place the SH entities. before the SH are calculated the scene looks dim (and this is exactly how it is also displayed in VVVV). the SH Coefficients are all zero (black) in the file.

  • now one has to trigger caluculation of the coefficients in the editor by hitting the compute button

    . the scene will light up and the SH components will be stored with the LightProbeComponent (after saving the scene).

in VVVV the scene always stays dim, as if the LightProbeComponents are not being taken into account. also, I did not find any node that would allow me to work with LightProbes within VVVV.
it would really be nice to have them working - i hope this is something that can be fixed easily…

one more thing:
what’s weird (but possibly unrelated): when opening the AssetScene node it shows a missing Create node for SceneManager. The node works however, still this is odd and probably a bug

1 Like

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.