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
2020-12-02Nodes: add geometry socket typeJacques Lucke
We still have to pick a color for this socket. Ref T81848.
2020-12-02Fix T83161: Crash when moving ruler endpoints and opening or closing the ↵Germano Cavalcante
toolshelf `invert_snap` could be called before `snap_gizmo->keymap` was found. Use the lazy initialization in `invert_snap` then.
2020-12-02Transform: Correct Mirror for Object Mode along arbitrary axisHenrik Dick
This fixes T68521, T82334. The object are not properly mirrored in object mode. For mirroring an object that has an arbitrary rotation along the X axis this is the procedure: 1. mirror x location. 2. negate x scale of the 3. negate y and z component of the rotation (independent of which rotation mode is used). This knowledge applies now for all angles and axes to finally make the mirror operation work in object mode. The new mirror function has the downside that it can not (in this form) be used with proportional editing. This is no problem since the old behavior can still be replicated by scaling with -1 along any axis. The solution to get perfect mirrors can not work for scaling in general, because in that case there could be scew created. Reviewed By: mano-wii Differential Revision: https://developer.blender.org/D9625
2020-12-02Fix T83119: Crash with topology mirror affecting a hidden vertexPhilipp Oeser
Caused by rBba97da21acf2. For non-topology mirror hidden verts were never respected/included in EDBM_verts_mirror_cache_begin (they were excluded from the kdtree). Prior to said commit, hidden mirrored verts that were still in the map would have been excluded in a separate loop over vertices in 'editmesh_mirror_data_calc()' by checking BM_ELEM_HIDDEN. Due to the new nature of this function this check was now moved to EDBM_verts_mirror_cache_begin. Maniphest Tasks: T83119 Differential Revision: https://developer.blender.org/D9673
2020-12-01Cleanup: De-duplicate object mullptr checksSergey Sharybin
Makes it more clear whether object is allowed or not allowed to be NULL. Also, avoids possible access to the different object mode enumerator. Should be no functional changes.
2020-12-01Fix T83275: Crash with scene statics and empty scenePablo Dobarro
ob can be NULL, so it needs to be checked before accessing ob->mode Differential Revision: https://developer.blender.org/D9680
2020-12-01Fix sculpt transform incorrently flipping displacement in Y and Z axisPablo Dobarro
These functions were only checking the X axis for flipping the displacement for a symmetry area depending on the initial position of the pivot. This affects transform and any other tools that transform vertices and applies symmetry based on areas (the pose brush, for example). Reviewed By: sergey Differential Revision: https://developer.blender.org/D9654
2020-12-01UI: Add Sculpt Session info to statsPablo Dobarro
This adds the vertex and face count info to the scene stats in sculpt mode. These stats count the active vertices and faces in the sculptsession for the active object. This has the following advantages: - It is possible to know how many vertices the sculptsession has active comparted to the vertex count of the entire scene from sculpt mode - When sculpting with constructive modifiers, these stats will report the number of vertices that you can actually sculpt with, instead of the vertex count of the modified mesh and the entire scene. Reviewed By: sergey, dbystedt Differential Revision: https://developer.blender.org/D9623
2020-11-30Cleanup: Reduce variable scope in node drawing codeHans Goudey
Also use LISTBASE_FOREACH in a few places and generally clean up the code for the two sidebar panels "Sockets" and "Interface".
2020-11-30Fix T83177: Industry Compatible keymap: MMB-dragging to transform engages ↵Germano Cavalcante
axis-constraining on release Release confirm did not consider modal keymap events.
2020-11-30Cleanup: Graph Editor, refactor selection operatorsMaxime Casas
Extract initialisation code of box selection into separate functions. No functional changes. Reviewed By: zeddb, sybren Differential Revision: https://developer.blender.org/D9196
2020-11-30Fix T81628: Moving Python-made channels freezes BlenderSybren A. Stüvel
Fix various problems in the Action Group rearranging code. All fixes are necessary to resolve the bug. - Before groups are rearranged, the channels are moved into their respective groups (so no longer referenced by `action->channels`). A temporary group is made for ungrouped channels. The code made assumptions about the channels being in the same order as the groups; that assumption has been removed. - Looping over channels in an Action Group should stop when reaching the last channel, and not until `NULL`. - After all the reshuffling is done, the `action->channels` linked list wasn't terminated properly. Now `first.prev` and `last.next` are set to `NULL` to avoid infinite loops.
2020-11-30Cleanup: Animation, clean up action group rearranging codeSybren A. Stüvel
Some minor cleanups to make an upcoming bugfix easier. No functional changes.
2020-11-30GPencil: New operator to reset Vertex ColorsAntonio Vazquez
This operators reset the vertex color information of the strokes. If nothing is selected, all strokes are reset. If any is selected, only selected strokes are reset. Also added a new menu Paint in Vertex Color mode. Differential Revision: https://developer.blender.org/D9647
2020-11-30Tracking: Cleanup, unused field in autotrack contextSergey Sharybin
Was only assigned to truth, always. Never read back.
2020-11-30Cleanup: Use "region" for ARegion variable namesHans Goudey
As proposed in T74432 and already implemented in several commits, "region" is the preferred name for `ARegion` variables, rather than any variant of "ar". This commit changes a few "ar" variables that have popped up over time and also adjusted names of variants like "arnew".
2020-11-27Fix transform snap mixed with incrementalGermano Cavalcante
The incremental was taking priority but the other elements are mandatory.
2020-11-27Fix T83092: Direction of rotation with View orientation changed in 2.91Germano Cavalcante
The change was intentional so that the orientation matrices match (`rv3d->viewinv` becomes equal to the orientation matrix). But, although in a projection matrix the Z axis is negative, this should not be so from the user's point of view. So the solution here is to negate the Z axis when the View orientation is chosen. This affects all modes, but is only evident for rotation. --- Another change here is to use the final rotation value (`values_final`) for the gizmo drawing since this value can be changed by the mode.
2020-11-27Cleanup: Add `r_` to return parameterNathan Craddock
Prefix a return parameter with `r_` to follow the style guide. No functional changes.
2020-11-27Cleanup: Move logic to `outliner_find_item_at_x_in_row`Nathan Craddock
Move the logic for determining if the item at a given x position is an icon into the function. This is used for determining selection over an icon, and will be used in a later commit for checking for hover over an icon. No functional changes.
2020-11-27Sculpt: Refactor transform code to allow incremental updatesPablo Dobarro
This adds support for incremental updates in the sculpt transform code. Now tools can define if they need the displacement applied for the original coordinates or incrementally. This is needed for features like elastic transform or cloth deformation target in the transform tool. No functional changes. Reviewed By: sergey Differential Revision: https://developer.blender.org/D9547
2020-11-26Transform: Improve event detection for AutoConstrainGermano Cavalcante
The event "value" is not really required since this operation works as a toogle. This change cleans and simplifies the code.
2020-11-26UI: Fix incorrect offset for panel label when zooming inHans Goudey
The panel title text intersected any buttons in the header because the label offset retrieved from the layout code was not scaled by the block's zoom level. Error in rB0d93bd8d63980.
2020-11-26Fix T83020: Transform: AutoConstraint being confirmed without releasing the MMBGermano Cavalcante
The transform modifiers are confirmed by releasing any button. Thus, the operation can be falsely confirmed if the button that launched the operation is released after the modifier has been activated. Previously the events that confirmed the modifiers were hardcoded. An option to fix this would be to add custom confirmation keyitens for specific modifiers. But this can be a bit confusing and would make the modal keymap even bigger. So the solution here is to skip the button that launched the operation when confirming the modifier.
2020-11-26UI: Allow theming the alternate row color in the sequencerErik Abrahamsson
Previously, the alternate row color in the Video Sequence Editor was just a shaded version of the editor's background color. This makes it theme-able just like in the file browser and outliner, although the default color is very slightly different. Differential Revision: https://developer.blender.org/D9634
2020-11-26Fix Edit Face Set operator not being cancelled when the cursor is not over ↵Pablo Dobarro
the mesh If the cursor is not over the mesh, the operator was still using the last Face Set ID updated by the drawing cursor code when the cursor was over the mesh. This now cancels the operator instead of modifying a Face Set that will look random to the user. Reviewed By: sergey Differential Revision: https://developer.blender.org/D9545
2020-11-26Rename use paint symmetry to use mesh symmetry in quadriflowPablo Dobarro
The original name was chosen because symmetry was a property of the Paint struct. Now symmetry is a property of meshes, which also makes the name of the property easier to understand. Reviewed By: sergey, dbystedt Differential Revision: https://developer.blender.org/D9618
2020-11-24Merge remote-tracking branch 'origin/blender-v2.91-release'Sybren A. Stüvel
2020-11-24Fix T80748: Render Emissive Colors in Compositor BackdropJeroen Bakker
This change will use the image engine to draw the backdrop of the compositor. With this patch the alpha blending will be done in Linear Scene Reference space and shows pure emissive colors. See differential for an example image. **Technical changes** As only the backdrop drawing is done using the draw manager there are some technical changes. 1. The overlay buffer is partly drawn outside the draw manager. When drawing the backdrop image the overlay buffer needs to be masked to simulate premultiplied alpha under. 2. The backdrop of the node editor is done in region pixel space. A `DRWView` is constructed with this space. 3. UDIM textures uses world position to generate the UV coordinates. This has been implemented more strict by the `IMAGE_DRAW_FLAG_USE_WORLD_POS`. When the flag isn't used the local coordinates are used to generate the UV coordinates what is image space. 4. The draw manager now checks the actual `eSpaceType` of the space data to use different code paths. In the future the movie clip editor will be added. NOTE: The preview images in nodes are drawn in display space and cannot show pure emissive colors. As preview images are used on more locations it is best to fix this in a separate patch. Reviewed By: Clément Foucault Differential Revision: https://developer.blender.org/D9451
2020-11-24Graph Editor: fix keyframe not activating in certain casesSybren A. Stüvel
When clicking on an already-selected keyframe, mark it as active if the click caused the previously-active keyframe to become deselected. When clicking on a key in the graph editor, it is selected and all other keys are deselected. If that key was already selected before the click, it would not become the active keyframe. This is now fixed. Reviewed by: Severin Differential Revision: https://developer.blender.org/D9639
2020-11-24Animation: Remove debug printsSybren A. Stüvel
Remove accidentally-commited debug prints. No functional changes. Reviewed by: sergey Differential Revision: https://developer.blender.org/D9637
2020-11-24Outliner: Switch properties tabs only on icon clickNathan Craddock
According to feedback the outliner to properties editor tab switching was annoying when it always changed tabs on selection, especially for selecting individual objects. This limits the tab switching behavior to only when the icons in the outliner are selected.
2020-11-24UI: Add Trackpad Smooth Scrolling for PopoversYevgeny Makarov
Adds smooth scrolling with the trackpad for popovers. Also fixes the position of the scroll arrows on high-DPI. Differential Revision: https://developer.blender.org/D9533 Reviewed by Brecht Van Lommel
2020-11-24UI: Block Safety Not Scaled CorrectlyYevgeny Makarov
Layout block safety sizes were not scaled correctly with interface scale. Differential Revision: https://developer.blender.org/D9569 Reviewed by Brecht Van Lommel
2020-11-23Cleanup: Animation, split `graph_edit.c` into separate filesChristoph Lendenfeld
Split some of the code of `graph_edit.c` into: * `graph_view.c`: preview range, view all, view selected etc. * `graph_slider_ops.c`: the decimate modal operator code. The latter file will be extended later with more slider-based operators. Maniphest Tasks: T81785 Reviewed By: sybren Differential Revision: https://developer.blender.org/D9312
2020-11-23Animation: New Euler filter implementationSybren A. Stüvel
This new discontinuity filter performs actions on the entire Euler rotation, rather than only on the individual X/Y/Z channels. This makes it fix a wider range of discontinuities, for example those in T52744. The filter now runs twice on the selected channels, in this order: - New: Convert X+Y+Z rotation to matrix, then back to Euler angles. - Old: Add/remove factors of 360° to minimize jumps. The messaging is streamlined; it now reports how many channels were filtered, and only warns (instead of errors) when there was an actual problem with the selected channels (like selecting three or more channels, but without X/Y/Z triplet). A new kernel function `BKE_fcurve_keyframe_move_value_with_handles()` is introduced, to make it possible to move a keyframe's value and move its handles at the same time. Manifest Task: T52744 Reviewed By: looch Differential Revision: https://developer.blender.org/D9602
2020-11-23Fix T82849: Assert When Unlinking "Edit Source" Text Data-block.Bastien Montagne
Simplify and sanitize handling of usercounts for Text IDs generated trhough `BKE_text_load_ex`.
2020-11-21Merge branch 'blender-v2.91-release'Antonio Vazquez
2020-11-21GPencil: Fix unreported assert when use select Box in single point strokesAntonio Vazquez
The assert was when use segment selection mode.
2020-11-21Cleanup: Declare variables where initializedHans Goudey
Reduce variable scope, and in a few cases, use bool instead of int.
2020-11-20Cleanup: Use LISTBASE_FOREACH macroHans Goudey
2020-11-20Outliner: Object state filter invert toggleNathan Craddock
This adds an invert toggle for the outliner object state filters. There are some cases where we want a filter for invertable states (Selected, Unselected) and having a single toggle to invert the filter reduces the number of separate filter types needed. This removes the "Hidden" filter which can now be replicated with an inverted "Visible" filter. Differential Revision: https://developer.blender.org/D9598
2020-11-20Merge branch 'blender-v2.91-release'Jeroen Bakker
2020-11-20Fix add-object cursor plane failing to update on zoomCampbell Barton
Zoom with an orthographic view wasn't refreshing the preview plane.
2020-11-20Add Object Tool: support placing objects in orthographic axis viewsCampbell Barton
When an projecting onto a plane that is orthogonal to the views Z axis, project onto a view aligned axis then map it back to the original plane. see: ED_view3d_win_to_3d_on_plane_with_fallback Since the depth can't be properly visualized in 3D, display a 2D so it's possible to to tell the depth from the cursor motion.
2020-11-20Add Object Tool: use the closest view-aligned axis as a fallbackCampbell Barton
When using surface orientation and nothing is under the mouse-cursor, pick the axis that's closest to the view's Z axis. Now by default default, drawing into empty spaces wont use a plane orthogonal to the view.
2020-11-20UI: Fix panel drag icon added to redo panelHans Goudey
Error in cleanup commit 0d93bd8d639. Currently floating panels cannot be dragged, so the widget should not be displayed.
2020-11-20Fix add-object tools cursor distorted drawing on saveCampbell Barton
Generating the thumbnail left the view matrices set to values that couldn't be used for cursor drawing. Backup/restore the matrices for off-screen drawing.
2020-11-20Cleanup: use a struct to backup/restore values for offscreen drawingCampbell Barton
Variables to temporarily override values was scattered, making it harder to follow.
2020-11-20Cleanup: remove unused off-screen drawing structCampbell Barton