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-11-24FIx: Change to instance domaintemp-geometry-nodes-textErik
2021-11-23Merge branch 'master' into temp-geometry-nodes-textErik
2021-11-23Geometry Nodes: Node execution time overlayErik
Adds a new overlay called "Timings" to the Geometry Node editor. This shows the node execution time in milliseconds above the node. For group nodes and frames, the total time for all nodes inside (recursively) is shown. Group output node shows the node tree total. The code is prepared for easily adding new rows of information to the box above the node in the future. Differential Revision: https://developer.blender.org/D13256
2021-11-23Cleanup: Simplify geometry node function namesHans Goudey
With this commit, we no longer use the prefixes for every node type function like `geo_node_translate_instances_`. They just added more places to change when adding a new node, for no real benefit. Differential Revision: https://developer.blender.org/D13337
2021-11-23Merge branch 'blender-v3.0-release'Jacques Lucke
2021-11-23Fix T93297: incorrect eevee motion blur with geometry instancesJacques Lucke
This disables motion blur for geometry instances in eevee, which did not work correctly anyway. See code comment for more details. Differential Revision: https://developer.blender.org/D13334
2021-11-23Merge branch 'blender-v3.0-release'Philipp Oeser
2021-11-23Fix T93322: Freestyle Sinus Displacement Division by Zero CrashPhilipp Oeser
This happens if the Wavelength is set to 0.0f. Not sure if we really need a do_version patch for old files, as an alternative we could also force a slight offset in the SinusDisplacementShader. This patch does not do either, just force a positive range from now on. Maniphest Tasks: T93322 Differential Revision: https://developer.blender.org/D13329
2021-11-23Cleanup: Suppress clang-tidy warning.Jeroen Bakker
2021-11-23Geometry Nodes: add namespace for every fileJacques Lucke
This puts all static functions in geometry node files into a new namespace. This allows using unity build which can improve compile times significantly (P2578). * The name space name is derived from the file name. That makes it possible to write some tooling that checks the names later on. The file name extension (`cc`) is added to the namespace name as well. This also possibly simplifies tooling but also makes it more obvious that this namespace is specific to a file. * In the register function of every node, I added a namespace alias `namespace file_ns = blender::nodes::node_geo_*_cc;`. This avoids some duplication of the file name and may also simplify tooling, because this line is easy to detect. The name `file_ns` stands for "file namespace" and also indicates that this namespace corresponds to the current file. In the beginning I used `node_ns` but `file_ns` is more generic which may make it more suitable when we want to use unity builds outside of the nodes modules in the future. * Some node files contain code that is actually shared between different nodes. For now I left that code in the `blender::nodes` namespace and moved it to the top of the file (couldn't move it to the bottom in all cases, so I just moved it to the top everywhere). As a separate cleanup step, this shared code should actually be moved to a separate file. Differential Revision: https://developer.blender.org/D13330
2021-11-23Geometry Nodes: reduce overhead when processing single valuesJacques Lucke
Currently the geometry nodes evaluator always stores a field for every type that supports it, even if it is just a single value. This results in a lot of overhead when there are many sockets that just contain a single value, which is often the case. This introduces a new `ValueOrField<T>` type that is used by the geometry nodes evaluator. Now a field will only be created when it is actually necessary. See D13307 for more details. In extrem cases this can speed up the evaluation 2-3x (those cases are probably never hit in practice though, but it's good to get rid of unnecessary overhead nevertheless). Differential Revision: https://developer.blender.org/D13307
2021-11-23Merge branch 'blender-v3.0-release'Jacques Lucke
2021-11-23Fix T93296: raycast node uses wrong domain for face corner attributesJacques Lucke
This changes what domain is used by the raycast mode. This should fix the behavior for face corner attributes (but may make it a bit slower for other attributes). I think for 3.0 this is an acceptable trade off. For 3.1 we can do what the comment suggests already. Differential Revision: https://developer.blender.org/D13333
2021-11-23Fix T93231: crash when overwriting vertex group with other domainJacques Lucke
The problem was that we forgot to actually remove the vertex group when it should be deleted. We only removed all the data that was attached to it. Differential Revision: https://developer.blender.org/D13326
2021-11-23Merge branch 'blender-v3.0-release'Bastien Montagne
2021-11-23Fix broken versionning after recent refactor of insertion in liboverrides.Bastien Montagne
rB33c5e7bcd5e5b79 doversion code was incorrectly dealing with 'insert in first position' case from older blendfiles. Specifically, a NULL anchor is valid (it means that the new item is the first of the stored override data, and should be inserted at start of the list). Reported as part of T93321.
2021-11-23Icons: Replace .blend file icons, add "Current File" iconJulian Eisel
The Blender icon must not be used to refer to anything that is not Blender itself. Using the Blender icon on its own to refer to .blend files or the currently open file is a no-go, which was brought up by Ton. This does the following changes to the icon file: * Add new "Current File" icon * Change the .blend file icon to contain a file icon with the Blender logo, but not merely the Blender logo. * Change the backup .blend file icon accordingly. The new "Current File" icon is used in the Asset Browser, but could/should be used in the Outliner as well. That needs more design discussion though.
2021-11-23Cleanup: Silence compilation warning.Jeroen Bakker
For now made DRW_notify_view_update_offscreen static.
2021-11-23Merge branch 'blender-v3.0-release'Germano Cavalcante
Conflicts: source/blender/editors/transform/transform_generics.c
2021-11-23Cleanup: clang-tidy warningsGermano Cavalcante
Silenciate warnings of usage of 'else' after 'return'
2021-11-23Merge branch 'blender-v3.0-release'Clément Foucault
2021-11-23Fix T89204: slow repeated rendering with GPUOffscreen.draw_view3d.Christian Stolze
Reviewed By: fclem Differential Revision: D13235
2021-11-23Merge remote-tracking branch 'origin/blender-v3.0-release'Sybren A. Stüvel
2021-11-23Cleanup: fix clang-tidy warningsSybren A. Stüvel
Fix clang-tidy warnings introduced by a recent commit on the release branch. No functional changes.
2021-11-23Merge remote-tracking branch 'origin/blender-v3.0-release'Sybren A. Stüvel
2021-11-23Asset Browser: add operator for installing asset bundlesSybren A. Stüvel
Add an operator "Copy to Asset Library" for installing asset bundles into already-existing asset libraries. The operator is shown when: - the "Current File" library is selected, - the blend file name matches `*_bundle.blend`, and - the file is not already located in an asset library. The user can select a target asset library, then gets a "Save As" dialogue box to select where in that library the file should be saved. This allows for renaming, saving in a subdirectory, etc. The Asset Catalogs from the asset bundle are merged into the target asset library. The operator will refuse to run when external files are referenced. This is not done in its poll function, as it's quite an extensive operator (it loops over all ID datablocks). Reviewed by: Severin Differential Revision: https://developer.blender.org/D13312
2021-11-23BKE LibLink/Append: Add mechanism for external code to loop over link/append ↵Bastien Montagne
context items. Will be required for python's `bpy.data.libraries.load()` refactor.
2021-11-23BKE link/append: Add optional blendfile handle to libraries.Bastien Montagne
This enables calling code to deal with the blendfile handle themselves, BKE_blendfile_link then just borrows, uses this handle and does not release it. Needed e.g. for python's libcontext system to use new BKE_blendfile_link_append code. Part of T91414: Unify link/append between WM operators and BPY context manager API, and cleanup usages of `BKE_library_make_local`.
2021-11-23Cleanup: remove unnecessary "extern"Jacques Lucke
2021-11-23Cleanup: add missing pragma onceJacques Lucke
2021-11-23BKE link/append: Add optional blendfile handle to libraries.Bastien Montagne
This enables calling code to deal with the blendfile handle themselves, BKE_blendfile_link then just borrows, uses this handle and does not release it. Needed e.g. for python's libcontext system to use new BKE_blendfile_link_append code. Part of T91414: Unify link/append between WM operators and BPY context manager API, and cleanup usages of `BKE_library_make_local`.
2021-11-23Merge branch 'blender-v3.0-release'Jacques Lucke
2021-11-23Fix T93092: incomplete animation rendering of multi-layer exr compositionJacques Lucke
This was broken by rB0c3b215e7d5456878b155d13440864f49ad1f230. The caching of loaded exr files needed some special treatment. Differential Revision: https://developer.blender.org/D13313
2021-11-23Fix T92654: missing padding in spreadsheet cellsJacques Lucke
This was probably broken by rB5c2330203e11e0d916960218b07d88d2193bf526. For now just add the padding back in a spreadsheet specific way. Differential Revision: https://developer.blender.org/D13315
2021-11-23Fix T93090: crash with data transfer modifier and geometry nodesJacques Lucke
There was a missing normals layer that was requested by the data transfer modifier from the target object. The normal layer was correctly added to the target object. However, it never reached the data transfer modifier because the mesh was copied in `BKE_object_get_evaluated_mesh` (in the call to `get_mesh_for_write`) and the copy does not include the normals layer. The solution is to not use `get_mesh_for_write` here which was only used because `BKE_object_get_evaluated_mesh` returns a non-const `Mesh *`. Mid term, it should actually return a `const Mesh *` to avoid the confusion. Differential Revision: https://developer.blender.org/D13319
2021-11-23Cleanup: silent clang-tidy warning NULL vs nullptr.Jeroen Bakker
2021-11-23VSE: Add drag and drop handler for preview areaPeter Fog
For some users, dropping assets into preview area may be more practical due to space constraints or it may be just more intuitive. Reviewed By: ISS Differential Revision: https://developer.blender.org/D13311
2021-11-23VSE: Support drag and drop for datablocksPeter Fog
For using the Outliner and/or the Asset Browser as scene independent tools to organize a/v source material is necessary for the users to be able to drag and drop data blocks into the VSE. This was also an unfulfilled design target for the Outliner Gsoc project. Datablocks won't be used directly. Path to file will be passed to strip add operator instead. Reviewed By: ISS Differential Revision: https://developer.blender.org/D13304
2021-11-23Fix: Const warning in editmesh_knife.cErik
Fixes a warning caused by freeing a const pointer. This commit removes the const modifier. Differential Revision: https://developer.blender.org/D13321
2021-11-22Merge branch 'blender-v3.0-release'Julian Eisel
2021-11-22Assets: Generate light preview when making light object an assetJulian Eisel
We already supported previews for lights, just didn't actually use them when making a light object an asset. They were only used when making the light data itself an asset.
2021-11-22Fix grayed out preview generation button for light objectsJulian Eisel
Mistake in e7bea3fb6ed0. We should only skip preview generation for objects that don't support preview rendering, not completely forbid accessing preview data of such IDs.
2021-11-22Geometry Nodes: Rename legacy node filesHans Goudey
This will be useful to solve some issues with unity builds, which compiles different files together to improve build times.
2021-11-22CurveEval: Add total_length() and total_control_point_size() methodsJohnny Matthews
Add the following methods to the CurveEval class: total_length() : returns the total length of the curve without needing to allocate a new array total_control_point_size() : returns the total number of control points without needing to allocate a new array
2021-11-22UI: Use a map for block name lookupsErik
Use a map to speed up search for UI block names. Time to redraw the node editor was decreased from around 75-120ms to 40-70ms in a tree with many Geometry Nodes. Differential Revision: https://developer.blender.org/D13225
2021-11-22Fix T84493 issue with selection after boolean.Howard Trickey
According to Blender selection rules, selections should be flushed to containing elements. Added an EDMB_select_flush() after edit mode booleans or intersects are done. Hopefully this doesn't break any scripts that might have been depending on the old (broken) behavior.
2021-11-22BKE Link/Append: Use BLO's LibraryLink_Params.Bastien Montagne
This allows to reduce signature of several functions, and make it eaiser to integrate more higher-level usages later on. This should be a non-behavioral-change commit. Part of T91414: Unify link/append between WM operators and BPY context manager API, and cleanup usages of `BKE_library_make_local`.
2021-11-22Link/Append: Move main linking code (from WM) to use new instantiation code ↵Bastien Montagne
in BKE. This removes the last main usage of BLO's instantiation code. Also required some limited refactoring of BKE_blendfile_link_append's instantiation to make it more modular, and usable by both linking and appending code paths. NOTE: This should be a non-behavioral change commit. Part of T91414: Unify link/append between WM operators and BPY context manager API, and cleanup usages of `BKE_library_make_local`.
2021-11-22Link/Append: Move most of core link/append code from WM to new ↵Bastien Montagne
`BKE_blendflie_link_append` module. This will allow to expose all those advanced features of the WM operators to other parts of the code, like the python library context manager, copy/paste code, etc. This is expected to be a strictly no-behavioral-change commit. Part of T91414: Unify link/append between WM operators and BPY context manager API, and cleanup usages of `BKE_library_make_local`. Maniphest Tasks: T91414 Differential Revision: https://developer.blender.org/D13222
2021-11-22Moviecache: Fix potential memory corruption.Jeroen Bakker
`IMB_moviecache` is implemented as a singleton. When destructing the singleton via `IMB_moviecache_destruct` it will not be created anymore resulting inusage of unallocated memory and potentional memory corruption. When running blender this doesn't happen, but when creating images in test cases the moviecache should be able to be recreated after it is destroyed. Reviewed By: sergey Differential Revision: https://developer.blender.org/D13287