PDA

View Full Version : GPU / CPU Denoiser Test in LW 2019



Exception
02-24-2019, 12:08 AM
HI all,

I didn't expect much from the new GPU denoiser that was added in 2019, since all the denoisers LW has had (and most other tools I know) have been pretty dismal to the point of completely useless. But I thought to give it a try when I read up that it was based on Deep Learning and AI instead of the traditional approach. And boy, does it matter.

Summary conclusion of result:

GPU Denoiser: Fan bleeding tastic. In my test I could cut render times by 75% and have almost exactly the same results as trying to solve noise with denoiser off. This means you can assign sample calculations to other areas such as AA instead, or simple, just sit there with the win of your 75% lower render time.

CPU Denoiser: Still unbearable, and pretty much useless. Also its convoluted use by having to turn it on in two different places in the UI is aggravating.



No Denoiser

https://forums.newtek.com/attachment.php?attachmentid=144219&d=1550992032


GPU Denoiser

https://forums.newtek.com/attachment.php?attachmentid=144220


CPU Denoiser

https://forums.newtek.com/attachment.php?attachmentid=144221


Denoise using extra samples only
Just for comparison's sake, below is a render with an attempt to denoise using extra samples to an acceptable level. This bumped the MC samples to 3 from 1, and the AA to 6-26 (instead of 4-8). Render time of this was 12m40 seconds. Render time of the above was 3m05s, including denoise for both GPU and CPU. That is a more than 75% gain, and the result is even less noise.

https://forums.newtek.com/attachment.php?attachmentid=144222

MarcusM
02-24-2019, 04:55 AM
In my opinion user should have option to turn off GPU denoiser on chosen buffer, especially on raw rgb (with result in final render).
Examples with GPU denoiser OFF/ON:

Exception
02-24-2019, 06:03 AM
In my opinion user should have option to turn off GPU denoiser on chosen buffer, especially on raw rgb (with result in final render).
Examples with GPU denoiser OFF/ON:

Yes that may really help. I also noticed small details disappearing. That would also leave the edge shaded render lines sharp. Have you sent that in as a feature request or bug report?
Still though, amazing results.

Cageman
02-24-2019, 06:33 PM
In my opinion user should have option to turn off GPU denoiser on chosen buffer, especially on raw rgb (with result in final render).
Examples with GPU denoiser OFF/ON:

It works like that allready?

- - - Updated - - -


In my opinion user should have option to turn off GPU denoiser on chosen buffer, especially on raw rgb (with result in final render).
Examples with GPU denoiser OFF/ON:

It works like that allready?

MarcusM
02-25-2019, 03:52 AM
Yes that may really help. I also noticed small details disappearing. That would also leave the edge shaded render lines sharp. Have you sent that in as a feature request or bug report?
Still though, amazing results.

I did not send feature request. For sure developers know about that things and maybe this is not possible. Your CPU denoiser test have propably turned off nice option Poly Normal Tolerance.
Image filter plugin PSD Export should have all new buffers built in and then in PS user could use Surface Blur tool :) I made test with PSD Export and it export only linear color, not sRGB. No matter what Layout color space I choose. Is it a bug?

BTW I would like to see more things for game dev and there is many things to add in that field.


It works like that allready?

This is just small test how GPU denoiser treat details on texture.

Tobian
02-25-2019, 08:52 AM
In my opinion user should have option to turn off GPU denoiser on chosen buffer, especially on raw rgb (with result in final render).
Examples with GPU denoiser OFF/ON:

To do this, we'd need to have internal compositing in LW, Currently the buffers system works by performing the render, and extracting the buffers from it, not the other way round. Not that it wouldn't be cool or desirable, but that's quite a lot of extra work.

gar26lw
02-25-2019, 11:12 AM
be cool if the densoiser could be called from a node, then dpont kit could be used to filter per render channel.

of course, having a mask there that filtered all but specified would be the go.

chat elsewhere about the merits of inversion within a node. perfect example.

i think node based render pass setup would be most intuitive to the end user, too.

oh, here we go, something similar mentioned here https://forums.newtek.com/showthread.php?146003-Gerardo-Estrada-DPont-Denoiser

