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
path: root/source
AgeCommit message (Collapse)Author
2022-02-11Cleanup: clang-formatCampbell Barton
2022-02-11Cleanup: Clang tidyHans Goudey
Mismatched parameter names and else after return.
2022-02-11Fix: Missing changes in recent "Curves" renameHans Goudey
More missing changes in fe1816f67fbc6aaf3. This will hopefully fix a Python API docs build error, and fixes the "Object Types Visibility" popover.
2022-02-11Merge branch 'blender-v3.1-release'Henrik Dick
2022-02-11Fix: Enable edge bevel weight in solidify if neededHenrik Dick
Complex Solidify creates edge bevel weights on the rim if the according vertex has some vertex bevel weight. If there are no edge bevel weights, they were left disabled even if vertex bevel weights are used.
2022-02-11Fix: Bevel vertex didn't use weights in some casesHenrik Dick
Bevel Vertices did not use vertex/bevel weights if the Width Type was set to Width or Depth.
2022-02-10Fix: Incorrect size used for reading curves dataHans Goudey
Copy and paste mistake in fe1816f67fbc6aaf383ec
2022-02-10Merge branch 'blender-v3.1-release'Hans Goudey
2022-02-10Fix T95458: Line art ignores curve objects with no evaluated meshHans Goudey
Some curve objects don't have an evaluated mesh at all, but line art currently assumes that all curve objects have one before converting it to a mesh internally. Fix this by checking if the curve object has an evaluated mesh before skipping it. The remaining problem is that evalauted from non-mesh objects or evaluated curves from non-curve objects, etc. will be ignored if "Allow Duplicates" is off. That's a different problem though. Differential Revision: https://developer.blender.org/D14036
2022-02-10Fix T95613: remove anonymous attributes when converting objectJacques Lucke
This is the same behavior as when applying a geometry nodes modifier that adds anonymous attributes.
2022-02-10Cleanup: Remove defenition for unused flagHans Goudey
2022-02-10Refactor: Move PBVH update tag out of MVertHans Goudey
This is part of the project of converting `MVert` into `float3`. (more details in T93602), The pbvh update flag is removed and replaced with a bitmap stored in the PBVH structure. This patch is similar to D13878. This is mainly setup for an eventual performance improvement by removing the extra data from mesh vertices, but if it's consistent with testing in the other patch doing the same thing for another "temp tag", then it may actually increase the speed of sculpt code slightly, since less memory needs to be loaded when checking/changing the flags. Differential Revision: https://developer.blender.org/D14000
2022-02-10Merge branch 'blender-v3.1-release'Jacques Lucke
2022-02-10Fix T95624: video texture not refreshing when changing offset in nodeJacques Lucke
The main issue is that the image and image user is not updated correctly in `rna_ImageUser_update`. `BKE_image_user_frame_calc` does not set the correct frame, because the image is null. Also `IMA_GPU_REFRESH` is not set for the same reason. When gpu materials are first created, it is expected that the frame is set correctly, and the flag is set if necessary. Therefore, somewhere during depsgraph evaluation, those have to be updated. The depsgraph node to do the update existed already. Now there is a new relation so that it is executed when the node tree changed, not only when the frame changed.
2022-02-10Minor cleanup: Use `ID_IS_LINKED`.Bastien Montagne
2022-02-10Fix T95334: Crash with no vertex normals in multires bakeHans Goudey
This is partially caused by a stupid mistake in cfa53e0fbeed7178c78 where I missed initializing the `vert_normals` pointer in `MResolvePixelData`. It's also caused by questionable assumptions from DerivedMesh code that vertex normals would be valid. The fix used here is to create a temporary mesh with the data necessary to compute vertex normals, and ensure them here. This is used because normal calculation is only implemented for `Mesh` and edit mesh, not `DerivedMesh`. While this might not be great for performance, it's potentially aligned with future refactoring of this code to remove `DerivedMesh` completely. Since this is one of the last places the data structure is used, that would be a great improvement. Differential Revision: https://developer.blender.org/D13960
2022-02-10Fix (unreported) over-resync from RNA detection code in linked cases.Bastien Montagne
While applying liboverrides on linked data, RNA code (in `rna_property_override_check_resync`) would detect a lot of false positive regarding IDs needing resync, because the temporary ID used to apply overrides was always local, breaking the libraries comparison check. NOTE: that whole 'apply liboverrides' code could use some refreshment, it did not change much from initila version several years ago, we now have better tools and control over non-main data. But for now the 'trick' in that commit should do the job, ultimately those temps IDs should never be put in Main at all.
2022-02-10Correction to previous Clang strict warning commitSergey Sharybin
Need to only pop diagnostic if it was really pushed. Pointed out by Aras Pranckevicius, thanks!
2022-02-10Merge branch 'blender-v3.1-release'Sergey Sharybin
2022-02-10Fix T95666: Crash when attempting multires linear subdivideSergey Sharybin
The crash was happening when the mesh had loose edges. Loose edges are not part of OpenSubdiv topology and hence should not be communicated to the refiner. Pass ta boolean flag indicating whether an edge is loose or not in the mesh foreach routines, which seems to be the easiest way.
2022-02-10LibOverride: Fix/improve handling of hierarchy root in tagged creation.Bastien Montagne
Decouple the reference (linked) root ID and the hierarchy (override) root ID. Previous code was assuming that the reference ID was always also tagged for override creation, which is true in current master, but cannot be assumed in general (and won't be true with partial resync anymore). Also add asserts to validate conditions that the reference/hierarchy_root variables must meet.
2022-02-10Merge branch 'blender-v3.1-release'Sergey Sharybin
2022-02-10Fix T95664: missing update after changing active output nodeJacques Lucke
2022-02-10GPencil: Update-on-write using update cacheFalk David
This implements the update cache described in T95401. The cache is currently only used for drawing strokes and sculpting (using the push brush). **Note: Making use of the cache throughout grease pencil will have to be done incrementally in other patches. ** The update cache stores what elements have changed in the original data-block since the last time the eval object was updated. Additionally, the update cache can store multiple updates to the data and minimizes the number of elements that need to be copied. Elements can be tagged using `BKE_gpencil_tag_full_update` and `BKE_gpencil_tag_light_update`. A full update means that the element itself will be copied but also all of the content inside. E.g. when a layer is tagged for a full update, the layer, all the frames inside the layer and all the strokes inside the frames will be copied. A light update means that only the properties of the element are copied without any of the content. E.g. if a layer is tagged with a light update, it will copy the layer name, opacity, transform, etc. When the update cache is in use (e.g. elements have been tagged) then the depsgraph will not trigger a copy-on-write, but an update-on-write. This means that the update cache will be used to determine what elements have changed and then only those elements will be copied over to the eval object. If the update cache is empty or the data block was tagged with a full update, we always fall back to a copy-on-write. Currently, the update cache is only used by the active depsgraph. This is because we need to free the update cache after an update-on-write so it's reset and we need to make sure it is not freed or read by other depsgraphs. Co-authored-by: @yann-lty This patch was contributed by The SPA Studios. Reviewed By: sergey, antoniov, #dependency_graph, pepeland, mendio Maniphest Tasks: T95401 Differential Revision: https://developer.blender.org/D13984
2022-02-10Fix T84486: NLA, disable "Sync Length" after splitBrad Clark
Turn off "Sync Length" when splitting an NLA strip. The NLA Strip-Action Clip has a setting called "Sync Length" that is on by default and helps to update the length of the clip to the current actions keyframes so the strip shows the entire actions stored animation. When you split one of these strip-action clips in the NLA to trim it shorter or to move it somewhere else in the NLA tracks to blend or work with, the "Sync Length" setting stays checked on. You can have many strips in the NLA that all look to the same action, if you split one strip , you now have two strips showing or linked to the same action. To see or edit keyframes on a strip, you enter tweak mode. When you exit tweak mode, if "Sync Length" is active on the strip-action clip settings, the strip length is changed/reset to match the action keys. When you have many clips, this causes all of them to evaluate and update no matter where they are in the NLA. This destroys/undoes all the user work to trim down and place the clips in the NLA. **Description of the proposed solution:** This patch/change would turn off, the "Sync Length" setting when the split tool was used on a strip/action clip to help protect the users choice to trim and keep the clip that length. It doesn't change the ability to turn the setting back on or off, it just makes sure that the user doesn't accidentally or unknowingly loose work. The same process happens when an action is created that has a "manual range" set that is different than the length of the actions start-end keyframes. It makes sense to do the same thing for the split tool. **Alternative solutions:** While the user could know this and turn off this setting by hand, it is easy to forget and or the user might think that it only happened to the one clip they were editing and not realize it happened to all the trimmed versions, changing the users choice without the user knowing it happened. **Limitations of the proposed solution:** It only fixes the split tool, if another tool was created and some how impacted the clip length we would need to have that tool also take the sync length into account. Reviewed By: sybren Maniphest Tasks: T84486 Differential Revision: https://developer.blender.org/D10168
2022-02-10Fix compilation with strict Clang flagsSergey Sharybin
There is no `-Wformat-truncation` warning in Clang, so tweak checks around diagnostics pragma accordingly.
2022-02-10Merge branch 'blender-v3.1-release'Sergey Sharybin
2022-02-10Fix strict warning initializing texture result in compositorSergey Sharybin
From a strict language point of view the code required a braces around `trgba` initialization. But it is easier to rely on the fact that fields which are not specified are zero-initialized.
2022-02-10Fix invalid creation of partial image updaterSergey Sharybin
2022-02-10Cleanup: quiet warnings including RE_pipeline.h directlyCampbell Barton
2022-02-10Cleanup: Clang tidy, unused variabel warningsHans Goudey
2022-02-10Cleanup: copyright in headers, spelling in commentsCampbell Barton
- Order year consistently. - Minor consistency (case, double-spacing). - Correct typos.
2022-02-10Cleanup: remove overly detailed contact info, correct md5 copyrightCampbell Barton
Also remove copyright text with no assignment.
2022-02-09Merge branch 'blender-v3.1-release'Hans Goudey
2022-02-09Fix T95620: Crash When Entering Edit Mode on a CurveHans Goudey
Under some circumstances, simply adding a curve object and going to edit mode would cause a crash. This is because the evaluated `CurveEval` was accessed but also freed by the dependency graph. The fix reverts the part of b76918717dbfd8363f that uses the `CurveEval` for the curve object bounds. While this isn't ideal, it was the previous behavior, and some unexpected behavior with object bounds is much better than a crash. Plus, given the plans of using the new "Curves" data-block for evaluated curves, this situation will change relatively soon anyway.
2022-02-09VSE: Fix sound strip not aligned with movie stripRichard Antalik
Strip aligning wasn't done when length of 2 strip is equal, but since these strips are aligned according to position in stream this can produce offset.
2022-02-09Merge branch 'blender-v3.1-release'Jacques Lucke
2022-02-09Fix T95612: only overwrite existing attributes with matching domain and typeJacques Lucke
Also fixes T95611 and T95610. Differential Revision: https://developer.blender.org/D14051
2022-02-09Cleanup: Add newline in error message.Jeroen Bakker
Increases readability during debugging.
2022-02-09Cleanup: non-standard license formatting, minor changesCampbell Barton
2022-02-09Cleanup: make file headers more consistentCampbell Barton
Also some descriptive text into doc-strings.
2022-02-09VSE: Use float for transformation offsetRichard Antalik
When image position is animated, float makes movement look smoother.
2022-02-09BLI: wrap parallel_invoke from tbbJacques Lucke
2022-02-09Merge branch 'blender-v3.1-release'Jacques Lucke
2022-02-09Fix T95640: missing null check in previous commitJacques Lucke
2022-02-09Cleanup: Better naming in lib_remap.Jeroen Bakker
Renames is_never_null to violates_never_null.
2022-02-09Adjust "Show Backface" tool tip to be more accurateAlaska
Reviewed By: fclem Differential Revision: https://developer.blender.org/D13849
2022-02-09Fix small grammatical mistake in Refraction Depth tooltipAlaska
Reviewed By: jbakker Differential Revision: https://developer.blender.org/D13850
2022-02-09Merge branch 'blender-v3.1-release'Jacques Lucke
2022-02-09Fix T91840: do not create invalid links when inserting a nodeJacques Lucke
Differential Revision: https://developer.blender.org/D14050