SPPM renderer (CPU-only)

Discussion related to the implementation of new features & algorithms to the Core Engine.

Moderators: jromang, tomb, zcott, coordinators

Re: SPPM renderer (CPU-only)

Postby Chawl » Fri Mar 23, 2012 7:57 am

Tx guibou. Here is a quick demo of the short solution. Direct lighting bursts contrast and effects noise distribution as expected, and "0" has issues with some reflections (speculars?), but if handled with care, this method may indeed be usable.

Camera tonemapper is Autolinear, clamping is Preserve Luminosity, and filter is Gaussian for all shots.

kuhnya.Scene.glossy.0.dls.png
SPPM + Direct Lighting, Glossy threshold=0

kuhnya.Scene.mlt.png
MLT (unbiased preset)

kuhnya.Scene.dls.png
Direct Lighting only
Chawl
 
Posts: 71
Joined: Fri May 14, 2010 7:52 pm
Location: Ankara, Turkey

Re: SPPM renderer (CPU-only)

Postby neo2068 » Sun Mar 25, 2012 1:31 am

On my system (windows 7 x64) luxrender crashes with sppm and direct lighting enabled. I tested the latest version (4dcc7b73704b) and the weekly build from 04.03.12, too.
i7 860, 16 GB RAM, NVIDIA Geforce GTX 560 + GTX 460, Windows 7 64bit, Blender 2.66
neo2068
Developer
 
Posts: 485
Joined: Sun May 03, 2009 2:11 am
Location: Germany

Re: SPPM renderer (CPU-only)

Postby J the Ninja » Sun Mar 25, 2012 2:41 am

neo2068 wrote:On my system (windows 7 x64) luxrender crashes with sppm and direct lighting enabled. I tested the latest version (4dcc7b73704b) and the weekly build from 04.03.12, too.


You have to select "random" as your sampler with direct light sampling, or else it will crash. No clue why, but that's what happens.
-Jason

Material DB Admin
User avatar
J the Ninja
Developer
 
Posts: 2211
Joined: Wed May 19, 2010 9:54 pm
Location: Portland, USA

Re: SPPM renderer (CPU-only)

Postby neo2068 » Sun Mar 25, 2012 3:16 am

J the Ninja wrote:
neo2068 wrote:On my system (windows 7 x64) luxrender crashes with sppm and direct lighting enabled. I tested the latest version (4dcc7b73704b) and the weekly build from 04.03.12, too.


You have to select "random" as your sampler with direct light sampling, or else it will crash. No clue why, but that's what happens.

Thanks, that works.
i7 860, 16 GB RAM, NVIDIA Geforce GTX 560 + GTX 460, Windows 7 64bit, Blender 2.66
neo2068
Developer
 
Posts: 485
Joined: Sun May 03, 2009 2:11 am
Location: Germany

Re: SPPM renderer (CPU-only)

Postby guibou » Sun Mar 25, 2012 7:11 am

J the Ninja wrote:
neo2068 wrote:On my system (windows 7 x64) luxrender crashes with sppm and direct lighting enabled. I tested the latest version (4dcc7b73704b) and the weekly build from 04.03.12, too.


You have to select "random" as your sampler with direct light sampling, or else it will crash. No clue why, but that's what happens.


One day I'll have to hard code the fact that a sampler other than random cannot be used with SPPM...
guibou
Developer
 
Posts: 269
Joined: Fri Dec 04, 2009 10:14 am

Re: SPPM renderer (CPU-only)

Postby guibou » Wed Mar 28, 2012 11:30 am

I pushed some commit which can be of interest

Code: Select all
changeset:   3615:dd2b744ae73d
summary:     SPPM: fix direct light sampling with passthrough material

changeset:   3617:193c4e110120
summary:     SPPM: fix direct light sampling issue with arealigh


Those are bugfixes of direct lighting. Normally directlighting in SPPM should now behave correctly (not creating light if there is architectural glass or LOT of fireflies removed)... (BinaryCortex: you where right, I was wrong, SPPM was bugged, I'm ashamed ;)

Code: Select all
changeset:   3616:d6313258d504
summary:     SPPM: remove the glossy threshold behavior

changeset:   3619:5209b387c31b
summary:     SPPM: add one parameter *storeglossy*


Ok, you will kill me. I removed the glossythreshold. It is bugged, not mathematically correct, and bugged. Normally with default settings SPPM is able to render anything correctly (except if there is path with only glossy surfaces and point light).

To improve the rendering of glossy surface you can:

- enable direct lighting in SPPM.
- Use glossyCoating with matte base material, it should work like the previous glossythreshold, but without bugs ;)

For those who still have issues with glossy, or good reasons, I added a setting "storeglossy" which will store hitpoints on glossy. Use it with caution because It may get a lot of ugliness in your renders, but it will gives you correct result (in more time)

Code: Select all
changeset:   3620:aa00a3f165cc
summary:     SPPM: change default values


I changed two default behavior in SPPM:

- direct lighting is now ON by default (Any reason to switch it off is a bug and should be reported so we can fix it)
- PPM proba is now ON by default (I'm planning of removing the old heuristic soon, so please, give feedbacks)
guibou
Developer
 
Posts: 269
Joined: Fri Dec 04, 2009 10:14 am

Re: SPPM renderer (CPU-only)

Postby Chawl » Wed Mar 28, 2012 1:45 pm

Whoa :o This is really a milestone :)

Tx for all guibou, so let's binarize some code.

Yet VS2008 doesn't like a declaration and whines a bit:

Code: Select all
1>c:\***\lux\renderers\sppm\hitpoints.h(36) : warning C4099: 'lux::PhotonData' : type name first seen using 'class' now seen using 'struct'
1>        c:\***\lux\renderers\sppm\lookupaccel.h(39) : see declaration of 'lux::PhotonData'
Attachments
luxrender_0ae10cb7336d_default_windows_64bit.7z
Built on VS2008 SP1, Windows 7 64bit
(5.44 MiB) Downloaded 5 times
Chawl
 
Posts: 71
Joined: Fri May 14, 2010 7:52 pm
Location: Ankara, Turkey

Re: SPPM renderer (CPU-only)

Postby Chawl » Wed Mar 28, 2012 3:55 pm

Newest Luxblend (68aae6e43d40) is broken, "storeglossy" parameter should not be float but boolean.
For now, you can use my corrected one by the way.
Attachments
Luxblend.7z
Luxblend with "storeglossy"
(203.01 KiB) Downloaded 3 times
Last edited by Chawl on Wed Mar 28, 2012 3:59 pm, edited 2 times in total.
Chawl
 
Posts: 71
Joined: Fri May 14, 2010 7:52 pm
Location: Ankara, Turkey

Re: SPPM renderer (CPU-only)

Postby J the Ninja » Wed Mar 28, 2012 3:56 pm

Chawl wrote:Newest luxblend (68aae6e43d40) is broken, "storeglossy" parameter should not be float but boolean.
For now, you can use my corrected one by the way.


EDIT: Oops, seems I got a bit lazy with the find and replace, forgot to fix it in the export block, official version should be fixed now.
-Jason

Material DB Admin
User avatar
J the Ninja
Developer
 
Posts: 2211
Joined: Wed May 19, 2010 9:54 pm
Location: Portland, USA

Re: SPPM renderer (CPU-only)

Postby Chawl » Wed Mar 28, 2012 4:03 pm

Wow, lightening fast :)
Tx.
Chawl
 
Posts: 71
Joined: Fri May 14, 2010 7:52 pm
Location: Ankara, Turkey

PreviousNext

Return to Architecture & Design

Who is online

Users browsing this forum: Google Feedfetcher and 0 guests