Go to file
Omar Emara 940558f9ac Realtime Compositor: Implement Classic Kuwahara
This patch implements the Classic Kuwahara node for the Realtime Compositor.

A naive O(radius^2) implementation is used for radii up to 5 pixels, and a
constant O(1) implementation based on summed area tables is used for higher
radii at the cost of building and storing the tables.

This is different from the CPU implementation in that it computes the variance
as the average of the variance of each of the individual channels. This is done
to avoid computing yet another SAT table for luminance. The CPU implementation
will be adapted to match this in a future commit.

The SAT implementation is based on the algorithm described in:

Nehab, Diego, et al. "GPU-efficient recursive filtering and summed-area tables."

Additionally, the Result class now allows full precision texture allocation, which
was necessary for storing the SAT tables.

Pull Request: https://projects.blender.org/blender/blender/pulls/109292
2023-07-19 14:04:18 +02:00
.gitea Gitea: update bug report template for security policy 2023-04-11 12:14:01 +02:00
.github Docs: change Git URLs to point projects.blender.org instead of git.blender.org 2023-02-07 14:23:05 +01:00
build_files code checker: add 'make check_struct_comments' 2023-07-18 14:34:59 +10:00
doc Cleanup: use set.discard instead of a __contains__ check before remove() 2023-07-02 19:54:27 +10:00
extern UI: SVG Thumbnails 2023-07-12 22:39:23 +02:00
intern Cleanup: Silence Compilation Warnings in GHOST 2023-07-19 12:59:49 +02:00
locale I18N: Updated UI translations from svn trunk (r6636). 2023-07-17 15:03:09 +02:00
release Geometry Nodes: new Repeat Zone 2023-07-11 22:36:10 +02:00
scripts Docs: Fix layout of bpy.types.Object Python API documents 2023-07-18 23:32:00 +10:00
source Realtime Compositor: Implement Classic Kuwahara 2023-07-19 14:04:18 +02:00
tests Geometry Nodes: new Repeat Zone 2023-07-11 22:36:10 +02:00
tools Fix '--help' message error in code_clean when '%' characters were used 2023-07-13 09:54:05 +10:00
.clang-format clang-format: set BraceWrapping::AfterControlStatement to "MultiLine" 2023-05-02 09:37:08 +10:00
.clang-tidy Clang-tidy: Ignore variable name length and .c/.cc include warnings 2022-05-06 15:26:54 +02:00
.editorconfig pyproject: add configuration for autopep8 2022-04-22 10:13:39 +10:00
.git-blame-ignore-revs Cleanup: add commit to .git-blame-ignore-revs 2023-05-03 20:31:11 +10:00
.gitignore Ignore build files for VS and VS Code 2023-03-07 17:38:34 +01:00
CMakeLists.txt GHOST: Replace WITH_OPENGL build option 2023-07-11 09:17:31 +02:00
COPYING
GNUmakefile code checker: add 'make check_struct_comments' 2023-07-18 14:34:59 +10:00
make.bat make.bat: adjust for recent submodule changes 2023-03-16 17:51:12 -06:00
pyproject.toml pyproject: remove tools/pyproject.toml 2023-03-01 22:18:28 +11:00
README.md Update references to the new projects platform and main branch 2023-02-07 14:18:19 +01:00

Blender

Blender is the free and open source 3D creation suite. It supports the entirety of the 3D pipeline-modeling, rigging, animation, simulation, rendering, compositing, motion tracking and video editing.

Blender screenshot

Project Pages

Development

License

Blender as a whole is licensed under the GNU General Public License, Version 3. Individual files may have a different, but compatible license.

See blender.org/about/license for details.