Patches to Bf Blender for CAD development. https://tornavis.org/
Go to file
Jacques Lucke cc7da09c1b Geometry: add utility to check for bad geometry element index dependence
Sometimes .blend files have compatibility issues between Blender versions,
because .blend files depended on the specific order of geometry elements
generated by some nodes/modifiers (#112746, #113018). While we make
guarantees about the order in some places, that is relatively rare, because it
makes future improvements much harder. The functionality in this patch
makes it easier for users to notice when they depend on things that are not
expected to be stable between Blender builds.

This is achieved by adding a new global flag which indicates whether some
algorithms should randomize their output. The functionality can be toggled
on or off by searching for `Set Geometry Randomization`. If there are no
differences (or acceptable minor ones) when the flag is on or off, one can
be reasonably sure that one does not on unspecified behavior (can't be 100%
sure though, because randomization might be missing in some places). If
there are big differences, one should consider fixing the file before it comes
to an actual breakage in the next Blender version.

Currently, the setting is only available when `Developer Extras` is turned on,
because the setting is in no menu.

With this patch, if we get bug reports with compatibility issues caused by
depending on indices, one of the following three cases should always apply:
* We actually accidentally broke something, which requires a fix commit.
* Turning on geometry randomization shows that the .blend file depends on
  things it shouldn't depend on. In this case the user has to fix the file.
* We are missing geometry randomization somewhere, which requires a fix
  commit.

Pull Request: https://projects.blender.org/blender/blender/pulls/113030
2023-09-29 21:44:36 +02:00
.gitea Gitea: add note that developers must opt-out of inclusion in AUTHORS 2023-08-18 09:23:43 +10: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 CMake/MSVC: Fix build error for RelWithDebInfo configuration 2023-09-27 18:03:16 -06:00
doc Hydra: export Blender shader nodes as MaterialX node graph 2023-09-26 18:52:41 +02:00
extern VSE: Sound equalizer modifier 2023-08-30 22:36:36 +02:00
intern Fix mouse cursor failing to update for blocking actions on Wayland 2023-09-29 16:32:35 +10:00
locale I18N: Updated UI translations from dedicated git repo (3c637f5ed7d08b). 2023-09-18 11:10:30 +02:00
release Fix AppIcon on macOS 2023-09-27 23:45:10 +02:00
scripts UI: Allow Separate Configuration of Subpixel Antialiasing 2023-09-29 19:02:25 +02:00
source Geometry: add utility to check for bad geometry element index dependence 2023-09-29 21:44:36 +02:00
tests Cleanup: correct struct comments & help text for batch loading utility 2023-09-28 14:28:12 +10:00
tools addr2line_backtrace: fix error printing absolute paths are relative 2023-09-27 16:50:49 +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
AUTHORS AUTHORS: update 2023-08-29 15:09:05 +10:00
CMakeLists.txt CMake: Rename compositor tests option to WITH_COMPOSITOR_REALTIME_TESTS 2023-08-23 16:03:12 +02:00
COPYING
GNUmakefile Makefile: remove redundant directory changing 2023-09-29 16:44:31 +10:00
README.md Update references to the new projects platform and main branch 2023-02-07 14:18:19 +01:00
make.bat Windows: Propagate errors in make.bat 2023-08-16 19:29:47 +02:00
pyproject.toml pyproject: remove tools/pyproject.toml 2023-03-01 22:18:28 +11:00

README.md

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.