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-08-06Cleanup: clang tidyJacques Lucke
`bugprone-signed-char-misuse`
2021-08-06Cleanup: use const result in `ED_keyframes_find_*` functions.Jeroen Bakker
2021-08-06Cleanup: use range2f in `ED_keylist_find_any_between`.Jeroen Bakker
2021-08-06Cleanup: const pass `keyframes_keylist`.Jeroen Bakker
2021-08-06Cleanup: use MEM_SAFE_FREE macroCampbell Barton
2021-08-05Action Constraint: add Split Channels Mix choices from Copy TransformsAlexander Gavrilov
Practice shows that when combining actions and direct animation it is usually best to combine location, rotation and scale separately, which is implemented by the Split Channels modes recently introduced in D9469 for Copy Transforms. This completes the same set of 6 choices for the Action Constraint. The default for new constraints is changed to the newly added Before Original (Split Channels) mode. The original patch is motivated by Loic Pinsard, who created an addon that does the equivalent of this feature by splitting the action into two, separating location and rotation+scale. Differential Revision: https://developer.blender.org/D7547
2021-08-05Fix T90235: Smooth Brush not working with interior vertices with two ↵Pablo Dobarro
adjacent edges The exception to automatically pin vertices of grid corners also has to take into account that the vertex is in a boundary. Reviewed By: JacquesLucke Maniphest Tasks: T90235 Differential Revision: https://developer.blender.org/D12044
2021-08-05Fix T90236: Sculpt automasking failing when the stroke does not start over ↵Pablo Dobarro
the mesh The active geometry element are usually updated by the cursor drawing code (as they are needed for the cursor preview) and when an sculpt operator starts. For brushes, this was not happening. This was making brushes rely by default on the last cursor drawing update, which can be incorrect if the mouse moved after starting the stroke without hovering the active geometry. Reviewed By: JacquesLucke Maniphest Tasks: T90236 Differential Revision: https://developer.blender.org/D12045
2021-08-05BMesh: support laplacian smooth for n-gonsCampbell Barton
Follow the same logic already used by the modifier.
2021-08-05Fix T83164: Spline IK `joint_bindings` parameter is broken.Bastien Montagne
Code freeing the array would not properly reset its length value to zero. Note that this corrupted data could also be saved in .blend files, so had to bump fileversion and add some doversion code too. Fix T90166: crash when creating a liboverride.
2021-08-05GPencil: New Caps iconsAntonio Vazquez
These icons are used to define the type of caps. Designed by: Matias Mendiola Reviewed by: Pablo Vazquez
2021-08-05LibOverride: Make it reasonably impossible for users to create overrides of ↵Bastien Montagne
scenes. This is not supported currently,doing so through RNA API remains possible, but from regular UI operations it should not be doable anymore. Ref. T90459.
2021-08-05Fix T90430: Crash when dragging materialJulian Eisel
Was trying to get asset information even when there was none, i.e. when the material wasn't an asset or not dragged from the Asset Browser.
2021-08-05Cleanup: remove redundant parenthesisCampbell Barton
2021-08-05Cleanup: make formatAaron Carlisle
2021-08-04Cleanup: rename restrict to hide/visibility in Object, Collection, MaskLayerBrecht Van Lommel
This makes the internal naming consistent with the public API. And also gives us a visibility_flag rather than restrictflag that can be extended with more flags.
2021-08-04Added some TODO remarks.Jeroen Bakker
2021-08-04GPencil: New Brush option to define Caps typeAntonio Vazquez
This is used to set the default caps type for the stroke. Before always was rounded and only could be changed later in Edit mode Two new buttons has been added to topbar. NOTE: New icons are been designed (T90414) The buttons are expanded to list in Properties panel. Reviewed By: mendio, HooglyBoogly Differential Revision: https://developer.blender.org/D11999
2021-08-04Outliner/LibOverrides: Fix logic of checks for drag'n'drop of Collections.Bastien Montagne
Previous check was too blunt, preventing e.g. re-organization of collection overrides inside a local parent collection, which is perfectly valid operation. Reported by @hjalti from the studio, thanks!
2021-08-04Make loopcut drawing consistent between gizmo and operator.Anthony Edlin
Loopcut drawing from gizmo had thicker lines because it was using line smoothing without alpha blend, compared to thin jagged lines from operator. Make the drawing anti aliased and consistent by using 3D_POLYLINE/3D_POINT shaders, and making sure alpha blending is on. Reviewed By: #eevee_viewport, fclem Differential Revision: https://developer.blender.org/D11333
2021-08-04Viewport normal drawing with constant lengthJeroen Bakker
Patch for: T37878 {F10169694} Reviewed By: fclem Differential Revision: https://developer.blender.org/D11487
2021-08-04T90371: Asset: Drop Material Tooltip.Jeroen Bakker
This patch changes the drop named material tooltip to give feedback to the user what is going to happen when they invoke the change. There are 3 states: * "": Operator will be canceled as not all data is present (dropping on background.) * "Drop <named material> on <object name> (slot <slot number>, replacing <current material in slot>). * "Drop <named material> on <object name> (slot <slot number). Reviewed By: Severin Maniphest Tasks: T90371 Differential Revision: https://developer.blender.org/D12106
2021-08-04Cleanup: spellingCampbell Barton
2021-08-03Cleanup: interface, reduce indentation of copy_to_selected_button()Sybren A. Stüvel
Reduce cognitive complexity of `copy_to_selected_button()` by flipping conditions, returning early, and using `continue`. No functional changes.
2021-08-03Fix T90313: Align to Transform Orientation Axis Property Doesn't WorkGermano Cavalcante
`Orientation Axis` is a property incompatible with `Align` mode and should not be visible.
2021-08-03WM: don't store selection properties typically set in the key-mapCampbell Barton
While this was already the case for the most part some selection operators stored common settings for reuse such as "toggle", "extend" & "deselect". Disabling storing these settings for later execution as it means failure to set these options in the key-map re-uses the value of the shortcut that was last called. Skip saving these settings since this is a case where reusing them isn't helpful. Resolves T90275.
2021-08-03UI: building without Python againCampbell Barton
Also quiet some warnings.
2021-08-03Silenced clang-tidy warnings.Jeroen Bakker
2021-08-03Fix T90364: buttons (partially) behind animchannel search block searchPhilipp Oeser
When channels are scrolled to be (partially) behind the search bar, their widget buttons would still be interactive, preventing the seach buttons to be usable. We have to make sure the events are consumed from the search and dont reach other UI blocks. We can do so by flagging the block `UI_BLOCK_CLIP_EVENTS` -- but also have to make sure the bounds are calculated correctly (otherwise the check relating `UI_BLOCK_CLIP_EVENTS` in `ui_but_find_mouse_over_ex` wont trigger properly. Maniphest Tasks: T90364 Differential Revision: https://developer.blender.org/D12103
2021-08-03USD: add USD importerMichael Kowalski
This is an initial implementation of a USD importer. This work is comprised of Tangent Animation's open source USD importer, combined with features @makowalski had implemented. The design is very similar to the approach taken in the Alembic importer. The core functionality resides in a collection of "reader" classes, each of which is responsible for converting an instance of a USD prim to the corresponding Blender Object representation. The flow of control for the conversion can be followed in the `import_startjob()` and `import_endjob()` functions in `usd_capi.cc`. The `USDStageReader` class is responsible for traversing the USD stage and instantiating the appropriate readers. Reviewed By: sybren, HooglyBoogly Differential Revision: https://developer.blender.org/D10700
2021-08-03Fix T90341: Crash opening 2.4 file with File Browser editor openJulian Eisel
The file selection parameters (e.g. `context.space_data.params`) are expected to be unset in certain cases. Reading 2.4 files seems to be one of them. Hence, code using it should check it's set first. Also added an assert to a File Browser UI template printing a message when the parameters are unset, to help debugging the issue.
2021-08-03Fix T85436: Separate by loose parts doesn't show new objectsCampbell Barton
Only the "changed" state from the last edit-object was used, this meant the operator would not perform the necessary update with multi-object edit-mode. Use "changed" & "changed_multi" naming convention.
2021-08-03Correct task ID in 00b57136e4167ef5a303b1215574bb52a22e9194Campbell Barton
2021-08-03UI: Add light count to viewport statisticsFalk David
Even though lights were part of `SceneStats`, they were not used when rBfd10ac9acaa0 was committed. This patch adds the light count back into the statistics. When a light is the active object, it will display the total number of lights in the scene, as well as how many lights are currently selected. {F10141354} Reviewed By: #user_interface, Severin, Blendify, harley Maniphest Tasks: T88512 Differential Revision: https://developer.blender.org/D11387
2021-08-03Revert "Fix spin-gizmo not allowing click events to select vertices"Campbell Barton
This reverts commit 0b903755a9908344e9fcb4a33b4f0340abeb9386. This caused T86030, left-mouse selection override clicking, which is used for creating a full revolution.
2021-08-03Cleanup: Hide implementation details for ED_keyframe_keylist.Jeroen Bakker
For T78995 we want to change the data structure of keylists to improve performance. (Probably a Vector with bin-search capabilities). This patch hides the internal structure of the keylists behind `AnimKeylist` structure. This allows us to change the internals without 'breaking' where it is being used. The change adds functions to create, free, find and walk over the keylist. Reviewed By: sybren Maniphest Tasks: T78995 Differential Revision: https://developer.blender.org/D11974
2021-08-03T90372: Assets: When dropping material use active material slot.Jeroen Bakker
Currently when dropping an asset the first material slot is always updated. This patch changes that logic to update the active material slot. In future the behavior will be updated to use the material slot of the face under the cursor. That requires better feedback tot he user. Reviewed By: Severin Maniphest Tasks: T90372 Differential Revision: https://developer.blender.org/D12056
2021-08-03Cleanup: use C++ comments or 'if 0' for commented codeCampbell Barton
2021-08-03Edit Mesh: Correct normal calculation for "Set From Faces"Campbell Barton
Setting normals from faces wasn't weighting the faces contribution by the corner angle, giving lop-sided results in some cases. This removes the epsilon check for CLNORS_VALID_VEC_LEN, in favor of matching the behavior of vertex normals exactly.
2021-08-02Mesh: Tag normals dirty instead of calculatingHans Goudey
Because mesh vertex and face normals are just derived data, they can be calculated lazily instead of eagerly. Often normal calculation is a relatively expensive task, and the calculation is often redundant if the mesh is deformed afterwards anyway. Instead, normals should be calculated only when they are needed. This commit moves in that direction by adding a new function to tag a mesh's normals dirty and replacing normal calculation with it in some places. Differential Revision: https://developer.blender.org/D12107
2021-08-02Fix T90356: Frame selected includes active stripRichard Antalik
Don't include active strip in this operator. This was confusing due to name of operator and inconsistent with other editors.
2021-08-02Fix T87041: Driver Editor not updated in realtimePhilipp Oeser
Caused by {rBbbb2e0614fc3} Since above commit only the playhead is updated as an overlay in animation playback (was moved out of drawing of the main region for perfomance reasons). The driver value "debug" visualization is very useful to have during playback though but was left in main region drawing as part of `draw_fcurve` (thus does not update in realtime anymore). Moving `graph_draw_driver_debug` into the overlay is not feasible because it requires animation filtering which has significant overhead which needs to be avoided in the overlay which is redrawn on every UI interaction. Now tag the whole main region for updates in the Driver Editor during playback instead (which will make the Drivers Editor as slow during playback as before rBbbb2e0614fc3 -- but with realtime updates of the debug visualization). Maniphest Tasks: T87041 Differential Revision: https://developer.blender.org/D12003
2021-08-02Asset Browser: Proper context menu for assetsJulian Eisel
Add a context menu dedicated to asset operations to the Asset Browser. There are two separate context menus to keep things separated well and avoid confusing if-else logic (similar to D12057 & D12059). Their polls make sure they are displayed for the right contexts only. Also (to be committed as followup cleanup): Remove now unused special handling for assets in file delete operator. Differential Revision: https://developer.blender.org/D12062
2021-08-02WindowManager: Support Dynamic tooltips when dragging.Jeroen Bakker
Originally the operator name was drawn next to the dragging content. After that there was an option to add custom, static text with the dragging content. This patch allows dynamic text to be drawn. The custom text was implemented as out parameter of the poll function what made the code unclear. This patch introduces a tooltip function that separates tooltip generation from the poll function. NOTE: the text should always be returned in its own memory block. This block will be freed after it is copied in the drag struct. Reviewed By: Severin Differential Revision: https://developer.blender.org/D12104
2021-07-31Cleanup: Use const mesh argumentsHans Goudey
These functions do not change their source or input mesh, so it can be passed with const, which means in one case that a function doesn't have to be responsible for freeing its argument mesh, which is a clearly better separation of concerns.
2021-07-31Cleanup: Remove unused includesHans Goudey
2021-07-31Cleanup: Voxel remesh function namingHans Goudey
- Remove BKE prefix for static functions - Make specific intermediate functions static - Avoid unecessary "_to_mesh_nomain" suffix
2021-07-30Assets: Rename "Mark Asset" operator to "Mark as Asset"Julian Eisel
This naming change was agreed on during the asset workshop. See https://code.blender.org/2021/06/asset-browser-workshop-outcomes/#terms-definitions.
2021-07-30UI: Move Mark/Clear asset out of ID Data in Outliner context menuJulian Eisel
They are now always shown in the top-level of the Outliner context menu. Having them in the ID Data submenu was just a hassle to work with, and often confusing to users - even if technically correct (the asset status is part of the ID data). Part of T82680.
2021-07-30Cleanup: Move remesh files to C++Hans Goudey
This will be helpful for some cleanups I'd like to do, including removing the unecessary C API for OpenVDB and unifying some attribute transfer code.