madno
02-25-2019, 11:14 AM
An evening mood test with pure BF GI and the new LW 2019 sky.
In this case the denoiser works nice for uniform areas, but it has a hard time to keep the details.
The attached render took 2h someting on a dual Xeon 32 thread machine and used 400 BF samples. Unfortunately the details on the plank tectures and the lower part of the curtains are still gone in some areas (zoom in).
But, like I understood it, indoor GI is always a challange not only in LW.

(had not enabled Despike - maybe that would have cured the fireflies).

144234

144235

erikals
02-25-2019, 02:58 PM
for DeNoise in 2019, also see this Gerardo thread >
https://forums.newtek.com/showthread.php?71751-Extra-Buffer-nodes/page53&p=1560511#post1560511

rustythe1
02-26-2019, 11:52 AM
An evening mood test with pure BF GI and the new LW 2019 sky.
In this case the denoiser works nice for uniform areas, but it has a hard time to keep the details.
The attached render took 2h someting on a dual Xeon 32 thread machine and used 400 BF samples. Unfortunately the details on the plank tectures and the lower part of the curtains are still gone in some areas (zoom in).
But, like I understood it, indoor GI is always a challange not only in LW.

(had not enabled Despike - maybe that would have cured the fireflies).

144234

144235

you might want to purchase the rebilhill tutorials, one of the courses is setting up this scene to render in a few mins, his tutorials will teach you a lot about rendering in general, lots of hidden tips throughout,

- - - Updated - - -


An evening mood test with pure BF GI and the new LW 2019 sky.
In this case the denoiser works nice for uniform areas, but it has a hard time to keep the details.
The attached render took 2h someting on a dual Xeon 32 thread machine and used 400 BF samples. Unfortunately the details on the plank tectures and the lower part of the curtains are still gone in some areas (zoom in).
But, like I understood it, indoor GI is always a challange not only in LW.

(had not enabled Despike - maybe that would have cured the fireflies).

144234

144235

you might want to purchase the rebilhill tutorials, one of the courses is setting up this scene to render in a few mins, his tutorials will teach you a lot about rendering in general, lots of hidden tips throughout,

madno
02-26-2019, 02:04 PM
you might want to purchase the rebilhill tutorials, one of the courses is setting up this scene to render in a few mins, his tutorials will teach you a lot about rendering in general, lots of hidden tips throughout,


Do you have an example render of this scene (was posted some time ago to download) rendered in a few miutes? I am in the stage of finding other solutions but would be happy to get a hint that LW can do it.

RebelHill
02-26-2019, 03:54 PM
This animated shot of the scene...

https://www.youtube.com/watch?v=s61U0iczvkw&t=1m52s

was about 25mins/frame on 6 thread phenomII.

EBD3D
02-26-2019, 04:23 PM
144238

Hello RebelHill,

I see two errors important enough even if it is to save time to render.
The problem "no detail", I also have on all the tests that I did and impossible to have the details even with large parameter of GI.
This is one of the problems on the lightwave rendering engine ..

:confused:

Cageman
02-26-2019, 04:37 PM
To do this, we'd need to have internal compositing in LW, Currently the buffers system works by performing the render, and extracting the buffers from it, not the other way round. Not that it wouldn't be cool or desirable, but that's quite a lot of extra work.

GPU/CPU denoiser are filters. You can tell wich buffer should recieve Noise filters already.

Or, are we seeing a bug where this checkbox doesn't work?

EDIT: Or, are some users still believing that LW "beauty pass" are a composite of internal buffers? If that is the case... Yes, that is not possible now. I havn't heard of any renders that works like that though...

144239

erikals
02-26-2019, 07:40 PM
"no detail"
yes, LW engine can be like that as far as i know, especially with interpolated.

as for the glass reflection, i didn't notice anything, could you elaborate?

madno
02-27-2019, 12:03 AM
you might want to purchase the rebilhill tutorials, one of the courses is setting up this scene to render in a few mins, his tutorials will teach you a lot about rendering in general, lots of hidden tips throughout,

Sorry, I was not clear in my posts.

Of course one can get faster renders. The above test was about denoise with a pure GI render (I am trying with DPs filter now, but LW crashes all the time when I add them).

144241

Reflection in the right painting is not nice (it is due to the fill light in the window that gets reflected instead of the backdrop image - same issue with the Rebel image).
Details are a little washed out.
But enough refraction passes, so the glass is correct ;)

This was a 17m31s render from early 2018 - before Rebels' new videos existed :)

