Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-10-12Asset Catalogs: Refresh catalog simple name when assigning catalog IDSybren A. Stüvel
When assigning a new catalog ID to an asset, also refresh the "catalog simple name". This "simple name" is stored on the asset metadata next to the catalog UUID, to allow some emergency data recovery when the catalog definition file is somehow lost.
2021-10-12Fix T92149: Crash in delete geometry node after curve fill nodeWannes Malfait
There was only a check for the component but not for if it was empty. Because the curve fill node produces an empty curve component, a nullptr was read, causing a crash. Generally nodes shouldn't produce empty components, but currently we cannot rely on that fact. Differential Revision: https://developer.blender.org/D12838
2021-10-12Fix T92150: Incorrect invert in Delete Geometry nodeWannes Malfait
The selection was inverted when deleting points from a spline. Differential Revision: https://developer.blender.org/D12840
2021-10-12Revert "GHOST: Unify behavior of offscreen context creation"Clément Foucault
Commited by mistake This reverts commit 6535779c92b90035870047f178cf3eff95f0bdf0.
2021-10-12Fix dragging objects from Outliner to 3D View brokenJulian Eisel
A dragged & dropped wouldn't be duplicated anymore, it would just be moved to the drop position. Caused by c8fcea0c33ef.
2021-10-12Cleanup: use `nullptr` instead of `NULL` in C++ code.Bastien Montagne
2021-10-12Fix T91981: Crash when using operators that needs scene depthClément Foucault
There was a double lock in the object depth drawing function. Also the texture read was not reading the texture with the right format. Now it needs a conversion. Fix T91981 Particle Edit make Blender Crash Fix T92006 Light spot interactively point can't use
2021-10-12GHOST: Unify behavior of offscreen context creationClément Foucault
This makes sure the previously bound context is restored after creating a new context. This follows what is already happening on windows. All system backend are patched. This also removes the goto and some code duplication. Differential Revision: https://developer.blender.org/D12455
2021-10-12Fix warning about deleted default constructor declared as defaultJulian Eisel
Since `AssetCatalogPath` isn't default constructible (unlike the previous `CatalogPath`, alias `std::string`), `AssetCatalog` isn't default constructible either. But its default constructor is declared with `= default` which Apple Clang was warning about. Differential Revision: https://developer.blender.org/D12714 Reviewed by: Sybren Stüvel
2021-10-12Address warning about breaking copy elision of temporary objectJulian Eisel
Using `std::move()` on temporary objects prevents copy elision done by compilers. Apple Clang warns about this. Generally `std::move()` should be used sparingly: https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines
2021-10-12Cleanup: Typo in comment.Bastien Montagne
2021-10-12Cleanup: Attempt to fix benign macOS compile warningsHans Goudey
2021-10-12Asset Browser: Remove catalog deletion confirm promptJulian Eisel
This confirmation popup was added when deletion was a destructive action that would be written to disk immediately, with no way to undo. Now we only write such changes to disk on .blend file save, plus there's undo/redo support for catalog edits now. In such cases confirmation popups should be avoided.
2021-10-12Asset Catalogs Undo: add Ctrl+Z and Ctrl+Shift+Z as hotkeys for undo/redoSybren A. Stüvel
Allow undo/redo of asset catalog edits with Ctrl+Z/Ctrl+Shift+Z. These keys are registered in the 'screen' keymap, so that they can take priority over the global undo/redo operators. Updated both Blender Default and Industry Compatible keymaps.
2021-10-12Asset Catalogs: mark 'undo push' operator as internalSybren A. Stüvel
Mark the `ASSET_OT_catalog_undo_push` operator as internal, as it's not meant for artists to use directly.
2021-10-12Asset Catalog Undo: send notifiers to redraw the catalog treeSybren A. Stüvel
Send notifiers to redraw the catalog tree after undo/redo.
2021-10-12Asset Catalogs: expose undo/redo operators to UISybren A. Stüvel
Ensure that catalog operations create an undo snapshot, and show undo/redo operators in the asset browser. A hidden operator `ASSET_OT_catalog_undo_push` is also added such that add-ons can also set undo snapshots if they need.
2021-10-12Cleanup: asset catalogs, rename store_undo_snapshot to undo_pushSybren A. Stüvel
Rename `bke::AssetCatalogService::store_undo_snapshot` to `undo_push`. This makes the function named the same way as the global Blender "undo push" function. No functional changes.
2021-10-12Fix: Incorrect error message in set spline resolution nodeHans Goudey
Caused by my own refactoring before committing the patch.
2021-10-12Asset Catalogs: undo stack for catalog editsSybren A. Stüvel
Add an undo stack for catalog edits. This only implements the backend, no operators or UI yet. A bunch of `this->xxx` has been replaced by `catalog_collection_->xxx`. Things are getting a bit long, and the class is turning into a god object; refactoring the class is tracked in T92114. Reviewed By: Severin Maniphest Tasks: T92047 Differential Revision: https://developer.blender.org/D12825
2021-10-12Assets: hide low-level catalog info behind "developer extra's"Sybren A. Stüvel
Hide the catalog UUID and the catalog simple name from the Asset Browser side-panel, unless "Developer Extra's" is enabled in the user prefs.
2021-10-12Fix missing Cycles volume stack re-allocationSergey Sharybin
Need to check allocation size, as the features do not change with volume stack depth detection.
2021-10-12Asset Catalogs: recursive deletion of catalogs & childrenSybren A. Stüvel
Recursively delete asset catalogs with `AssetCatalogService:prune_...` functions. This deletes the catalog and all of its children. The old `delete_catalog` function has been renamed to `delete_catalog_by_id()`, and is now a lower-level function (no deletion of children, no rebuilding of the tree). The `prune_catalogs_by_path()` and `prune_catalogs_by_id()` do delete children and do rebuild the catalog tree. Manifest task: T91634
2021-10-12Tests: simplify asset catalog tree testing codeSybren A. Stüvel
Simplify the testing code that verifies the asset catalog tree. It now prints clearer error messages when things go wrong, and it gets simpler data to test (instead of having to explicitly pass the parent count, it just counts the number of separators in the expected path). No functional changes to Blender.
2021-10-12WindowManager: Keep track or the source library when appending.Jeroen Bakker
Keep track of the source library allowing other parts of the code to to make better decisions. This is needed to localize external files. In this case the file paths are updated when `making local`. But we should decide based on the source library if we want to copy the file relative to the new blend file. See D12423. Reviewed By: mont29, Severin Differential Revision: https://developer.blender.org/D12765
2021-10-12Fix incorrect commet in appdir.c about cache locations.Jeroen Bakker
2021-10-12Fix build error due to conflicting typesPeter Kim
2021-10-12XR Controller Support Step 4: Controller DrawingPeter Kim
Addresses T77127 (Controller Drawing). Adds VR controller visualization and custom drawing via draw handlers. Add-ons can draw to the XR surface (headset display) and mirror window by adding a View3D draw handler of region type 'XR' and draw type 'POST_VIEW'. Controller drawing and custom overlays can be toggled individually as XR session options, which will be added in a future update to the VR Scene Inspection add-on. For the actual drawing, the OpenXR XR_MSFT_controller_model extension is used to load a glTF model provided by the XR runtime. The model's vertex data is then used to create a GPUBatch in the XR session state. Finally, this batch is drawn via the XR surface draw handler mentioned above. For runtimes that do not support the controller model extension, a a simple fallback shape (sphere) is drawn instead. Reviewed By: Severin, fclem Differential Revision: https://developer.blender.org/D10948
2021-10-12Cleanup: remove unused parameterPeter Kim
2021-10-12Tests: remove noisy output from bl_pyapi_idprop_datablockCampbell Barton
As part of expected behavior this printed an exception, making it seem as if there was an error in the test. Now the exception is suppressed from the output, ensuring it matches an the expected output.
2021-10-12Tests: script_pyapi_idprop now cleans up after it's selfCampbell Barton
This test left blend files in the users temporary directory.
2021-10-12Tests: support running ID-property test without numpyCampbell Barton
2021-10-12Tests: quiet warning for UIList class nameCampbell Barton
2021-10-12Fix leak on exit when WITH_PYTHON_SAFETY is enabledCampbell Barton
The lead only occurred when Python references were leaking as well.
2021-10-12Cleanup: spelling in commentsCampbell Barton
2021-10-12Cleanup: quiet undefined warningCampbell Barton
2021-10-12GHOST: Add option to request (user) cache folder.Jeroen Bakker
Introduces `BKE_appdir_folder_caches` to get the folder that can be used to store caches. On different OS's different folders are used. - Linux: `~/.cache/blender/`. - MacOS: `Library/Caches/Blender/`. - Windows: `(%USERPROFILE%\AppData\Local)\Blender Foundation\Blender\Cache\`. Reviewed By: Severin Differential Revision: https://developer.blender.org/D12822
2021-10-12Silence compilation warning in wm_xr_session.Jeroen Bakker
2021-10-12XR Controller Support Step 3: XR EventsPeter Kim
Integrates XR input actions with the WM event system. With this commit, all VR action functionality (operator execution, pose querying, haptic application), with the exception of custom drawing, is enabled. By itself, this does not bring about any changes for regular users, however it is necessary for the upcoming VR add-on update that will expose default controller actions to users. For add-on developers, this updates the Python API with access to XR event data (input states, controller poses, etc.), which can be obtained via the "xr" property added to the bpy.types.Event struct. For XR events, this property will be non-null and the event will have the type XR_ACTION. Further details: XR-type window events are queued to the regular window queues after updating and interpreting VR action states. An appropriate window is found by either using the window the VR session was started in or a fallback option. When handling XR events, mouse-specific processing is skipped and instead a dedicated XR offscreen area and region (see 08511b1c3de0) is used to execute XR event operators in the proper context. Reviewed By: Severin Differential Revision: https://developer.blender.org/D10944
2021-10-12Geometry Nodes: Use a separator in the add menu input categoryHans Goudey
This can help separate the field inputs from the other nodes, like some other categories.
2021-10-12Geometry Nodes: Add Color input nodeCharlie Jolly
Adds a color input node with picker. Differential Revision: https://developer.blender.org/D12793
2021-10-12Fix T92103: Update BLI hash_float_to_float functions to be shader compatibleCharlie Jolly
Previously the functions called `hash_float` instead of `uint_to_float_01`. This meant that the float was hashed twice instead of once. The new functions are also compatible with Cycles/Eevee. Differential Revision: https://developer.blender.org/D12832
2021-10-11Fix T92102: Issues with align euler to vector nodeJarrett Johnson
For fixed pivots, make sure the correct pivot axis is being used. Also add continues or invalid rotations. Differential Revision: https://developer.blender.org/D12824
2021-10-11Fix recently added File Browser name/path getters not allowing unicodeJulian Eisel
The `FileSelectEntry.name` and `FileSelectEntry.relative_path` members should support unicode strings like any file names & paths, but didn't.
2021-10-11Fix T92056: empty sampling pattern in Cycles when opening some existing filesBrecht Van Lommel
2021-10-11Cycles: improve SSS Fresnel and retro-reflection in Principled BSDFBrecht Van Lommel
For details see the "Extending the Disney BRDF to a BSDF with Integrated Subsurface Scattering" paper. We split the diffuse BSDF into a lambertian and retro-reflection component. The retro-reflection component is always handled as a BSDF, while the lambertian component can be replaced by a BSSRDF. For the BSSRDF case, we compute Fresnel separately at the entry and exit points, which may have different normals. As the scattering radius decreases this converges to the BSDF case. A downside is that this increases noise for subsurface scattering in the Principled BSDF, due to some samples going to the retro-reflection component. However the previous logic (also in 2.93) was simple wrong, using a non-sensical view direction vector at the exit point. We use an importance sampling weight estimate for the retro-reflection to try to better balance samples between the BSDF and BSSRDF. Differential Revision: https://developer.blender.org/D12801
2021-10-11Cycles: restore Christensen-Burley SSSBrecht Van Lommel
There is not enough time before the release to improve Random Walk to handle all cases this was used for, so restore it for now. Since there is no more path splitting in cycles-x, this can increase noise in non-flat areas for the sample number of samples, though fewer rays will be traced also. This is fundamentally a trade-off we made in the new design and why Random Walk is a better fit. However the importance resampling we do now does help to reduce noise. Differential Revision: https://developer.blender.org/D12800
2021-10-11Fix T86671: Background Scene Dupliface Not Instanced.Bastien Montagne
Use depsgraph's objects iterator to find sources of dupliobjects, instead of looping over bases of a viewlayer.
2021-10-11UI: Reduce whitespace in custom node categoriesHans Goudey
This makes the long "Curve" category take up less space.
2021-10-11Geometry Nodes: Add Nodes to Get/Set Built-in AttributesJohnny Matthews
This commit implements T91780, adding nodes to get and set builtin attributes. Individual set nodes are used so that the values can be exposed for direct editing, which is useful for attributes like shade smooth and spline resolution. Individual input nodes are used to allow reusing nodes for multiple components, and to allow grouping multiple outputs conceptually in the same node in the future. Input Nodes - Radius - Curve Tilt - Curve Handle Positions - Is Shade Smooth - Spline Resolution - Is Spline Cyclic 'Set' Nodes - Curve Radius - Point Radius - Curve Tilt - Curve Handle Positions - Is Shade Smooth - Spline Resolution - Is Spline Cyclic Using hardcoded categories is necessary to add separators to the node menu. Differential Revision: https://developer.blender.org/D12687