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?


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.

  • $\begingroup$ 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. $\endgroup$
    – narthex
    Jan 11 '17 at 21:17
  • $\begingroup$ 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. $\endgroup$
    – narthex
    Jan 11 '17 at 21:29
  • $\begingroup$ Remember me if you publish a famous paper (; $\endgroup$
    – Alan Wolfe
    Jan 12 '17 at 3:16

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.

  • $\begingroup$ 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. $\endgroup$
    – narthex
    Jan 11 '17 at 15:21
  • $\begingroup$ Scene complexity - actually just one model probably sponza. Same complexity to get comparable results. $\endgroup$
    – narthex
    Jan 11 '17 at 15:26
  • $\begingroup$ 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 (: $\endgroup$
    – JarkkoL
    Jan 11 '17 at 15:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.