<p>In this vein a bit, Killzone renders one bounce reflections, but uses temporal anti aliasing to combine the last frame with the current frame.</p>

<p>In practice, this means you get MANY bounce reflections, since in effect each frame rendered catches the previous number of reflections as the new reflection - adding one each frame.</p>

<p>Not quite GI, but i wouldn't be surprised if people pursue that direction more in the future, if they aren't already working on it.</p>

<p>The temporal anti aliasing used normally lets you get more samples with subsequent frames, but used in this way, it also gives you higher bounce counts with subsequent frames.</p>

<p>I could totally see doing path tracing type path following, choosing reflection or BSDF rays based on fresnel equations for instance, and having the temporal AA combine it over time.</p>

CC BY-SA 3.0
2017-01-11T21:17:15.123Z
This is interesting because TAA between frames is cheap but hard to implement.  I used temporal blending but on voxel grid to get smooth light movement which is quite easy to implement in this case.
mdkdy
CC BY-SA 3.0
2017-01-11T21:29:44.110Z
I know the usage of TAA on shadows in screen space or volumetric fog rendering but never thought it can be applied to GI in that way.
mdkdy
CC BY-SA 3.0
2017-01-12T03:16:44.017Z
Remember me if you publish a famous paper (;
Alan Wolfe
CC BY-SA 3.0
2017-01-11T20:33:24.870Z
2017-01-11T20:51:31.777Z
2017-01-11T20:51:31.777Z
Alan Wolfe
<p>Many of the real-time GI solutions have some precomputation involved, which enable real-time lighting changes but limit the geometry changes to be non-real time. E.g. in cone tracing you mentioned there's the non-real time scene voxelization process. Here are few such real-time solutions that come to mind in addition to the ones you listed.</p>

<ol>
<li>Light probes</li>
<li>Screen-Space GI</li>
<li>Virtual Point Lights</li>
<li>Precomputed Radiance Transfer</li>
</ol>

<p>It's also the question how you define real-time: What's FPS, on what kind of hardware and for what kind of scene complexity.</p>

CC BY-SA 3.0
2017-01-11T15:21:54.343Z
I made an edit. Yes voxelization can be also done as precomputation. But it seems to have nice performance also in real time as I implemented it for occlusion purporses in RSM based GI. I know that precomputation is crucial for performance but it is just a idea of thesis  - study of "real timeness", I mean calculated each frame. A screen space GI sounds like oxymoron.
mdkdy
CC BY-SA 3.0
2017-01-11T15:26:34.547Z
Scene complexity - actually just one model probably sponza. Same complexity to get comparable results.
mdkdy
CC BY-SA 3.0
2017-01-11T15:26:42.080Z
Performance depends on the scene complexity you need to voxelize per frame, if you can call it real time. You could also call path tracing real time technique given simple enough scene and/or beefy enough hardware, and poor enough quality (:
JarkkoL
CC BY-SA 3.0
2017-01-11T15:09:28.307Z
2017-01-11T15:09:28.307Z
JarkkoL
<p>I'm considering topic of my thesis connected with computer graphics - I would compare some GI techniques which work <strong>completely in real time</strong> (no precomputation to lightmaps etc. and each frame everything is calculated anew) to narrow my topic.</p>

<p>I plan to compare two kind of techniques:</p>

<ul>
<li>based on RSM sampling heuristics (Radiance Hints) </li>
<li>based on cone tracing of scene voxelization calculated in every frame (Voxel Cone Tracing) </li>
</ul>

<p>Each technique is based on grid moving with camera in voxel size increments.</p>

<p>The key I think is to describe pros and cons of kind of technique in more general way. For example some other techniques are based on RSM sampling. I think two kinds should suffice.</p>

<p>Is there any other important or popular kind of technique which I should include or I am not aware of?</p>

<real-time><global-illumination>
Selection of GI techniques working in real time
mdkdy
# Selection of GI techniques working in real time

(Asked by: username_0 on 2017-01-11)

I'm considering topic of my thesis connected with computer graphics - I would compare some GI techniques which work **completely in real time** (no precomputation to lightmaps etc. and each frame everything is calculated anew) to narrow my topic.

I plan to compare two kind of techniques:

* based on RSM sampling heuristics (Radiance Hints)
* based on cone tracing of scene voxelization calculated in every frame (Voxel Cone Tracing)

Each technique is based on grid moving with camera in voxel size increments.

The key I think is to describe pros and cons of kind of technique in more general way. For example some other techniques are based on RSM sampling. I think two kinds should suffice.

Is there any other important or popular kind of technique which I should include or I am not aware of?

**Tags:** real-time, global-illumination


---

## 2 answers

### Answer by username_1 on 2017-01-11. Score: 3

In this vein a bit, Killzone renders one bounce reflections, but uses temporal anti aliasing to combine the last frame with the current frame.

In practice, this means you get MANY bounce reflections, since in effect each frame rendered catches the previous number of reflections as the new reflection - adding one each frame.

Not quite GI, but i wouldn't be surprised if people pursue that direction more in the future, if they aren't already working on it.

The temporal anti aliasing used normally lets you get more samples with subsequent frames, but used in this way, it also gives you higher bounce counts with subsequent frames.

I could totally see doing path tracing type path following, choosing reflection or BSDF rays based on fresnel equations for instance, and having the temporal AA combine it over time.

> **Comments:**
> **username_0**: This is interesting because TAA between frames is cheap but hard to implement.  I used temporal blending but on voxel grid to get smooth light movement which is quite easy to implement in this case.  
> **username_0**: I know the usage of TAA on shadows in screen space or volumetric fog rendering but never thought it can be applied to GI in that way.  
> **username_1**: Remember me if you publish a famous paper (;  

---

### Answer by username_2 on 2017-01-11. Score: 1

Many of the real-time GI solutions have some precomputation involved, which enable real-time lighting changes but limit the geometry changes to be non-real time. E.g. in cone tracing you mentioned there's the non-real time scene voxelization process. Here are few such real-time solutions that come to mind in addition to the ones you listed.

1. Light probes
2. Screen-Space GI
3. Virtual Point Lights
4. Precomputed Radiance Transfer

It's also the question how you define real-time: What's FPS, on what kind of hardware and for what kind of scene complexity.

> **Comments:**
> **username_0**: I made an edit. Yes voxelization can be also done as precomputation. But it seems to have nice performance also in real time as I implemented it for occlusion purporses in RSM based GI. I know that precomputation is crucial for performance but it is just a idea of thesis  - study of "real timeness", I mean calculated each frame. A screen space GI sounds like oxymoron.  
> **username_0**: Scene complexity - actually just one model probably sponza. Same complexity to get comparable results.  
> **username_2**: Performance depends on the scene complexity you need to voxelize per frame, if you can call it real time. You could also call path tracing real time technique given simple enough scene and/or beefy enough hardware, and poor enough quality (:  

---

