- User Since
- Mar 31 2015, 9:29 AM (233 w, 2 d)
Note that there's one case where the color space conversion still happens in the wrong place, that is when OSL is enabled and reading external textures. OpenImageIO's TextureSys is loading 8 bit sRGB textures without color transform and calculates temporary mip maps and any interpolations in the wrong color space.
- Cleanup: Whitespace
Tue, Sep 17
I’m working on a fix right now, we’ll see what the performance impact is.
Sat, Sep 14
Fri, Sep 13
It should be ok now, I fixed aligned Malloc on macOS.
Thu, Sep 12
I attached my test patches so others can test for themselves. They are not optimized, there are faster filter implementations that use less memory.
2x2 supersampling inside kernel_background_evaluate() reduces noise even further and leaves the quality intact with other texture filters. It should also improve the situation for procedural environment maps.
I played a bit with simple filters for the distribution. Both 3x3 box and 3x3 Gaussian filters improve the case with linear texture filtering, but make things worse for closest texture filtering.
Wed, Sep 11
PBRT filters the environment map when creating the distribution:
I just played with 2x2 supersampling when generating the distribution, thus avoiding sampling texels exactly in the middle (= no linear interpolation). This gave me a significant reduction in noise with linear interpolation, just slightly noisier as with closest interpolation.
When building the initial distribution, Cycles always sample the center of a pixel, effectively a closest or box filter. When using the distribution later during the render with a different filter, we get a mismatch between the function and its PDF. When sampled with linear texture filtering, single bright pixels become spikes that bleed into the neighboring pixels, where the distribution we sample from is piecewise linear over the pixel with no bleeding.
Tue, Sep 10
I spent some time looking into this.
I uploaded my sample file if someone needs it in the future for regression testing.
Sun, Sep 8
Thu, Aug 29
Tue, Aug 27
@Lauri Hastholm (laurijh) I don't have a CPU without SSE4.1, it would be great if you could leave feedback here if my fix worked for you. On unsupported CPUs, you should now see a message in the node itself and it should now act as a passthrough instead of returning a black image.
Mon, Aug 26
I'm seeing crashes in the victor scene when rendering this on a 1080Ti on Centos 7:
Can you add the following snipped to make the patch also apply to builds with make deps?
Fri, Aug 23
The compositor is running separate threads for independent nodes. In most constellations, that means that all denoising nodes run at the same time.
Wed, Aug 21
Aug 20 2019
I am unable to get hair to render - any scene from the benchmark repository (https://svn.blender.org/svnroot/bf-blender/trunk/lib/benchmarks/cycles/) that contains hair results in a crash.
@Lukas Stockner (lukasstockner97) can you upload a version of the existing that work against the current master? That would make it easier for others to experiment with it.
Aug 16 2019
Aug 15 2019
Just thinking aloud, this might be an opportunity for a small refactor of cycles: currently, Cycles builds the BVH before it uploads geometry vertices to the device. Most ray tracing APIs (DXR, OptiX, Embree) work the other way round. Before we introduce an OptiX specific workaround, should we change Cycles to do vertices first, BVH second? That would also help the Embree backend and potentially a future DXR/Vulkan backend when we see more vendors deliver ray tracing hardware.
Aug 14 2019
@Brecht Van Lommel (brecht) should I land the patch in its current state (OIDN disabled by default) or do we want to wait for install_deps.sh to be fully working first?
Aug 13 2019
Aug 9 2019
There were some more implementation details in the 2019 SIGGRAPH course "My favorite samples":
Aug 6 2019
make deps and everything else should be set up for static builds, unless I missed something.
Seems to work as intended:
- Compositor: Addressed Brecht's requests for OIDN node.
Aug 5 2019
You beat me to this! :)
- build_environment: Updated to OIDN 1.0.0.
Aug 2 2019
Aug 1 2019
Jul 24 2019
Jul 17 2019
Jul 4 2019
Jun 28 2019
Jun 7 2019
Jun 3 2019
It might be useful to find a way to hide the repetition in the 64x64 pattern, since in some cases it can become visible.