dpont
02-27-2019, 02:33 AM
I have an experimental Open Image Denoise node here,
working with DP Filter,
but it can't be integrated properly,
I mean Open Image Denoise uses a common dynamic Library
but more Advanced, though it seems to be compatible.

144243


Denis.

EBD3D
02-27-2019, 11:32 AM
yes, LW engine can be like that as far as i know, especially with interpolated.

as for the glass reflection, i didn't notice anything, could you elaborate?

144245


The glass on the top of the table is all black.
It would take a new interpolated GI system interpolated ?

RebelHill
02-27-2019, 12:27 PM
I see two errors...

The missing detail is the video compression, its there just fine in the raw render. The problem you point out in the table reflection isn't an error... its just different. My lighting scheme is different and likely the surface properties of the table are different.

madno
02-27-2019, 12:41 PM
I have an experimental Open Image Denoise node here,
working with DP Filter,
but it can't be integrated properly,
I mean Open Image Denoise uses a common dynamic Library
but more Advanced, though it seems to be compatible.
Denis.

Very interseting.

EBD3D
02-27-2019, 02:29 PM
The missing detail is the video compression, its there just fine in the raw render. The problem you point out in the table reflection isn't an error... its just different. My lighting scheme is different and likely the surface properties of the table are different.


Yes, the materials are different seen on this rendering.
On your training video for this rendering you use unique lightwave or you had recourse to plugin like Dpont, etc. it's just for info.

I find it damaging that we can not in lightwave make a normal lighting and rendering ... on Octane I do not worry, with a single light source for 10 minutes of rendering

144247

Thank you RebelHill

RebelHill
02-27-2019, 04:33 PM
Nothing extra... it's all native LW.

gar26lw
02-27-2019, 10:50 PM
This animated shot of the scene...

https://www.youtube.com/watch?v=s61U0iczvkw&t=1m52s

was about 25mins/frame on 6 thread phenomII.

25 mins per frame. ouch. why not try unreal?

RebelHill
02-28-2019, 08:33 AM
Because the point is doing things in LW.

gar26lw
02-28-2019, 10:33 AM
hehe, you do, you just pass it to unreal via bridge. i think itís worth a shot. has anyone got this scene and we can give it a go?

Lewis
02-28-2019, 12:52 PM
hehe, you do, you just pass it to unreal via bridge. i think it’s worth a shot. has anyone got this scene and we can give it a go?

Why don't you do it (convert scene to Unreal) and then post result here so we also can play with it :)?

gar26lw
02-28-2019, 01:47 PM
Why don't you do it (convert scene to Unreal) and then post result here so we also can play with it :)?

that was what i was meaning :)

tburbage
03-01-2019, 05:25 PM
Image filter plugin PSD Export should have all new buffers built in and then in PS user could use Surface Blur tool :) I made test with PSD Export and it export only linear color, not sRGB. No matter what Layout color space I choose. Is it a bug?


I did log that as a bug?/feature request? last year. I like the PSD Export, but wish it was updated with the PBSDF output channels...

RebelHill
03-01-2019, 05:57 PM
I made test with PSD Export and it export only linear color, not sRGB. No matter what Layout color space I choose. Is it a bug?

No, because to combine properly, buffers have to be added together, which only works correctly in linear space.

rustythe1
03-02-2019, 07:10 AM
Sorry, I was not clear in my posts.

Of course one can get faster renders. The above test was about denoise with a pure GI render (I am trying with DPs filter now, but LW crashes all the time when I add them).

144241

Reflection in the right painting is not nice (it is due to the fill light in the window that gets reflected instead of the backdrop image - same issue with the Rebel image).
Details are a little washed out.
But enough refraction passes, so the glass is correct ;)

This was a 17m31s render from early 2018 - before Rebels' new videos existed :)

and this is my point, this render was 8 mins, brute force,
144296
and not correct about the reflection, lights don't show in reflections, I had a chuckle at a couple of individuals last time who thought they were so called cgi experts but completely missed one of the simplest mathematical calculations in rendering, bounce angle, if you look where the back drop was placed in the original scene, it would never show in the reflection, (don't take that as a dig as I don't think anybody brought up the solution last time even though many people tried to point out something must be wrong with the render engine for it not to show!)
144297
you have to move it closer and make it smaller, or move it to the left more, you can clearly see in my render reflection shows, and I have just two area lights in my scene
144298

