Revision 5e0684b by Brecht Van Lommel September 10, 2021, 16:59 (GMT) |
Revert startup.blend changes from commit a00507c482e2 It appears an old version of this file was committed by accident. The intended change to remove sculpt layers was done in versioning code and does not require a modified startup.blend. |
September 10, 2021, 16:49 (GMT) |
Fix Constraints not updating on move in stack Flag the changed object and its bones to update after moving a constraint in the stack up or down. The two operators for move up and move down seem to be unused, but I notices they had the same problem, so I added the update there as well. Reviewed By: sybren Differential Revision: https://developer.blender.org/D12174 |
Revision 6b7b4f8 by Harley Acheson September 10, 2021, 16:30 (GMT) |
VFont: Refactor of check_freetypefont() Refactor of our Vfont check for font validity. See D12068 for further details. Differential Revision: https://developer.blender.org/D12068 Reviewed by Campbell Barton |
Revision e2f99c3 by Hans Goudey September 10, 2021, 15:34 (GMT) |
Geometry Nodes: Add versioning to change legacy node ID names Recently we have decided to avoid fancier versioning for nodes with string inputs for attribute names when updating the attribute workflow for 3.0. In that case we would just duplicate any node that will have an updated version to work with fields. We want to be able to use the "proper" ID names for the new versions of the nodes though, so this patch adds "Legacy" to the IDs of all nodes that will be replaced in 3.0. This commit also removes the nodes from the add menu when the fields experimental preference is enabled, in order to make it clear what has been updated and what hasn't. Nodes in the "Maybe" categories in versioning_300.c can be renamed later if necessary. For now it's probably better to be conservative, and to keep the list complete. Differential Revision: https://developer.blender.org/D12420 |
Revision 128eb6c by Brecht Van Lommel September 10, 2021, 14:48 (GMT) |
Modifiers: export motion blur velocity through attribute Previously fluid simulation and Alembic modifiers had a dedicated function to query the velocity for motion blur. Now use a more generic system where those modifiers output a velocity attribute. Advantages: * Geometry and particle nodes can output velocity through the same mechanism, or read the attribute coming from earlier modifiers. * The velocity can be preserved through modifiers like subdivision surface or auto smooth. * USD and Alembic previously only output velocity from fluid simulation, now they work with velocity from other sources too. * Simplifies the code for renderers like Cycles and exporters like Alembic and USD. This breaks compatibility: * External renderers and exporters accessing these velocities through the Python API now need to use the attribute instead. * Existing modifier node setups that create an attribute named "velocity" will render differently with motion blur. Differential Revision: https://developer.blender.org/D12305 |
Revision 42215d7 by Brecht Van Lommel September 10, 2021, 14:48 (GMT) |
Tests: more graceful handling of keyboard interrupting benchmarks Leave current test result unchanged and stop executing immediately, so it can be continued. |
Revision eb96f0c by Julian Eisel September 10, 2021, 13:01 (GMT) |
Add missing bit to own previous commit Amendment to 7a5216497cc3. Removed this before committing, because I thought it wasn't needed. Of course it was... |
Revision 0467ff4 by Sybren A. Stüvel September 10, 2021, 12:58 (GMT) |
Python: extra check on `BPY_thread_save()` to ensure proper GIL handling Use `_PyThreadState_UncheckedGet()` to check that the current thread is tracked by Python before checking whether it has the GIL. The latter will abort when the former is false. |
Revision ca39aff by Jeroen Bakker September 10, 2021, 12:45 (GMT) |
Cleanup: Fix comment in recent commit. A task is created for each item in a list base. It used to say that a thread was created for each item. |
Revision 7a52164 by Julian Eisel September 10, 2021, 12:44 (GMT) |
Fix possible crash displaying asset preview from current file For some reason the asset preview isn't created or loaded correctly in some instances. This could be addressed with D9974, but hard to tell since I only have a failing .blend file, no steps to recreate it from scratch. Would crash when opening an Asset Browser, selecting an object asset (that has an invalid preview stored) and opening the Asset Browser sidebar, so that the preview is visible there. |
Revision 7f1fe10 by Jeroen Bakker September 10, 2021, 12:31 (GMT) |
T78995: Enable keylist threaded drawing. This enabled multithreaded building of the keys that needs to be drawn in the timeline (and other action editors). On an AMD Ryzen 3800 using a mocap data test file (available in patch) the performance went from 2fps to 8fps. The performance increase depends on the number of rows of keyframes that is shown in for example the timeline editor. Each row will be using a different thread. Currently the bottleneck is the summary channel that we could split up in the future even more ( although that is a complex refactoring work). Reviewed By: sybren Differential Revision: https://developer.blender.org/D12198 |
Revision a1167e9 by Omar Emara September 10, 2021, 12:25 (GMT) |
BLI: Add Cycles compatible Perlin noise This patch adds new Perlin noise functions to BLI. The noises are compatible with the shading texture noises in EEVEE, SVM, and OSL. The existing Jenkins hash functions couldn't be used because they are not compatible with the shading implementations and an attempt at adjusting the implementation will break compatibility in various areas of Blender. So the simplest approach is to reimplement the relevant hashing functions inside the noise module itself. Additionally, this patch also adds a minimal float4 structure to use in the interface of the noise functions. Reviewed By: JacquesLucke Differential Revision: https://developer.blender.org/D12443 |
Revision 60cfdf0 by Jeroen Bakker September 10, 2021, 11:28 (GMT) |
Anim: Keylist drawing optimization by using arrays. Change data structure of keylists. Reducing the balancing overhead and therefore increases performance. | **Function** | **Master** | **Patch** | |`draw_summary_channel`| 0.202105s| 0.083874s | When adding items to the keylist it will store it in a linked list. This linked list is accompanied with the length (key_len) and a `last_accessed_column`. last_accessed_column is a cursor that improve the performance when adding new items as they are mostly ordered by frame numbers. last_accessed_column is reset when a new fcurve/mask/... is added to the keylist. Before searching or array access. the listbase needs to be converted to an array. `ED_keylist_prepare_for_direct_access`. After that the caller can use `ED_keylist_find_*` or `ED_keylist_array*` functions. The internal array can also be accessed via the `ED_keylist_listbase` function. The items inside the array link to the previous/next item in the list. Reviewed By: sybren Differential Revision: https://developer.blender.org/D12052 |
Revision a00507c by Campbell Barton September 10, 2021, 09:29 (GMT) |
Templates: remove masking layers from the default startup file Remove sculpt mask layer from the default cube, added in 444934632a8d8e239bc0c6d79a638ec0943152a6. |
Revision fe42864 by Sybren A. Stüvel September 10, 2021, 09:03 (GMT) |
Depsgraph: release GIL when evaluating the depsgraph Evaluating the dependency graph potentially executes Python code when evaluating drivers. In specific situations (see T91046) this could deadlock Blender entirely. Temporarily releasing the GIL when evaluating the depsgraph resolves this. This is an improved version of rBfc460351170478e712740ae1917a2e24803eba3b, thanks @brecht for the diff! Manifest task: T91046 |
Revision 93d2940 by Bastien Montagne September 10, 2021, 07:28 (GMT) |
Link/Append: Fix unreported obdata being instantiated even when already used by linked/appended data. Do not instantiate obdata when it is not actually loose. |
Revision 284c943 by Jeroen Bakker September 10, 2021, 07:21 (GMT) |
Cleanup: Silenced compilation warning in ghost. |
September 10, 2021, 04:36 (GMT) |
Update command line argument description for --addons Changed doc string for Blender `--addons` command line argument to explain what it does rather than just describing what it expects. Reviewed By: Blendify Ref D12445 |
September 10, 2021, 04:19 (GMT) |
XR: Re-enable SteamVR OpenGL backend for AMD gpus Addresses T76082. Since the DirectX backend does not work for AMD gpus (wglDXRegisterObjectNV() fails to register the shared OpenGL-DirectX render buffer, displaying a pink screen to the user), the original solution was to use SteamVR's OpenGL backend, which, as tested recently, seems to work without any issues on AMD hardware. However, the SteamVR OpenGL backend (on Windows) was disabled in fe492d922d6d since it resulted in crashes with NVIDIA gpus (and still crashes, as tested recently), so SteamVR would always use the AMD-incompatible DirectX backend (on Windows). This patch restores use of the SteamVR OpenGL backend for non-NVIDIA (AMD, etc.) gpus while maintaining the DirectX workaround for NVIDIA gpus. In this way, issues are still resolved on the NVIDIA side but AMD users can once again use the SteamVR runtime, which may be their only viable option of using Blender in VR. Reviewed By: Julian Eisel Differential Revision: https://developer.blender.org/D12409 |
Revision ee3b4e8 by Ray molenkamp September 9, 2021, 23:19 (GMT) |
Windows: Fix VS2022 detection VS2019 had a compiler update moving it into the range that was used to detect VS2022. This patch updates the detection to the current VS2022 preview compiler version. Reported by Jesse Y on chat. |
|