My little renderer back
Board: Board index ‹ Ray tracing ‹ Visuals
(L) [2008/10/11] [Darnal] [ My little renderer] Wayback!Hi all
Well being inspired by Thammuz and his [LINK http://ompf.org/forum/viewtopic.php?f=6&t=1031 Lucifer] I'm puting up one or two images from the renderer I'm currently using for my PhD. Initially I started out using [LINK http://code.sci.utah.edu/Manta/index.php/Main_Page Manta] but got to a point where I need something that I could comfortably tear to pieces and having written a few renderers before this one figured I'd give it a shot.
The renderer is very modest using a embarrisngly slow BVH (given the numbers I see thrown around on OMPF nearly daily) and only mono-tracing with no real heavy SIMD optimisation short of making sure that everything is aligned and having some old TBP code for the AABB tests. I've got a few BRDFs such as Lafortune and Ward along with all the other usual suspects when it comes to materials such as glass, mirror, diffuse etc. I've managed to get away with enough to have "real-time" variants of all sorts to play with for my PhD as well as a path tracer all rolled into one framework. But regretably the real-time GI work I've been doing is as yet unpublished so I'll have to show off some of my path tracing test images here and hopefully once the work does get excepted I'll be able to post some images and videos.
Below are just a sample of 4 images I've done recently with hopefully more to come, I include thumbnails with a click-through as I didn't want to spam the post with huge images [SMILEY :)]
[IMG #1 Image]
[IMG #2 Image]
[IMG #3 Image]
[IMG #4 Image]
Given I don't post often I just wanted to send thanks to our gracious overlord TBP for running this place [SMILEY :)] As well as give thanks to all the people who post on here regularly and have provided me insight and ideas .. those that pop to mind are Toxie, Dr_Eck, beason, Phantom, fpsunflower and bouliiii but there are many others .. I'm primarily a lurker as I don't feel I'm as yet quite up to scratch with my knowledge but if I ever get there I can hopefully give something back.
While I'm added wanted to also congratulate greenhybrid as the new Picogen pics are looking wicked and Phantom for all the new Aurana stuff [SMILEY :D]
Also while I'm getting all nostalgic I'm gonna thank lycium (who has been rather quiet recently, I imagine due to work commitments) as he is in essence responsible for all this work as it was him who got me interested in graphics in the first place in high school, cheers mate  [SMILEY :mrgreen:]
[IMG #1]:
![[IMG:#0]](images/2637fb53c3f31415e7b4ae0418be17dc19a98c7851bdcf907dac73ad6cbe3016.jpg)
[IMG #2]:
![[IMG:#1]](images/4bb62ccf4918394e5e681ef1a19c9e3fd0f073adb50ce8bb6d33b8b2182db985.jpg)
[IMG #3]:
![[IMG:#2]](images/84183706195020cb7117b3587111a0294a55bf03f0c96f02a677c3958a873db8.jpg)
[IMG #4]:
(L) [2008/10/12] [Vilem Otte] [ My little renderer] Wayback!Hello,
can you post some information about tracing those scenes ... how long did it take, how many polys, how much ray/tri collisions did you done per second, what's your BVH build time, etc.?
(L) [2008/10/13] [beason] [ My little renderer] Wayback!Sweet images! [SMILEY :o] Especially the race car, that really shows off your nice BRDF support (the grass one also).
I'm a fan of your images here too: [LINK http://darnal.deviantart.com/gallery/] (hooray for forum search [SMILEY :)])
Vilem there are some stats on the race car page:
 >> Technical details:
2500 spp (overkill most likely)
52min rendering time on the cluster (23 quad-core opterons)
Nice cluster by the way [SMILEY :mrgreen:]
Darnal, what are you using for threading? And what are those grass blades made of?
Good luck on your thesis!
(L) [2008/10/13] [Thammuz] [ My little renderer] Wayback!Very nice renders indeed! I love the car picture [SMILEY :)] By the way, what sort of lightprobe did you use, long-lat or spherical? And what resolution? it's really crisp in the background.
And yes, I'd love to get my hands on a cluster too [SMILEY :(]
Cheers
(L) [2008/10/13] [Darnal] [ My little renderer] Wayback!Hi all
Well it seems there are lots of questions, and I'll do my best to answer most of them .. then ones that I can't answer straight away I'll get numbers for. To be honest my BVH build is just shocking really as it happens on one thread and since I've made it I've never had a reason to update it so in terms of performance it really is shockingly bad compared to some of the numbers thrown about here  [SMILEY :shock:]
 >> can you post some information about tracing those scenes ... how long did it take, how many polys, how much ray/tri collisions did you done per second, what's your BVH build time, etc.?
I don't regrettably don't have ray/tri collisions done per second but I will check those for you once things quiet done here.
Cornell box:
48.839 polygons (the two spheres are made of triangles)
BVH build: < 1 sec (sorry don't have exact timings)
Graphics Trio:
~1.8 million polygons
BVH build: 38 seconds .. yes my BVH builder is slow  [SMILEY :oops:]
Greeble:
~650k polygons
BVH build: 19 seconds
Racer:
69,821 polygons
BVH build: 1.5 seconds
 >> Darnal, what are you using for threading? And what are those grass blades made of?
Hey beason, well for threading I'm just using boost threads with a very naive non-balanced breakdown of the rendering load. Its not even tile-based for now but will be as soon as I have some time to throw that in .. its on the TO-DO list just rather far down [SMILEY ;)] In terms of the grass its about ~750k worth of polygons each blade being made up of up to 13 polys. This scene was really a stress test for the renderer to see if things would break, thankfully they didn't and it even managed to produce a pretty picture [SMILEY :)]
 >> Very nice renders indeed! I love the car picture  By the way, what sort of lightprobe did you use, long-lat or spherical? And what resolution? it's really crisp in the background.
Thammuz the lightprobe is the Pisa one (long-lat format at 4096x2038) from [LINK http://gl.ict.usc.edu/Data/HighResProbes/]. I use it because it has a nice contrast in lighting on each side .. as you can see by my deviantart gallery I tend to use it far too often [SMILEY ;)]
Anyway hope that at least kind of answers all those questions.
(L) [2008/10/13] [beason] [ My little renderer] Wayback!Thanks for the link. Those light probes look like they are a lot sharper than the other Debevec spherical coord ones I've been using.
(L) [2008/10/14] [phresnel] [ My little renderer] Wayback!Formidable images, Darnal [SMILEY :)]
Glad you're still alive and around [SMILEY :D]
(L) [2008/10/16] [Darnal] [ My little renderer] Wayback!Was just testing the addition of a directional lighting to the renderer so I figured I'd share the results, also found an old Sibenik render so throwign that in too for good measure [SMILEY ;)]
[IMG #1 Image]
[IMG #2 Image]
[IMG #1]:
![[IMG:#0]](images/31980a24b310ac8310f5daa391e6258d652fcc06948409d640f34902a064ef58.jpg)
[IMG #2]:
(L) [2008/10/16] [madd] [ My little renderer] Wayback!Nice renders! How long for sponza?
btw, I think you need to add v = 1.f - v somewhere..  [SMILEY :)]
(L) [2008/10/16] [Darnal] [ My little renderer] Wayback!Ye I saw that too but I put it up anyway till I re-render, the lighting looked nice enough  [SMILEY :D] Its actually the 3dsmax exporter that did odd things .. go figure [SMILEY ;)] Sponza was ~30min on cluster at 2000 spp.
(L) [2008/10/16] [Darnal] [ My little renderer] Wayback!Umm for those who actually use TGAs I got a question, seems I had TGAs that displayed fine but when I loaded them into my renderer they came out upside-down [SMILEY :shock:] After converting to tiff and saving back to TGA they behaved correctly ... anybody else come across this before?
(L) [2008/10/16] [JohnTsakok] [ My little renderer] Wayback!love the lighting.. should try to use some normal maps on the bricks [SMILEY :)]  or just up the poly count
(L) [2008/10/17] [Darnal] [ My little renderer] Wayback!JohnTsakok, your wish is my command .. kinda [SMILEY ;)] No normal maps but I did add bump-mapping to the renderer and re-rendered, if you have a look at the sponza image again you'll see the new bump-mapping in effect  [SMILEY :)]
(L) [2008/10/17] [jmX] [ My little renderer] Wayback!>> Darnal wrote:Umm for those who actually use TGAs I got a question, seems I had TGAs that displayed fine but when I loaded them into my renderer they came out upside-down  After converting to tiff and saving back to TGA they behaved correctly ... anybody else come across this before?
Some of the bits in the TGA header tell you what the horizontal and vertical orientations are of the TGA.  Some are upside down, some aren't.  Depends on what program saved it out I suppose.
(L) [2008/10/17] [beason] [ My little renderer] Wayback!>> Darnal wrote:JohnTsakok, your wish is my command .. kinda  No normal maps but I did add bump-mapping to the renderer and re-rendered, if you have a look at the sponza image again you'll see the new bump-mapping in effect  
You added bump mapping in 4 hours? God damn, that took me like a week to get working properly. [SMILEY :\]
Anyway, nice job. Looks good [SMILEY :)]
edit: normal->bump
(L) [2008/10/17] [cignox1] [ My little renderer] Wayback!>> jmX wrote:Darnal wrote:Umm for those who actually use TGAs I got a question, seems I had TGAs that displayed fine but when I loaded them into my renderer they came out upside-down  After converting to tiff and saving back to TGA they behaved correctly ... anybody else come across this before?
Some of the bits in the TGA header tell you what the horizontal and vertical orientations are of the TGA.  Some are upside down, some aren't.  Depends on what program saved it out I suppose.
Gimp lets you choose how to save your TGA. For example, if you use the ATI tool to generate normal maps from bump map, you cannot use some TGA (don't remember wich ones) if you don't flip them first.
By the way, very nice renders, and with normal mapping your images will become even better!
(L) [2008/10/17] [phresnel] [ My little renderer] Wayback!>> beason wrote:Darnal wrote:JohnTsakok, your wish is my command .. kinda  No normal maps but I did add bump-mapping to the renderer and re-rendered, if you have a look at the sponza image again you'll see the new bump-mapping in effect  
You added bump mapping in 4 hours?
good job [SMILEY :)]
 >> Anyway, nice job. Looks good
where are they? wanna see!
(L) [2008/10/17] [JohnTsakok] [ My little renderer] Wayback!very cool [SMILEY :)]  lookin good.
(L) [2008/10/17] [beason] [ My little renderer] Wayback!>> greenhybrid wrote:where are they? wanna see!
greenhybrid, click the sponza image again. It has bump mapping now.
(L) [2008/10/18] [phresnel] [ My little renderer] Wayback!>> beason wrote:greenhybrid wrote:where are they? wanna see!
greenhybrid, click the sponza image again. It has bump mapping now.
Ah, yeah, thx Beason!  [SMILEY :oops:]
I see it, and it looks very pretty [SMILEY :)]
And Darnal, 4hrs is awesome [SMILEY :)]
(L) [2008/10/18] [beason] [ My little renderer] Wayback!Yes, good show. Next up, add MLT. Clock is ticking...  [SMILEY :P]
(L) [2008/10/18] [Darnal] [ My little renderer] Wayback!>> beason wrote:Yes, good show. Next up, add MLT. Clock is ticking...  
Well that is on the list beason, but first bi-directional  [SMILEY :D] MLT sits somwhere on the list above "Conquer the entire world" and below items such as "Buy a big tropical island" and "Setup Renderering Headquarters" [SMILEY ;)]
(L) [2008/10/20] [phresnel] [ My little renderer] Wayback!<voice of the godfather> I think you don't understand, young Darnal, he said </voice of the godfather>
 >> beason wrote:Clock is ticking...  
*whooosh ... runs*
(L) [2008/10/28] [Darnal] [ My little renderer] Wayback!Found an old model of mine lying around when I was still expermenting with 3dsmax and generating 3d fractals via scripts. Its one of my first very simple attempts so I threw it into the renderer, added a nice HDR and some subtle DOF and got an image I'm really happy with:
[IMG #1 Image]
There is just something about lots of coloured glass  [SMILEY :D]
Stats:
14208 polys
4000 spp
914 seconds to render .. on the cluster [SMILEY ;)]
[IMG #1]:
(L) [2008/10/28] [beason] [ My little renderer] Wayback!Very nice. Your DoF blur is very smooth, I guess that is the 900spp. [SMILEY :)]
Maybe I missed it.. but can you explain your tone mapping and are you doing any filtering on the cornell box? Looks like median blur or maybe jpeg compression.
(L) [2008/10/28] [ingenious] [ My little renderer] Wayback!>> Darnal wrote:Found an old model of mine lying around when I was still expermenting with 3dsmax and generating 3d fractals via scripts. Its one of my first very simple attempts so I threw it into the renderer, added a nice HDR and some subtle DOF and got an image I'm really happy with:
...
There is just something about lots of coloured glass   
Stats:
14208 polys
4000 spp
914 seconds to render .. on the cluster
Beautiful... sometimes I wish to abandon RTRT and start creating nice images as a profession [SMILEY :)] After all, images like these have been the motivation for all of us to engage in ray tracing, right?
(L) [2008/10/28] [Darnal] [ My little renderer] Wayback!>> beason wrote:Very nice. Your DoF blur is very smooth, I guess that is the 900spp.
Maybe I missed it.. but can you explain your tone mapping and are you doing any filtering on the cornell box? Looks like median blur or maybe jpeg compression.
Hey beason, nope you didn't miss anything I don't do any post-processing other than a gamma adjustment, there is no tone-mapping or filtering although I see what you mean by the cornell box looking a little filtered .. I probably borked the jpeg saving when I did it thanks for pointing it out I'll double check it.
(L) [2008/10/29] [beason] [ My little renderer] Wayback!Thanks, was just curious why the noise was different from mine. How are you limiting your path recursion, just curious? Thanks for any info.
(L) [2008/10/29] [Darnal] [ My little renderer] Wayback!>> beason wrote:Thanks, was just curious why the noise was different from mine. How are you limiting your path recursion, just curious? Thanks for any info.
Hey thats about 10-50k spp for the cornell box [SMILEY :cry:] the issue is with the glass / mirror ball is as I'm sure you know those nuked pixels from paths that happen to hit the specular object and then then light directly .. if you have figured out a way to get rid of those by any chance without making the solution biased any info back would be appreciated too [SMILEY :)]
(L) [2008/10/29] [Darnal] [ My little renderer] Wayback!Well today we need to take my precious cluster to pieces to move it across campus  [SMILEY :cry:] and then once it's on the other side gonna put some more hardware into each of the nodes. Hopefully it will survive the move and upgrade  [SMILEY [-o<]
That aside I decided to abuse the cluster one more time before it got moved and rendered out a quick 10s 600 frame animation. There is a bit of noise so I apologise but I was under time constraints [SMILEY ;)]
[IMG #1 Image]
Each frame is 1000spp, 800x600 and took 27sec to render on average (not counting the first frame start-up costs).
[IMG #1]:
(L) [2008/10/29] [orly] [ My little renderer] Wayback!Very nice indeed.  Just to get an idea of the amount of computation involved to path trace with this level of quality, what's the rough dimensions of your cluster?
(L) [2008/10/29] [Darnal] [ My little renderer] Wayback!Hey, the cluster was, till it gets put back together at least, 25 x dual dual-core AMD 2222s running at 3.0GHz with 4 gigs of RAM each. Must be noted that the horrendous MPI code is very basic + there is no load balancing to speak of  [SMILEY :?]
(L) [2008/10/30] [Oatmeal] [ My little renderer] Wayback!Wow... very impressive video.  The subtle effects of the glass and the environment map's effect on the scene are much more noticeable when it is in motion.  By the way, would you mind sharing where you got the environment map?
(L) [2008/11/03] [Screeb] [ My little renderer] Wayback!Darnal, just so you know, your Cornell Box's light is the wrong colour. Apologies if that was intentional. It's just that I see far too many Cornell Boxes with white lights, and I just assume the person didn't realise the light shouldn't be white (as one might think by looking at the original's light box). The light's colour data is of course on the Cornell Box page.
(L) [2008/11/03] [beason] [ My little renderer] Wayback!There are many variants of the Cornell box. For a non-spectral renderer, white is kinda the norm.
[LINK http://graphics.ucsd.edu/~henrik/images/cbox.html]
(L) [2008/11/03] [Darnal] [ My little renderer] Wayback!>> Oatmeal wrote:Wow... very impressive video.  The subtle effects of the glass and the environment map's effect on the scene are much more noticeable when it is in motion.  By the way, would you mind sharing where you got the environment map?
It's a free for-use-anywhere light probe I pulled from the internet, if you are lacking in HDR light probes then [LINK http://www.c4dcafe.com/ipb/index.php?showtopic=6790] is a great page I found with lots of links. If you want that specific one just shout.
(L) [2008/11/04] [Screeb] [ My little renderer] Wayback!>> beason wrote:There are many variants of the Cornell box. For a non-spectral renderer, white is kinda the norm.
[LINK http://graphics.ucsd.edu/~henrik/images/cbox.html]
Mine's not a spectral renderer, and I use the RGB approximation of Cornell's wavelength values, and it works great, so I don't know why white would be used for non-spectral renderers over the real colour. Oh well, if it's intentional, then it's all good. Just thought I'd let him know (for the longest time I couldn't figure out why I was getting the wrong colours in mine. I put it down to spectral vs RGB differences + other differences until I realised the light wasn't actually white).
(L) [2008/11/04] [beason] [ My little renderer] Wayback!>> Screeb wrote:Mine's not a spectral renderer, and I use the RGB approximation of Cornell's wavelength values, and it works great, so I don't know why white would be used for non-spectral renderers over the real colour. Oh well, if it's intentional, then it's all good. Just thought I'd let him know (for the longest time I couldn't figure out why I was getting the wrong colours in mine. I put it down to spectral vs RGB differences + other differences until I realised the light wasn't actually white).
Good point. I am way biased anyway, having never done the spectral (or even RGB approximation) of the original Cornell box  [SMILEY 8-[]
back