madno
03-03-2019, 11:31 AM
Thanks for the explanation. But I am aware of the in = out angle rule.

Furthermore:



... and not correct about the reflection, lights don't show in reflections, ...

That's either not accurate or meant differently: In general lights (since LW 2018) do reflect.

We need to distinguish between Lights and Portal Lights. Portal Lights do not reflect themselves (they only "forward" what's in the background).

Portal Light:
left: backdrop grey = something to reflect - right: backdrop black = nothing to reflect
144322

Normal Light:
left: light with affect specular = on - right: light with affect specular = off.
144323

So, depending on the scene, lights on can reflect in mirrors and kill the desired result.

The scene:
144324

If the light is near the window it matches the in out angle to painting and camera.
Even if the backdrop image is placed correctly its reflection in the painting can be blown out by the light.


Area light in window with "affect specular = off"
Only the backdrop gets reflected (in my setting it is luminous = being a light itself)
144325

Area light in window with "affect specular = on"
The area light reflection gets added to the backdrop reflection
144318

A little more energy and it starts to kill everyting:
144326

And last but not least, a render in 8m1s (I would not show this to somebody who might want to pay for renders).
144321

rustythe1
03-03-2019, 05:26 PM
but that could be down to a misunderstanding too, the reflection is there because that material is reflecting more specular than it is diffuse, so there for the brighter the light, the more the reflection fades as more white values are added to the reflected image, its not the actual reflection of the light, or the light blocking out the image, you just need to use a material that reflects more diffuse than specular, im not using a portal light in mine, its a standard area light and reflection is clearly visible.
144327
even with crazy light values you can still make out the bricks in the reflection and even partly see the picture underneath if you use a material with very low spec
144328

madno
03-04-2019, 10:35 AM
Cool, either your scene is setup significantly different than mine, or it has to do with light falloff (see bottom of the image). Maybe we are meaning the same but talking about different scenes?

Check image:
144331

(sorry, don't know why the screenshots came out so big)

rustythe1
03-04-2019, 05:12 PM
no, its the material I used, weather the light is falloff on or off it will never reflect, as I said, the bsdf reflects too much specular, there is nothing wrong with it, its how it should be as we are faking the scene by putting a light directly outside the window, so the material is doing its job, so to get around it you either have to use a different material (no point using realistic materials if we are not using realistic light!) or set up the lights to be more accurate, you can use just a single enviro light in this scene and with the right settings it can look almost identical so that eliminates the light at the window all together, some of the other materials reflect less or none of the spec but can still reflect diffuse, I expect you could set up a complicated node in the bsdf to do the same job,

Rayek
03-04-2019, 07:17 PM
And last but not least, a render in 8m1s (I would not show this to somebody who might want to pay for renders).
144321

I tested this scene in various render engines as well as in LW 2018 when Lightwave 2018 first was released over a year ago. Just as in other engines that I tested with denoisers, the LW 2019 denoiser kills the wall panel details and creates a visual mush. The floor suffers as well in this case, as do the curtains. That is probably what you meant?

It just needs more samples and render time, I assume.

I'd be very interested in a real-time render engine comparison such as Unreal for scenes like these.

jbrookes
03-05-2019, 01:48 PM
I did not send feature request. For sure developers know about that things

Never assume that they already know about it -- regardless of how obvious it seems to you. I'm sure there were people who thought that the devs knew that LightWave 2018 couldn't composite renders with transparent objects in front of opaque objects. If anyone sported it, it clearly wasn't reported and now there's a version of LightWave from 2018 that can't do something that a version from 1998 can.

gar26lw
03-05-2019, 02:38 PM
Never assume that they already know about it -- regardless of how obvious it seems to you. I'm sure there were people who thought that the devs knew that LightWave 2018 couldn't composite renders with transparent objects in front of opaque objects. If anyone sported it, it clearly wasn't reported and now there's a version of LightWave from 2018 that can't do something that a version from 1998 can.

never remove functionality. is it going to be fixed?

jbrookes
03-05-2019, 03:05 PM
never remove functionality. is it going to be fixed?

Not as of the latest version of LW 2018 (2018.0.7).

Apparently it was fixed for LW 2019, so the fix for 2018 is likely just a matter of code copy and paste.

rustythe1
03-12-2019, 05:19 AM
I tested this scene in various render engines as well as in LW 2018 when Lightwave 2018 first was released over a year ago. Just as in other engines that I tested with denoisers, the LW 2019 denoiser kills the wall panel details and creates a visual mush. The floor suffers as well in this case, as do the curtains. That is probably what you meant?

It just needs more samples and render time, I assume.

I'd be very interested in a real-time render engine comparison such as Unreal for scenes like these.

here is the scene sent over on unreal bridge, would take a lot of work to get the nice floor reflections, and you can see the second bounce collects a lot of the colour from the textures, but considering how long this takes to set up(didn't even have to change the materials, just changed the way the lights are se4t up), its a very good cheap quick turn around alternative to rendering 0.05 seconds ! obviously you are only restricted to 4k without some sort of external development,
144384

in fact I just finished a project where they wanted a full "vray" style fly through render in 4k, so I did it in unreal, and they were happy and none the wiser!

rustythe1
03-12-2019, 05:22 AM
ps, it does show the problems with the model itself more in unreal, you can see a lot more light intersections and leaks so not the best scene to showcase unreal, you need to be a bit more precise and mindful of the things that might trip you up,
but the bridge has taken a little of that away

gar26lw
03-12-2019, 06:04 AM
maybe try these settings

http://rag3dviz.com/ue4/basic-interior-in-unreal-engine-4-12/

rustythe1
03-12-2019, 07:50 AM
they are nice and that's ok if you have time to sort out lightmaps etc, something like that could take anywhere from 30 mins to 12 hrs to bake them out after you created them, for this scene I just used fully dynamic as everything is instant (that's the only short fall with unreal, to compete with a full raytraced engine quality you kind of have to spend almost as much time baking and setting up as you would have to render scene in a standard render package or using something like interpolated cache)
the other option is to pre bake all the lighting direct to the texture in your 3d package, that way you can have fully immersive high quality with out using hardly any resources in unreal, but again for that you might need to work on uv mapping to avoid pixelated and overlapping areas.

gar26lw
03-12-2019, 04:02 PM
did you have the distance field ao on? real-time gi etc

Rayek
03-13-2019, 04:52 PM
here is the scene sent over on unreal bridge, would take a lot of work to get the nice floor reflections, and you can see the second bounce collects a lot of the colour from the textures, but considering how long this takes to set up(didn't even have to change the materials, just changed the way the lights are se4t up), its a very good cheap quick turn around alternative to rendering 0.05 seconds ! obviously you are only restricted to 4k without some sort of external development,

in fact I just finished a project where they wanted a full "vray" style fly through render in 4k, so I did it in unreal, and they were happy and none the wiser!

Thanks for testing! I finally found a bit of free time to test this scene in Eevee. I am not very familiar yet with Eevee, and there are issues with this render (similar to what you encountered in Unreal such as like leakage and other things). It's my first 'real' test with an interior scene in Eevee. Took around 20 minutes to get things set up to this point. I am certain things can be improved, though, based on what I have seen other users do in Eevee with archviz scenes.

1500x2000px render in 7 seconds on my 1080gtx. At some point I mistakenly entered 7500x10000px render values, and it took a couple of minutes, but Eevee did not crash, and finished it properly! :-) So it is pretty stable so far in my experience.


http://www.upl.co/uploads/testeevee21552517443.png

gar26lw
03-13-2019, 05:38 PM
20 mins 7 secs start to finish. impressive.

Rayek
03-13-2019, 10:33 PM
20 mins 7 secs start to finish. impressive.

To be fair, I already had the scene converted to Cycles last time when I tested and compared Lightwave 2018's new renderer with a number of render engines.

Most of the materials did not need to be adjusted: only the reflective glass. I had to change the lighting somewhat, and created a new material for the table top, which I wanted to look better. I also played with the overall lighting to get a better looking result, changed the window locks to a brass-type material, and Eevee uses different techniques than traditional render engines to achieve a certain look. I also adjusted the outside image, and a couple of other things, such as moving the floor up a bit.

I couldn't get the glass jar to look right, and decided to cheat by importing a vase from Blendswap. :-)

But yeah, definitely a good result for so little work, and seeing I have almost no experience with Eevee... Not bad at all.

The beautiful thing about Eevee is that the viewport is realtime, and is 90-95% identical to the final result. Tweaking stuff is quick and effective: no more test renders required, or very few, which speeds up things tremendously.

Just noticed that there's a weird contact shadow between the ceiling and the lamp's electric cord, btw.