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
2020-09-30Cleanup: convert gforge task ID's to phabricator formatValentin
Cleanup old tracker task format to the new. e.g: [#34039] to T34039 Ref D8718
2020-09-30Cleanup: use 'use_' prefix for RNA booleansCampbell Barton
Some of the naming was quite misleading.
2020-09-30UI: Motion Tracking: Fix description of K2 coefficientIvan Perevala
Fixed description of K2 coefficient. It is second coefficient Reviewed By: Blendify Differential Revision: https://developer.blender.org/D9050
2020-09-30Cleanup: spellingCampbell Barton
2020-09-30Cleanup: remove full-stop from descriptionCampbell Barton
2020-09-30Cleanup: use angle-brackets for email addressesCampbell Barton
This is already the most widely used convention. Use this so `make check_spelling_c` will ignore all email addresses.
2020-09-30Cleanup: sort cmake file listsCampbell Barton
2020-09-30Cleanup: sort struct declarationsCampbell Barton
2020-09-30Cleanup: Make function privateHans Goudey
The "UI_panel_set_expand_from_list_data" doesn't need to be in the public API since it's just called every time an instanced panel is added. This commit just sets the expansion automatically and adjusts some naming to account for the moved function.
2020-09-30Fix use after free deleting object with modifier panels visibleHans Goudey
It's necessary to check if the panels are active before accessing their data. Thanks to @ankitm for reporting this.
2020-09-30Cleanup: Use LISTBASE_FOREACH macro in outliner codeHans Goudey
2020-09-29Sculpt: Preserve Mesh visibility from edit mode using the Face SetsPablo Dobarro
Before this change, when users switch from edit mode to sculpt mode, the entire mesh would be visible. Even if in the edit mesh mode part of it was set to invisible. With this change the visibility is preserved, by creating a separate face set for the visible and invisible parts of the mesh and setting their initial visibility. Implementation details: This adds a function to initialize a new Face Set datalayer taking the current mesh visibility into account which is stored in the ME_HIDE flag of the vertices. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8901
2020-09-29Sculpt: Line Project Gesture toolPablo Dobarro
This tool projects all vertices to the right of the plane defined by the line gesture towards the plane. By doing this, this tool can create cuts and plane surfaces in the mesh without modifying the geometry or using boolean operations, so it is much faster than bisecting the mesh for cases where the geometry was going to be remeshed afterwards. Added as experimental as it does not have icon. Reviewed By: sergey, Severin Differential Revision: https://developer.blender.org/D9021
2020-09-29API Docs: Correct syntax for bpy.utils.register_classAaron Carlisle
2020-09-29API Docs: Fix corrupted document of gpu.select.load_idnutti
The Python API document of gpu.select.load_id does not follow rst format. c.f. https://docs.blender.org/api/current/gpu.select.html This patch fixes it. Reviewed By: Blendify Differential Revision: https://developer.blender.org/D8547
2020-09-29API docs: Fix sytax error for delaunay_2d_cdAaron Carlisle
Alternative solution to https://developer.blender.org/D8546
2020-09-29API Docs: Use raises field list syntaxAaron Carlisle
See https://www.sphinx-doc.org/en/master/usage/restructuredtext/domains.html#info-field-lists
2020-09-29Fix unreported Eisenbug leading to a crash when reading a blend file.Bastien Montagne
This took more than a day to fully investigate and understand, one of the reasons being that the probability of the issue to show up was extremely low, and subjected to very specific random factors. Root of the issue is that, in some very rare cases, a newly read ID might get the exact same memory address as the one it had when the blend file was saved. In that case, `BKE_workspace_active_set` would return immediately, since the pointer to the active workspace would remain unchanged. But that lead to having an unset NULL active layout pointer, which would crash when attempting to get e.g. the active screen. For the record, I ran into this when running a specific build (master with one flag added to the `LIB_ID_CREATE` ones, with value `1 << 3`), using a specific set of options (`--background --factory-startup -noaudio`), and passing the .blend file from T80090 as argument.
2020-09-29Fix (unrepported) utterly broken logic in readfile for Workspaces.Bastien Montagne
Remove the attempt to update the active layout pointers of each window from whithin `direct_link_workspace`. This piece of code was a nonsense for at least to critical reasons: * Do not, never, ever, access data from another datablock within the direct_link_... functions. Just don't. Don't try to be smart. * Since it was trying (and failing) to update the active layout of every window for every workspace, it was effectively setting those `act_layout` pointers to NULL (remapping can only ever happen once, trying to remap and already remapped new pointer is bound to fail in any case). Luckily (and funnily), this piece of code was actually harmless, since setting the active layout would be overridden/redone later, in `lib_link_windowmanager`, when updating their `workspace_hook` in `lib_link_workspace_instance_hook`. Note that the similar horror with `WorkSpaceDataRelation->parent` (which points at a window) is kept for now, because that one is needed. Hope to refactor it soon though.
2020-09-29Property Search: Set expansion properly for child panelsHans Goudey
Although I haven't seen this cause any visible errors, there is some incorrect handling for setting panel expansion during search: - Properly check if child panel is active first - Don't stop traversal at headerless panels that could theoretically have children
2020-09-29Fix T71981: Alembic vertex interpolation can jumble meshSybren A. Stüvel
Add an option to disable Alembic vertex interpolation. Bump subversion from 5 to 6. Alembic stores mesh samples at specific time keys; when a frame in Blender maps to a timecode between two samples, Blender will interpolate the mesh vertex positions. This interpolation only happens when the mesh has a constant topology, but sometimes this was not detected properly when the vertices change order, but the number of mesh elements remains the same. This would result in a mesh with jumbled up vertices (T71981). With this patch, users have the ability to disable vertex interpolation. An alternative would be to have better detection of topology changes, but that that'll cause a considerable slowdown. Maniphest Tasks: T71981 Differential Revision: https://developer.blender.org/D9041
2020-09-29Volumes: new Mesh to Volume modifierJacques Lucke
This modifier can only be added to Volume objects. It takes a mesh as input and generates a "density" grid near the surface or in the enclosed volume. Ref T73201. Reviewers: brecht Differential Revision: https://developer.blender.org/D9032
2020-09-29Volumes: support selection and outlines in viewportJacques Lucke
Previously, one could only select a volume object in the outliner or by clicking on the object origin. This patch allows you to click on the actual volume. Furthermore, the generated (invisible) mesh that is used for selection is also used to draw an outline for the volume object now. Reviewers: brecht Differential Revision: https://developer.blender.org/D9022
2020-09-29DNA: optimize struct reconstruction by doing some preprocessingJacques Lucke
When loading large files that are more than a couple weeks old (such that DNA has changed in that time), a significant amount of time is spent in `DNA_struct_reconstruct`. This function takes a struct in the old layout and creates a struct in the new layout from it. This was slow because it was computing the diff between the struct layouts every time a struct is updated. Now the steps for the struct reconstruction is computed only once per struct. This information is then used to actually reconstruct all structs that changed. I measured about 10-20% speedup when loading Spring files. E.g. `10.6s -> 8.7s` for `06_055_A.anim.blend` in BKE_blendfile_read`. This percentage varies a lot based on the number of blocks that have to be reconstructed and how much DNA has changed since they have been written. In none of my tests was the new code slower than the old code. Reviewers: campbellbarton Differential Revision: https://developer.blender.org/D8959
2020-09-29Quiet unused variable warningJacques Lucke
2020-09-29DNA: use better type for SDNA->structsJacques Lucke
The data layout remains exactly the same.. This change just gives all the elements in `SDNA->structs` names, making it more comfortable to work with the data. Reviewers: campbellbarton Differential Revision: https://developer.blender.org/D8926
2020-09-29Revert "Fix T81002: Images drawn with the Python gpu module no longer draw ↵Jeroen Bakker
on top in the Image Editor" This reverts commit 085329f114beb904ed3ef0c8ec6894ee26916704. It didn't render rendered viewport overlays correctly.
2020-09-29Cleanup: spellingCampbell Barton
2020-09-28Fix T80121: Forcefield F-curve modifier changes don't reset cacheSybren A. Stüvel
Add a dependency graph relation Force Object Animation → Scene Rigid Body World Rebuild. This ensures that the rigid body world is rebuilt when a force object is re-tagged for animation updates. The extra relation doesn't add any new calculations when the animation is running, as the Time Source node already had a relation to the scene's `RIGIDBODY_REBUILD` node. The relation is created directly to the `RIGIDBODY_REBUILD` Operation. I would have liked to target the containing Component instead. However, that has the `RIGIDBODY_SIM` operation as entry node, which isn't enough to actually fix T80121. Reviewers: Sergey Differential Revision: https://developer.blender.org/T80121
2020-09-28Outliner: Draw hierarchy lines dashed for object childrenNathan Craddock
Draw dashed lines for object child hierarchies in the outliner. This makes the difference between collection and object hierarchies more clear. Dashes are also consistent with viewport relationship lines. Differential Revision: https://developer.blender.org/D8997
2020-09-28Fix T80657: Not freed memory blocks with Batch-Generate Previews.Bastien Montagne
`ED_preview_icon_render()` owns the `id_copy` localized ID, so it has to free it itself.
2020-09-28Fix T80967: Alembic, crash when the imported sim from Houdini startsSybren A. Stüvel
Compare mesh loop count with number of loop normals before reading the loop normals. Houdini doesn't always write the correct loop normals to Alembic. When a mesh is animated and then replaced by a fluid simulation, Houdini will still write the original mesh's loop normals, but the mesh verts/loops/polys are from the simulation. In such cases the normals cannot be mapped to the mesh, so it's better to ignore them.
2020-09-28Cleanup: Animation, fix commentsSybren A. Stüvel
Remove one outdated comment, and make the other into a proper sentence. No functional changes
2020-09-28UI Code Quality: Clear layout pointer on layout destructionJulian Eisel
The layout pointer is quite ugly, but currently needed to work around design issues. At least it should be cleared to avoid use-after-free.
2020-09-28Cleanup: Animation, remove unused parameter from anim tagging functionSybren A. Stüvel
Remove `bool flush` parameter from `rna_tag_animation_update()`, as every call uses `true` anyway. No functional changes.
2020-09-28Fix T81214: Crash on Action constraint without actionSybren A. Stüvel
A `NULL` pointer check was missing.
2020-09-28Cleanup: animation, simplify `anim_flush_channel_setting_up()`Sybren A. Stüvel
Simplify `anim_flush_channel_setting_up()` by flipping conditions and returning early. This makes it easier to understand what is actually happening in the code. No functional changes.
2020-09-28Cleanup: animation, split up ANIM_flush_setting_anim_channels()Sybren A. Stüvel
Split up `ANIM_flush_setting_anim_channels()` into smaller functions. This makes it easier to understand how it works, and makes future improvements also easier. No functional changes.
2020-09-28Fix typo in UI messages.Bastien Montagne
2020-09-28Fix T79275: Missing redraw for pinned active tool settings panelsDavid Friedli
In the 3D view sidebar, the active tool settings panel can be pinned to other categories, and in those other categories it doesn't redraw when the active tool changes. This commit checks for pinned panels from the "Tool" category when checking whether to redraw. Note that the relatively expensive string comparison is only done for currently visible pinned panels. Differential Revision: https://developer.blender.org/D9012
2020-09-26Sculpt: Line gestures and Mask Line toolPablo Dobarro
This adds support for line gesture to SculptGestureContext and implements a Mask Line tool, which affects everything to the right of a plane defined by the straightline gesture. For this to work, a new WM_gesture_straightline_oneshot_modal is needed which only runs exec when the gesture is over. Added as experimental as it does not have icon. Reviewed By: Severin Differential Revision: https://developer.blender.org/D8722
2020-09-26Fix Face Set overlay rendering wrong color with modifiersPablo Dobarro
face_set_color_default was not copied when copying meshes, so when extracting the colors in the draw cache it was using a wrong default color ID. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8957
2020-09-26Fix T81205: Grease pencil material slots don't auto-erase void slots above ↵Antonio Vazquez
the first material
2020-09-26Fix T81168: 2.8x Crash when loading 2.79 file.Bastien Montagne
Object in the 2.7x file is on no layer at all, while this is not really expected nor considered valid, better to cope with the case gracefully than crash. To be backported to 2.90 and 2.83.
2020-09-25Cleanup: Use canonical variable nameHans Goudey
2020-09-25Cleanup: Decrease indentation by returning earlyHans Goudey
Where the if statement was just a check for an error or an unhandled condition and there are no else statements, the rest of the function doesn't need to be indented.
2020-09-25Cleanup: Declare variables where initialized, lower scopeHans Goudey
Also use "r_" prefix for return arguments in a few places.
2020-09-25Fix Tests for Weld Modifier with KD-TreeHenrik Dick
Fixes the failing tests and reintroduces the KD-Tree solution. Reviewed By: mano-wii Differential Revision: https://developer.blender.org/D9013
2020-09-25LibOverride: Cleanup: reserve debug messages to debug builds.Bastien Montagne
2020-09-25LibOverride: Better handling of cleanup of 'insert' operations in collections.Bastien Montagne
Before, it might have been possible in some cases (when there were no items at all anymore in the collection) to miss that cleanup step, leaving ghost useless and invalid operations around.