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-01-11Fix T93704: StructRNA.path_resolve fails silently with missing keysCampbell Barton
Resolving the path to a missing pose-bone (for example), was not raising an error as it should have. Regression introduced in f9ccd26b037d43f2490d1f0263e45e775d30473d, which didn't update collection lookup logic to fail in the case the key of a collection wasn't found.
2022-01-11Fix T93438: Auto linking do not work for custom socketsOmar Emara
Currently, custom sockets are no longer supported for automatic linking when dropping a node on a link. This is because SOCK_CUSTOM is given a negative priority and is ignored. To fix this, SOCK_CUSTOM is now given the lowest priority and the rest of the sockets got their priority incremented. Reviewed By: Jacques Lucke Differential Revision: https://developer.blender.org/D13403
2022-01-11Fix T93591: Random Value node first and last value proportionMoritz Röhrich
This patch replaces `round_fl_to_int` with `floor` and adjusts the maximum value accordingly. The call to `round_fl_to_int` is problematic here because it messes with the probability distribution at the edges of the value range, meaning the first and last values were only half as common as all other values. Since `round_fl_to_int` does `floor(val + 0.5)`, it will not introduce misbehavior in edge cases. Differential Revision: https://developer.blender.org/D13474
2022-01-11Fix T93871: Image.has_data returns True for images that failed to loadBrecht Van Lommel
2022-01-11Fix T84710: Instances with only mesh edges or vertices are invisibleHans Goudey
Wire-only meshes have a special case in the overlay drawing to give the wire shader a special color (which avoids the lines being dashed, somehow). The fast path for duplis didn't have that special case. Differential Revision: https://developer.blender.org/D13196
2022-01-11Fix T93691: Crash when loading custom thumbnail in custom libraryJulian Eisel
This was an issue with the mixed list of external assets and assets from the current file. When closing the File Browser to select the custom preview image, the assets from the current file would be cleared for reread, to make sure we display up-to-date file data. That is because the workspace of the temporary File Browser was deleted, causing a change in the file data (main data-base). The reread would happen in a background thread, meaning it might not finish before the custom preview operator runs and queries the active asset. So the preview operator would get the wrong active asset from context. Two fixes were needed: * Make sure current file data is reread before the operator runs, by doing this partial rereading on the main thread. * Ensure the asset list (in fact file list) order stays consistent over rereads. If multiple assets with the same name were shown, the operator might also have gotten the wrong asset, also leading to a crash. Additionally the file operation handler should probably poll before executing, to fail gracefully at least (not crash).
2022-01-11Fix T93892: Changing bone name leaves non-functional vertex groupPhilipp Oeser
The corresponding vertex group was renamed properly, but the armature influence was broken for that bone. Caused by {rB3b6ee8cee708}. Since above commit, vertex group names are stored on object data (mesh/ lattice/gpencil) and if we update these, we have to inform dependency graph to have immediate effect. Maniphest Tasks: T93892 Differential Revision: https://developer.blender.org/D13526
2022-01-11Fix T93858: Zstd-compressed .blend files from external tools aren't recognizedLukas Stockner
The issue here was that after the seek table check, the underlying file wasn't rewound to the start, so the code that checks for the BLENDER header immediately reaches EOF and fails. Since Blender always writes files with a seek table, this bug isn't triggered by files saved in Blender itself. However, files compressed in external tools generally don't have a seek table.
2022-01-11Fix T93869: snap cursor may fail in orthographic viewGermano Cavalcante
Float precision issues cause the `ED_view3d_win_to_3d_on_plane` to return a value even when the view ray is parallel to the plane. A more general solution might be desired in this case, as other areas that use `ED_view3d_win_to_3d_on_plane` might have the same problem. For now, just work around the problem for the snap cursor.
2022-01-11Fix T93728: Greasepencil separate will loose all vertex groupsPhilipp Oeser
Caused by {rB3b6ee8cee708} The raw data is copied here correctly [`BKE_gpencil_stroke_weights_duplicate` in `BKE_gpencil_stroke_duplicate`] but the vertex groups names are missing. Prior to above commit is was enough to have `ED_object_add_duplicate` (this seemingly took care of duplicating object's defbase). Now vertex groups names sit on the `bGPdata` rather than the `Object`, and since the separate operation creates **new** `bGPdata` we have to copy vertex groups names - and active index - over [via `BKE_defgroup_copy_list`]. Maniphest Tasks: T93728 Differential Revision: https://developer.blender.org/D13509
2022-01-11Fix T93467: Use world bg color for pose library previewsYuchen Wen
Use the World viewport color when rendering pose library previews. The World's viewport color is chosen instead of the World shading nodes, as the latter would require rendering with `OB_RENDER` (instead of `OB_SOLID`), which would take considerably longer. Manifest Task: T93467 Reviewed By: sybren Differential Revision: https://developer.blender.org/D13470
2022-01-10Fix T93521: Single point NURBS crash in resample nodeHans Goudey
The resample node didn't handle the case of when a spline didn't have any evaluated points. For poly and Bezier splines we should never hit this case, but it is expected when the number of NURBS control points is smaller than its order, so we have to handle the case here. It's not that obvious what to do in this case, there are a few options: - Remove the bad splines from the result - Generate empty splines for those inputs - Skip resampling the bad splines, copy them to the result - Arbitrarily generate single point splines I chose option three, just skipping the "bad" splines. Since the node already has a selection input, this can be described by just extending that. "Splines with no evaluated points are implicitly deselected." The first option would probably be valid too though. Differential Revision: https://developer.blender.org/D13434
2022-01-10Fix T93314: Thumbnails not drawn with default scaleRichard Antalik
Decrease threshold for drawing thumbnails. This was unintended change in daaa43232d34 that was overlooked.
2022-01-10VSE: Fix strip with mask modifier not blendingRichard Antalik
Set `ibuf->planes` to `R_IMF_PLANES_RGBA` because mask modifier adds transparent areas to image.
2022-01-10Fix T93707: Dragging the tweaked NLA strip causes crashSybren A. Stüvel
Earlier code assumed that the active strip was on the active track. This commit detects when this assumption doesn't hold, and adds a more thorough search of the active strip.
2022-01-10Fix T93611: Curve modifier crash in editmode in certain situationsPhilipp Oeser
Caused by {rB3b6ee8cee708} Above commit was trying to get the vertexgroup from the mesh that is passed into `deformVertsEM` (but that can be NULL). When can it be NULL, when is is non-NULL? `editbmesh_calc_modifiers` only passes in a non-NULL mesh to `deformVertsEM` under certain conditions: - a non-deform-only modifier is handled currently - a non-deform-only modifier preceeds the current modifier - a deform-only modifier preceeds the current modifier (and the current one depends on normals) So the passed-in mesh cannot be relied on, now get the vertex group from the context object data (like it was before the culprit commit). Related commit: rB8f22feefbc20 Maniphest Tasks: T93611 Differential Revision: https://developer.blender.org/D13487
2022-01-10Fix T93732: Snap Cursor not working after changing Add Object settingsGermano Cavalcante
`g_data_intern.state_default.gzgrp_type` is a very specific member and cannot be set to default.
2022-01-10Fix T93388: dropping object on grid in orthogonal view misses the floor planeGermano Cavalcante
`ED_view3d_win_to_3d_on_plane` does not use the `clip_start` and `clip_end` values of the scene, so the `do_clip` option can be misleading especially in the orthographic view where the `clip_start` is negative. For now, don't use the `do_clip` option in orthographic view.
2022-01-10Fix T93574: Asset triangulating a meshCampbell Barton
Correct assert for edit-mesh normal calculation.
2022-01-10Fix T93541: Use warning instead of error for exceeding layer limitsJesse Yurkovich
Instead of using RPT_ERROR, use RPT_WARNING which will not raise an exception to Python. This broke some scripts (including FBX import) which already check for a None return value. Ref D13458 Reviewed By: campbellbarton
2022-01-10Fix T93563: Crash subdividing with overlapping tri and quadCampbell Barton
The first loop was left out when finding the split edge boundary. Error from f2138686d9d8c105ebf8884774fd7e4d8ff239a1.
2022-01-10Fix T93508: Shift+F1 to switch to asset browser randomly crashesJulian Eisel
2022-01-10Fix T92561: unstable particle distribution with Alembic filesKévin Dietrich
When enabling or disabling a Mesh Sequence Cache modifier of an Object with a hair particle system, the hair would switch positions. This is caused because original coordinates in Blender are expected to be normalized, and toggling the modifier would cause the usage of different orco layers: one that is normalized, and the other which isn't. This bug exposes a few related issues: - if the Alembic file did not have orco data, `MOD_deform_mesh_eval_get`, used by the particle system modifier, would add an orco layer without normalization - `MOD_deform_mesh_eval_get` would also ignore the presence of an orco layer (e.g. one that could have been read from Alembic) - if the Alembic file did have orco data, the data would be read unnormalized To fix those various issues, original coordinates are normalized when read from Alembic and unnormalized when written to Alembic; and a new utility function `BKE_mesh_orco_ensure` is added to add a normalized orco layer if none exists on the mesh already, this function derives from the code used in the particle system. Reviewed By: brecht Maniphest Tasks: T92561 Differential Revision: https://developer.blender.org/D13306
2022-01-06Fix T91680: viewport selection broken in macOS x86 build with Xcode 13Brecht Van Lommel
There is an apparent compiler bug here, tweak the code to avoid it. This did not affect official builds as we were still using Xcode 12.
2022-01-06Bump version to 3.0.1 release candidateBrecht Van Lommel
2021-12-02Blender 3.0 - version bump -> releasev3.0.0Dalai Felinto
2021-12-02Fix `Action.asset_data["is_single_frame"]` set incorrectlySybren A. Stüvel
The asset metadata custom property `["is_single_frame"]` was set incorrectly. Since this is intended for forward compatibility, including being covered by the asset metadata indexing, it's important to have it set correctly from the first release of Blender that includes the asset browser. Differential Revision: https://developer.blender.org/D13452
2021-12-02Fix T93548: Appended (material) assets don't have a fake userJulian Eisel
Since our design is to always keep data-blocks marked as assets on exit, and our technical design for this is to do this via fake users, ensure the fake user is set for an appended asset. Reviewed by: Bastien Montagne Differential Revision: https://developer.blender.org/D13443
2021-12-02Fix T93555: crash when muting nodes with multiple internal linksJacques Lucke
The crash happened because I was incorrectly and inconsistently assuming that a socket is part of at most one internal link. However, this is not the case. In geometry nodes, an input socket can be internally linked to multiple output sockets. In the general case, an output could also be linked to multiple input sockets, even though we don't have that in Blender yet. Dalai gave green light to cherry pick this fix for 3.0.
2021-12-02Fix T93525: Crash with curve/text armature bone gizmoHans Goudey
The problem is that drw_batch_cache_generate_requested_delayed is called on the object, which uses the original object data type to choose which data type to get info for. So for curves and text it uses the incorrect type (not the evaluated mesh like we hardcoded in the armature overlay code). To fix this I hardcoded the "delayed" generation to only use the evaluated mesh. Luckily it wasn't use elsewhere besides this armature overlay system. That seems like the simplest fix for 3.0. A proper solution should rewrite this whole area anyway. Differential Revision: https://developer.blender.org/D13439
2021-12-01Fix(unreported): LineArt intersection mask logic error.YimingWu
The stroke generation call mistakenly uses all enabled types to check intersection mask, the correct behavior is to use individual edge(chain) type.
2021-12-01LineArt: Use consitent view vector direction.YimingWu
Now do not invertes view vector in different stages of calculation.
2021-11-30Fix T93368: Dragging Blends Without PreviewsHarley Acheson
Unfortunately the drop logic for file-path based drag & drop checks the used icon for its logic. This is very bad and should be changed. But doing this involves some changes that are better not done during bcon4, so for now stick to it and update the icon check. Reviewed by: Julian Eisel Differential Revision: https://developer.blender.org/D13383?id=45314
2021-11-30Fix T93353: Reload Library Override file loses Constraints, take II.Bastien Montagne
When adding `INSERT` operations over RNACollection items, rna diffing code did not properly report the properties as not being equals. This in turn triggered the 'purge unused exiting override properties' mechanism, thus deleting the exitsting (valid) insert override property operation. NOTE: This should also be backported to 2.93, and probably 2.83. Reviewed By: sybren, jbakker Maniphest Tasks: T93353 Differential Revision: https://developer.blender.org/D13426
2021-11-30Asset Bundle Copy button: only report each external dependency onceSybren A. Stüvel
The `ASSET_OT_bundle_install` operator only works when the blend file is self-contained. It reports any external dependencies. Before this patch: - every dependency was mentioned, even when it repeated the same filename over and over again, and - multiple dependencies were all mentioned in the error popup, potentially filling the screen. This is now resolved by: - only reporting each external file once, and - referring to the console when there are multiple external dependencies. Reviewed by: severin, dfelinto Differential Revision: https://developer.blender.org/D13413
2021-11-30Fix T92577: Cannot open shortcut folders on WindowsJulian Eisel
`file.select()` wasn't handling redirects as it should when it also opens directories. This was only uncovered by a change in the keymap. Reviewed By: Bastien Montagne, Harley Acheson Differential Revision: https://developer.blender.org/D13388
2021-11-30VSE: Disable interactivity in combined viewRichard Antalik
Combined view of timeline and preview causes seemingly unpredictable behavior after some operators have been allowed to run in preview region. Disable new features in this combined view, so behavior should be consistent with previous versions. ref: https://developer.blender.org/T92584 Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D13419
2021-11-30BPath traversing: allow skipping weak library referencesSybren A. Stüvel
Add flag to `BKE_bpath_traverse_id()` and friends to skip weak references (see below). This makes a distinction between "this blend file depends on that file" and "this blend file references that file, but doesn't directly use its data". This distinction is for the Asset Bundle install operator, which refuses to copy the blend file when it's not self-contained. Weak references are those that are not directly used by the blend file, but are still present to allow path rewriting. For example, when an Asset is loaded its originating blend file is saved in `ID::library_weak_reference`; this reference is purely for deduplication purposes, and not for actually loading any data. Reviewed by: mont29, brecht Differential Revision: https://developer.blender.org/D13412
2021-11-29Fix T93310: crash due to broken image pathsJacques Lucke
The crash was caused by allocating an uninitialized amount of memory. This fix initializes a bunch of variables that could cause the error. It should be possible to also fix this in the function that actually uses the uninitialized memory, but that could cause unknown consequences that are a bit too risky for 3.0. Just initializing some variables should be safe though. For more details see D13369. Differential Revision: https://developer.blender.org/D13369
2021-11-29Fix T93439: Armature widgets from hidden collections are invisibleSergey Sharybin
The are few things in the dependency graph which lead to the issue: - IDs are only built once. - Object-data level (Armature, i,e,) builder dependent on the object visibility. This caused issues when an armature is first built as not directly visible (via driver, i.e.) and then was built as a directly visible. This did not update visibility flag on the node for the custom shape object. The idea behind the fix is to go away form passing object visibility flag to the geometry-level builders and instead rely on the common visibility flush post-processing to make sure certain objects are fully visible when needed. This is the safest minimal part of the change for 3.0 release which acts as an additional way to ensure visibility. This means that it might not be a complete fix (if some configuration was overseen) but it should not make currently working cases to not work. The fix should also make modifiers used on rigify widgets to work. The more complete fix will have `is_object_visible` argument removed from the geometry-level builder functions. Differential Revision: https://developer.blender.org/D13404
2021-11-29Fix T93384: Objects with Constraints to curves have wrong locations on file loadSergey Sharybin
Regression since 3.93 caused by 752c6d668bcb. Follow the code from 2.93 which was always leaving curve modifiers evaluation with a valid and clean state of the bounding box. This is also what was proposed and agreed on in the following design task: T92206: Bounding Box: compute during depsgraph evaluation Tested with files from T90808 and T93384. For the 3.0 going with the safest and minimal change. The rest of the bounding box un-entanglement is to happen outside of the stable branch. Thanks The patch is based on the code from Philipp Oeser and investigation by Germano Cavalcante and Dr. Sybren A. Stüvel, thanks! Differential Revision: https://developer.blender.org/D13409
2021-11-29Fix T92628: .blend thumbnail renders black with Cycles 3D viewport renderBrecht Van Lommel
Don't use Cycles for rendering thumbnails, fall back to Solid shading. Differential Revision: https://developer.blender.org/D13406
2021-11-29Fix T93431: Crash when empty is marked as assetPratik Borhade
Make `ED_preview_id_is_supported(ID *)` NULL-safe. It's semantically valid, as it's not possible to render a preview of a NULL ID. The crash was introduced in 481f032f5cbe2cd3c36c9ef516670fd9e06db25f Reviewed By: sybren, jbakker Maniphest Tasks: T93431 Differential Revision: https://developer.blender.org/D13398
2021-11-27Fix build error with TBB 2021 and booleansBrecht Van Lommel
Linux distributions are using newer TBB versions than official releases, and TBB 2021 is an API breaking release. In general we should avoid using TBB directly and go through the abstractions in BLI_task.hh, though there is no abstraction for this. For 3.0 the safe option is to just not cancel the task but instead early out in the lambda function. Given the grain size of 2048 there should be no significant performance difference. Differential Revision: https://developer.blender.org/D13382
2021-11-25Blender 3.0 bcon4 - change release cycle to release candidateDalai Felinto
This is still a rolling release candidate with new builds every day as a preparation to the final release.
2021-11-25Fix T90082: Autoscrolling after renaming in the File Browser brokenPhilipp Oeser
Caused by 6b0869039a40 Above commit introduced selection after renaming. This includes calling `file_select_deselect_all` [which resorts and refilters]. So now, to have the correct file for scrolling, get it again after sorting by calling `file_params_find_renamed` again. Differential Revision: https://developer.blender.org/D13368
2021-11-25Fix missing margin below panelsJulian Eisel
A minor cosmetic fix. When the view was scrolled all the way to the bottom, the lowest panel would end right on the view edge. The scrollable view should get the same margin at the bottom as used at the top.
2021-11-25Fix T92313: Heading of redo panel is not aligned properlyJulian Eisel
This corrects some alignments issues through new margins introduced in 93544b641bd6. Basic idea of this fix is to only add the new margins when drawing a panel with background. These margins were added specifically for the background boxes, so that makes sense. Alternative fix to D13199. This also fixes some margings added unintentionally in mentioned commit. There is a little jump of the toolbar and the tabs in the Properties when comparing the UI without this fix to 2.93: {F12158085} {F12158039} The jump is gone with this fix applied (compare to the 2.93 screenshot): {F12158064} While not a serious issue, this confirms that this fix actually tackles the root of the issue.
2021-11-25Fix T92278: Small size of previews in the shading popoverJulian Eisel
Don't use the side padding for menu item contents when displaying previews or icons in a row or grid layout. This can cause problems for the preview drawing and doesn't make sense to draw there anyway. This not only fixes the mentioned issue, but also too small heighlight for the collection color tag in the Outliner context menu. Alternative to and similar to D13125.
2021-11-25Fix T93274: Assigning asset catalog doesn't mark file as modifiedSybren A. Stüvel
Assigning a catalog to an asset via drag-and-drop in the asset browser now creates an undo step. Not only does this allow undoing the action, it also tags the blend file as modified. Reviewed by: Severin Differential Revision: https://developer.blender.org/D13370