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
2022-06-03Spreadsheet Editor: Support int 8 attributeDalai Felinto
This was leading to some crashes and warnings such as: "Code marked as unreachable has been executed. Please report this as a bug." Differential Revision: https://developer.blender.org/D15116
2022-06-03Fix T98558: island selection in UV editor can crashPhilipp Oeser
Regression in [0]. When zoomed in, we can be within the face of an island but too far from an edge, in this case uv_find_nearest_face_multi_ex is used instead of uv_find_nearest_edge_multi with the consequence that hit.l cannot be used in uvedit_uv_select_test (it is NULL). Instead, use uvedit_face_select_test instead in this case. [0]: d356edf420ba13b3a544dcc598a0e31a36e1d86c Reviewed By: campbellbarton Ref D15100
2022-06-02Fix T98546: Crash with multires bake and zero levelsHans Goudey
The problem was that copying a `CDDerivedMesh` (`CDDM_copy`) doesn't copy the `vert_normals` reference that it takes from a mesh. Since this entire area is almost completely broken anyway (mainly in terms of ownership handling), for now we can just avoid copying the `DerivedMesh` in the zero levels case. Longer term, this area should be refactored to remove `DerivedMesh` and use the newer subdivision evaluation system. Differential Revision: https://developer.blender.org/D15099
2022-06-01Fix T98469: Crash trying to add an object to a linked collection that is ↵Bastien Montagne
linked to multiple scenes. Crash happened because code could not find a valid base in current scene after adding the object, added some checks for that. Root of the issue was wrong assumptions in `BKE_object_add` logic, which would pick the first valid ancestor collection in case initially selected collection was not editable. In some case, this could pick a collection not instanced in the current scene's view layer, leading to not getting a valid base for the newly added object. Addressed this by adding a new variant of `BKE_collection_object_add`, `BKE_collection_viewlayer_object_add`, which ensures final collection is in given viewlayer.
2022-06-01Fix T89726: Fix hitbox of axis gizmo in UV EditorChris Blackbourn
Use the scale from the wmGizmo.matrix_final as a reference for the arrow head-size. Reviewed By: campbellbarton Ref D15056
2022-06-01Fix T96984: Create new image.browse operator for uiTemplateImage layoutsJesse Yurkovich
The existing BUTTONS_OT_file_browse operator that's used for uiTemplateImage layouts fails to work correctly with UDIM textures. This is mainly due to it not realizing that it must tokenize the filepath before signaling that an update has been made. It also doesn't work correctly when executing its SHIFT-click behavior to open the image in an external application. Lastly, it doesn't set the filters to Images and Movies which is suboptimal for the user. The new operator takes the unique features of BUTTONS_OT_file_browse and creates a customized variant better suited for images. Differential Revision: https://developer.blender.org/D14824
2022-06-01Fix T97408: Temporary fix for attribute convert undoJoseph Eagar
Sculpt undo now detects if an attribute layer has changed type/domain and unconverts it back. This is a temporary workaround to a more fundamental bug in the undo system. Memfile undo assumes it can always rebuild the application state from the prior undo step, which isn't true with incremental undo systems. The correct fix is to push an extra undo step prior to running an operator if an incremental undo system is active and the operator is using memfile undo.
2022-05-31Fix T98364: Remove improper OPTYPE_UNDO flagsJoseph Eagar
Removed OPTYPE_UNDO flags from the swap brush colors and sample color operators. These types of operators are not supposed to be undoable in the first place. Also memfile undo is too buggy for it.
2022-05-31Fix wrong asset dropped when dragging from loc. of just cleared assetJulian Eisel
See previous commit for an explanation of what went wrong. Similar to the fix there, we also have to update the dragged data (e.g. the data-block) referenced by the button. Committing separately since this could cause further issues.
2022-05-31Fix T95394: Crash when dragging from location of just cleared assetJulian Eisel
In Blender buttons are recreated over redraws, except of the active button which is kept alive, and replaces the new version of itself in the new redraw. In order to do that, the button needs to be recognized. This process of recognizing and matching buttons from different redraws isn't always bullet-proof. That's okay-ish, but we have to make sure that the relevant data of the old active button is updated with the newest data. Here the matching would go wrong, and the new active button was recognized as the old active button, which was in fact removed when the asset was cleared. This patch makes sure the image buffer attached to the buttons is updated when buttons were recognized as matching. Note that the dragging will still use the wrong data-block, this will be fixed in the following commit.
2022-05-31Fix T98403: Crash applying modifiers on non-mesh objectsHans Goudey
The operator assumed it was called on a mesh object, which has mostly been the case because of lack of support for other object types, but the new curves object is supported, which is the situation in the report. Differential Revision: https://developer.blender.org/D15063
2022-05-31UI: Correct sculpt tooltipsJulien Kaspar
Some of the tools in sculpt mode were still referring to the previously experimental sculpt vertex colors. They should instead refer to color attributes. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D15073
2022-05-30Fix T96157: Make size of Frame Node label independent from Line WidthDominik Fill
This commits corrects the calculation of the Frame Node label size, making it independent of the 'Line Width' user preference. Since `U.dpi` is actually DPI divided by `U.pixelsize` and `U.pixelsize` is calculated from line-width multiplying by `U.pixelsize` undoes the connection between line-width and label size. It now stays the same, regardless of the line-width setting. Reviewed By: Julian Eisel, Harley Acheson Differential Revision: https://developer.blender.org/D14338
2022-05-30Fix T98446: Spreadsheets filter not working on Name columnDalai Felinto
2022-05-30Fix T98368: Shading artifacts on paint/mask anchored sculpt brushesJoseph Eagar
I'm not sure what is causing this. Vertex normals get corrupted for paint and mask sculpt brushes but not the normal geometric ones. Since we don't actually need to recalculate normals here to begin with I've just disabled it. The code now calls the appropriate node mark update function based on the sculpt tool.
2022-05-29Fix (unreported): cyclic snap of curve handlesGermano Cavalcante
The logic of skipping selected handles was inverted and confusing.
2022-05-28Re-fix T97366: Support single-file UDIMsJesse Yurkovich
The original fix for T97366 was too restrictive and breaks real-world cases of single-file UDIM textures. See D13297 for an example. This patch effectively reverts the original fix and instead fixes the downstream code to accept single-file ranges as necessary. Note: This means it is very important for users to make use of the "UDIM detection" option during `image.open` or drag n' drop scenarios in order to declare their intent when loading their files. Differential Revision: https://developer.blender.org/D14853
2022-05-27Fix T97790: Crash in Outliner "Blender File" mode with old filesJulian Eisel
IPO data-block types are deprecated since 2.5. Don't show them in the Outliner at all. Differential Revision: https://developer.blender.org/D15049
2022-05-27GPencil: Fix unreported Bake animation errorAntonio Vazquez
This bug was introduced in commit https://developer.blender.org/rB5188c14718c56e4d088d3c5bb3ce3ed9ed8b7bdc because the object transform was not applied when baking the object. Thanks to @frogstomp for the head up.
2022-05-26Fix display error after sorting mesh elementsCampbell Barton
Sorting faces caused the tessellation data to be outdated, making faces show the wrong materials. Re-calculate tessellation when re-ordering faces.
2022-05-25Fix T98349: Knife project resulting selection is wrongCampbell Barton
Regression in [0] which removed the call to BVH-tree recalculation before calculating the selection. Instead of recalculating the BVH-tree, postpone recalculating mesh data until after the selection has been calculated. [0]: 6e77afe6ec7b6a73f218f1fef264758abcbc778a
2022-05-25Cleanup: remove context argument from EDBM_mesh_knifeCampbell Barton
Added in [0] but isn't needed as all needed variables are in the ViewContext. Avoid passing in the context is it makes debugging issues with MESH_OT_knife_project more difficult to investigate since it's possible values written to the ViewContext are ignored. [0]: 6e77afe6ec7b6a73f218f1fef264758abcbc778a
2022-05-24Fix T95706: Material asset not applied if appended and then linkedJulian Eisel
8f79fa9c6780 was an attempt to fix this already, but it didn't quite work. Problem was that the tooltip was messing with the drop-box and operator properties, setting the name property for its own internal logic. This name property would then be used rather than the session UUID to query the material, which gave the wrong material (linking can result in multiple IDs of the same type with the same name). A followup commit will further sanitize this.
2022-05-24Fix possible lingering around of ID after asset dropping failedJulian Eisel
More and more of the drop operations are being switched to use the ID's session UUID rather than the name, but the cleanup after a drop operator was cancelled assumed they would set the name. They will now first attempt to use the session UUID and fallback to the name if needed.
2022-05-24Fix (studio-reported) bad re-assigning of new liboverride from ID template ↵Bastien Montagne
widget. Shift-click on the 'linked' button in an ID template widget would fail to properly remap that usage of the linked ID to the newly created liboverride.
2022-05-24Redraw Motion Paths panel after creating motion pathSybren A. Stüvel
Add notifier such that the Motion Paths panel in the Object Properties tab gets redrawn, after using the Create Motion Path button. The reason it didn't update was that the button actually triggers a popup, and then executes in the context of that popup. It now actually emits a `ND_DRAW_ANIMVIZ` notifier, and ensures that the panel redraws on that.
2022-05-24Fix T98152: Named Attribute node changes data type for non-existant attributesJacques Lucke
Skip changing the data type in the node if it is not known.
2022-05-24Fix T98328: missing depsgraph update after adding node groupJacques Lucke
Adding node groups can change depsgraph relations, so the depsgraph has to be rebuild.
2022-05-23Fix further issues when mixing link & append for asset drag & dropJulian Eisel
917c096be6b9 applied to objects only, this also applies the same fix for the general 3D View drop operations, e.g. used for dragging materials, images, worlds, etc. This is needed to fix T95706, but apparently something else is still going on. Needs further investigation.
2022-05-23Cleanup: Move new utilities for ID lookup operator propertiesJulian Eisel
Move them to a more accessible place, so that other operators in different files can use them. The following commit needs this.
2022-05-23Fix possible issues when mixing link & append for asset drag & dropJulian Eisel
The operators to handle object drag and drop (from the asset browser, outliner, etc.) used the object name to find the object to add and place. This is problematic with linking and/or library overrides, since this may lead to multiple objects with the same name. So the wrong object would be used by the drop operators. Partially fixes T97320. T95706 probably needs the same fix but for materials. As a side-effect, the "Name" button won't show up in the Adjust Last Operation panel anymore. This isn't really useful, and I doubt this was ever intentionally exposed in the UI.
2022-05-23Fix T88570: Crash when saving after pressing ctrl+S twice.Julian Eisel
Existing code to replace the file operation was failing when done from the window for the file operation itself. Basically, this patch does two things: - Implement a well defined window context to use as the "owner" or "root" of the File Browser. This will be used for managing the File Browser and to execute the file operation, even after the File Browser was closed. - Ensure the context is valid when dealing with file File Browser event handlers. Previously the window context just wasn't well defined and just happened to work well enough in most cases. Addressing this may unveil further issues, see T88570#1355740. Differential Revision: https://developer.blender.org/D13441 Reviewed by: Campbell Barton
2022-05-23Cleanup: clarify what is scene linear color space in conversion conversionBrecht Van Lommel
* Rename ambiguous rgb to scene_linear in some places * Precompute matrices to directly go to scene instead of through XYZ * Make function signatures more consistent
2022-05-23Fix T97237: dragging custom node group asset adds broken nodeJacques Lucke
Differential Revision: https://developer.blender.org/D15013
2022-05-23Fix T98316: geometry nodes stop updating after duplicationJacques Lucke
This was a missing depsgraph update.
2022-05-20Fix popup menu memory activating labels when names matched menu itemsCampbell Barton
When labels in popups (typically headings) matched the name of a button, the label would be activated instead of the button. This caused the unwrap menu in the UV editor not to re-select "Unwrap" when opening a second time.
2022-05-19Fix T98230: Automatic Constraint doesn't work if cursor is not movingGermano Cavalcante
The change was kind of intentional on {rB21e72496a629}. That commit made mouse movement to "select" the contraint in Auto Constraint a requirement. This deduplicated the code a bit, but this requirement is not comfortable for the first "selection" of the contraint. So the constraint "selection" is now done in two ways: - If there is no contraint, the "selection" is done immediately; - If there is already a constraint, the "selection" is delayed by 1 event to simulate a constraint cancellation if there is no mouse movement.
2022-05-19Fix (studio-reported) more possibilities to edit content of linked/override ↵Bastien Montagne
collections. Existing code for the `Move` operator, and some `Collections` panel operations (Object properties) was absolutely not override-safe, and sometimes not even linked-data safe.
2022-05-19Fix T93779: Python is unable to set axis aligned viewsCampbell Barton
It wasn't possible to temporarily orbit the view, then set back to an axis-aligned view. Details: - It was possible to change RegionView3D.view_rotation while the view kept the axis alignment value (Top, Left, Front .. etc) which displayed in the viewport overlay. Now changing the view rotation directly or via "view_matrix" resets the axis-alignment - clearing when the view is no longer axis-aligned or assigning the newly aligned axis. - RegionView3D.is_orthographic_side_view added in [0] could be assigned but wasn't useful as it treated an enum as a boolean only setting the RegionView3D.view to RV3D_VIEW_USER or RV3D_VIEW_FRONT. Now enabling this aligns the viewport rotation to it's closest axis-aligned orientation setting RegionView3D.view & view_axis_roll accordingly. Note that the "orthographic" term is misleading as the property only relates to axis-alignment, not to the perspective/orthographic setting. We could consider deprecating the current naming. [0]: 63bae864f40302b0a303498d26f230caf4f24339
2022-05-19Fix View Roll failure to align the quaternion to the view-axisCampbell Barton
View roll checked if the resulting roll was close to a view axis but didn't write the aligned quaternion back to the final result. Add ED_view3d_quat_to_axis_view_and_reset_quat since most callers to ED_view3d_quat_to_axis_view will reset the quaternion when a view aligned axis is found.
2022-05-18Fix T98225: file saved with an object in sculptmode that is disabled in ↵Bastien Montagne
viewports crashes on reload Issue revealed by rB90e12e823ff0. Hidden objects may not be fully evaluated by the despgraph, do not attempt to restore edit/sculpt/etc. modes for those. Should also be backported to 2.93 LTS release.
2022-05-18Fix incorrect track search area election colorSergey Sharybin
It was following the pattern area selection color instead of its own.
2022-05-18Fix T98192: Crash when apply transforms after deleting an objectCampbell Barton
2022-05-18Fix T98191: Alt-LMB for node detach fails with RMB selectCampbell Barton
Regression caused by [0] which changed node selection to use PRESS for selection and CLICK_DRAG to transform the selection. This conflicted with Alt-LMB which would select the node then pass-though to node.background_sample, preventing the drag event from being activated. Resolve by only activating background-sample when the cursor isn't over a node or socket. [0]: 4c3e91e5f565b81dd79b5d42f55be5b93662d410
2022-05-18Cleanup: formatCampbell Barton
2022-05-18Fix T98214: UV selection crash with wire edgesChris Blackbourn
Regression in ffaaa0bcbf477c30cf3665b9330bbbb767397169 which removed the NULL pointer check.
2022-05-17Fix T98021: Crash when using scene strip as sequencer inputRichard Antalik
Issue was caused by treating such strip as meta and using `seq->channels` directly, which is not valid for scene strips. Pointer to channels is now provided by function `SEQ_get_seqbase_from_sequence`.
2022-05-17Fix console errors about missing properties in circle selectSergey Sharybin
A regression since 113b8030ced9: circle selection operators does not define properties like deselect_all and a special name callback is to be used for those. This is what was already done for circle select in the 3D viewport. Some other spaces were using the generic pick operator for the circle selection which causes error prints in the console.
2022-05-17Fix T96414: Stencil mapping is incorrect for UDIMsJesse Yurkovich
When texture painting, brush textures and brush texture masks were not transformed to account for UDIM tiles. Differential Revision: https://developer.blender.org/D14671
2022-05-15Fix T81715: Unprojected radius mode messes up sculpt texture radiusJoseph Eagar
We really need to fix how unprojected radius (scene unit) works. What happened is the paint code updates the brush's normal radius with the current unprojected pixel radius, which was then used by texture brush tiled mode. To fix this I just cached the pixel radius at stroke start in UnifiedPaintSettings->start_pixel_radius.