![]() |
| [[ Home | Forums | 3D Engines Database | Wiki | Articles/Tutorials | Game Dev Jobs | IRC Chat Network | Contact Us ]] |
|
|
#1 |
|
Posts: n/a
|
![]() Description Hello, So again after I while I'm posting some image and some info about my progress in graphics research of hybrid graphics rendering (and implementation of it in my game engine). Okay this time no scene , but just well known Cornell box (If you're bored by global illumination stuff, then don't read this - GI heavy related stuff). So generally this is focused on GI. Okay about principle - it's little similar to instant radiosity, basically I use ray tracer to shoot rays and calculate VPLs, I do this with several bounces. Then comes the part of lighting the model where I lit model with those VPLs. Whole principle is slightly complicated (mainly due to optimisations), but whole solution is very fast and fully dynamic. I slightly slowed down scene with adding recursive reflections on spheres (with hybrid rendering it's very simple and pretty fast). Anyway I sample VPLs just for color bleeding and indirect illumination, ambient occlusion is done with help of few rays very quickly (just google to net and you will find lots of papers on this topic). So here is video of the solution in action - http://www.youtube.com/watch?v=NA8BOPRhuxw. I hope to hear some commentaries and opinions from you (ask about algorithm if you wish to know more about it - i might even add some pseudo code here) - thinking about writing a paper onto this (or maybe some blog+papers on my website on GI topic generally). And due to one guy I even got idea to try interactive photon mapping (which isn't so different from this) - just need to cast rays as in this technique (but reflect/refract them ... not just compute VPLs) and compute photon map from this (instead of VPLs), and then somehow to do final gathering (hope to come with some cool idea how to final gather enough quick to be interactive). *btw. VPL - Virtual point light (though I hope you already know this) |
|
|
|
#2 |
|
New Member
Join Date: Aug 2007
Posts: 2
|
Looks very nice! Do you have some more information on your hybrid renderer? I'm quite interested in this topic.
A few other dumb questions: - What parts of your technique run on the CPU (if any)? - The solution seems very smooth, are you using some sort of importance/interleaved sampling or just many VPLs? - The objects in the video are moving quite slowly, is this because you are using some incremental approach to update VPLs? Cheers, Karsten |
|
|
|
|
|
#3 | |
|
Senior Member
Join Date: Aug 2004
Location: Århus, Denmark
Posts: 688
|
Yeah, looks good man, but why are there no reflections on the left sphere?
Quote:
![]()
___________________________________________
"Stupid bug! You go squish now!!" - Homer Simpson |
|
|
|
|
|
|
#4 | |||
|
Member
Join Date: Nov 2007
Location: Czech Republic
Posts: 69
|
#macnihilist - Thanks, to the matter of hybrid renderers - I'm preparing some article (and maybe if I will continue in it, it would grow to article serie) on them + sample applications + maybe even some sample code, although it sometimes get really tricky and brain heavy (one must know something about rasterization and raytracing + lots about multi pass rendering (because you can say that one pass is ray tracing and another rasterization (which can be mutlipass too).
Quote:
Quote:
Quote:
#Kenneth Gorking Thanks, I think I did some wrong normal calculation at the edge of sphere - strange think it happens just for reflections (so probably I made a glitch while making fast reflection code ... voila, I think I've got another glitch from Cornell box), anyway thanks for giving info about it (I missed it, really I was too focused on GI and my eyes haven't seen wrong reflection). Although there can be seen reflection (but strange, as like the sphere was scaled in Z (depth) direction). Thanks for the link on paper, I haven't read it (but it's one of the first links in my TODO list) - I started on some photon mapping in last several hours (I took photon map generation code from my non-real-time ray tracer, so it was quite simple ... okay I made few glitches while adapting it a little for real time performance, but that was as always an accident), though final gather was quite a big challange (still unsolved) - my non real time approach on this is just too slow, so I decided to try something else - read more here: http://www.otte.cz/devblog/vilemotte...y090805-190644, although I will definitely look into the paper, maybe it has some tips about final gathering of them (some more clever way that I made up in few hours ... but I may think of something much better in some time too). So again, thanks for the link. Anyway here are few glitches on my GI solution instant-radiosity-like one. http://www.otte.cz/devblog/vilemotte...y090805-014733 |
|||
|
|
|
|
|
#5 |
|
Senior Member
Join Date: Sep 2005
Location: .nl
Posts: 504
|
Nice! But just to summarize (but not to neglect your work): it is instant radiosity + ao + shadows?
|
|
|
|
|
|
#6 |
|
Member
Join Date: Nov 2007
Location: Czech Republic
Posts: 69
|
Basically yes It has principle pretty much as Instant radiosity (although not exactly the same, but very similar) + Ambient Occlusion (tried reaching the best quality possible with current hardware) + shadows (not the best one, I have used several times better algorithm on them - as soon as I will have some time to write I might write something about shadows too).
|
|
|
|
![]() |
| Thread Tools | Search this Thread |
| Display Modes | |
|