20 months agoFix T70695: Scene crashes Blender on open.
Bastien Montagne [Fri, 11 Oct 2019 14:18:37 +0000 (16:18 +0200)]
Fix T70695: Scene crashes Blender on open.

Note that this commit fixes the crash itself, but actual issue is *how*
that situation could happen (having insert override operation with local
'source' overriding data-block with an empty bone constraints stack...).

20 months agoBuildbot: don't add branch prefix when building release branches
Brecht Van Lommel [Fri, 11 Oct 2019 11:45:16 +0000 (13:45 +0200)]
Buildbot: don't add branch prefix when building release branches

20 months agoGPencil: Remove curve objects after converting to strokes (unreported)
Antonio Vazquez [Fri, 11 Oct 2019 11:18:39 +0000 (13:18 +0200)]
GPencil: Remove curve objects after converting to strokes (unreported)

This was detected fixing T69459

Part of Differential Revision:

Note: done in a separated commit to keep track of changes done not directly related to bug reported in T69459.

20 months agoFix T69459: Convert Curve to Grease Pencil clears Transform
Antonio Vazquez [Fri, 11 Oct 2019 11:10:33 +0000 (13:10 +0200)]
Fix T69459: Convert Curve to Grease Pencil clears Transform

Also changed to create a grease pencil object for each curve.

Part of differential revision:

20 months agoFix issue in "make update" checking out submodule branch on buildbot
Brecht Van Lommel [Fri, 11 Oct 2019 11:11:10 +0000 (13:11 +0200)]
Fix issue in "make update" checking out submodule branch on buildbot

20 months agoVersion bump to 2.81 Beta
Brecht Van Lommel [Fri, 11 Oct 2019 10:19:55 +0000 (12:19 +0200)]
Version bump to 2.81 Beta

20 months agoFix "make update" not using the right branch for source/tools
Brecht Van Lommel [Fri, 11 Oct 2019 10:21:55 +0000 (12:21 +0200)]
Fix "make update" not using the right branch for source/tools

20 months agoVersion bump to 2.81.15
Brecht Van Lommel [Fri, 11 Oct 2019 10:17:32 +0000 (12:17 +0200)]
Version bump to 2.81.15

20 months agoDocs: 2.81 release description for Linux appdata
Brecht Van Lommel [Fri, 11 Oct 2019 10:12:46 +0000 (12:12 +0200)]
Docs: 2.81 release description for Linux appdata

20 months agoDepsgraph: Inform when update or tag happens during evaluation
Sergey Sharybin [Thu, 10 Oct 2019 10:25:23 +0000 (12:25 +0200)]
Depsgraph: Inform when update or tag happens during evaluation

It is not allowed to do tagging or updates while dependency graph is
in the middle of evaluation.

This is something what is simple to violate from python code. This
change adds some sanity checks.

The request to update view layer or dependency graph will raise an
exception in Python now, so it's easy for scripters to notice.

Tagging for update will do silent return unless running with debug
command line argument. This is because it's a bit tricky to know
which exact dependency graph corresponds to a context from which
an update tag was triggered.

Differential Revision:

20 months agoDepsgraph: Cleanup, promote is_evaluating query
Sergey Sharybin [Thu, 10 Oct 2019 09:03:58 +0000 (11:03 +0200)]
Depsgraph: Cleanup, promote is_evaluating query

This way it might be used for sanity checks in RNA API as well.

20 months agoDepsgraph: Don't use push-from-thread when scheduling graph
Sergey Sharybin [Thu, 10 Oct 2019 09:00:14 +0000 (11:00 +0200)]
Depsgraph: Don't use push-from-thread when scheduling graph

This isn't guaranteed that graph is scheduled from main thread,
so it is actually a miracle how it all worked.

20 months agoFix T70191: Text button in popup doesn't work
Campbell Barton [Fri, 11 Oct 2019 08:36:51 +0000 (19:36 +1100)]
Fix T70191: Text button in popup doesn't work

F2 rename didn't work with mouse input.

20 months agoCleanup: remove unused variable
Brecht Van Lommel [Thu, 10 Oct 2019 23:31:28 +0000 (01:31 +0200)]
Cleanup: remove unused variable

20 months agoFix T70715: sculpt brush jitter after recent TBB changes
Brecht Van Lommel [Thu, 10 Oct 2019 22:44:29 +0000 (00:44 +0200)]
Fix T70715: sculpt brush jitter after recent TBB changes

Fix error in the splitting constructor, and some refactoring.

20 months agoFix T64901: Nesting collection instances could clutter object display
Dalai Felinto [Thu, 10 Oct 2019 20:47:04 +0000 (17:47 -0300)]
Fix T64901: Nesting collection instances could clutter object display

20 months agoCleanup: Fix wrong assert introduced by rBd98ae27f02c7
Clément Foucault [Thu, 10 Oct 2019 18:16:14 +0000 (20:16 +0200)]
Cleanup: Fix wrong assert introduced by rBd98ae27f02c7

20 months agoGPencil: Change Paint cursor to DOT
Antonio Vazquez [Thu, 10 Oct 2019 18:04:10 +0000 (20:04 +0200)]
GPencil: Change Paint cursor to DOT

After doing some test, the cross cursor is too intrusive when you are drawing in grease pencil, so we decided to change by Dot cursor.

Reviewers: @brecht @mendio @pepeland @pablovazquez @billreynish

20 months agoFix build error on macOS after recent changes for file delete
Brecht Van Lommel [Thu, 10 Oct 2019 16:30:22 +0000 (18:30 +0200)]
Fix build error on macOS after recent changes for file delete

20 months agoFix build error on Windows after recent changes
Brecht Van Lommel [Thu, 10 Oct 2019 16:01:45 +0000 (18:01 +0200)]
Fix build error on Windows after recent changes

20 months agoSculpt: use TBB instead of BLI_task for multithreading
Brecht Van Lommel [Wed, 9 Oct 2019 14:27:04 +0000 (16:27 +0200)]
Sculpt: use TBB instead of BLI_task for multithreading

This solves performance issues on some computers where there is significant
threading overhead. Rather than doing the complicated work of optimizing our
own task scheduler, use TBB which appears to work well. The downside is that
we have another thread pool, but it is already there when using OpenVDB voxel

For future releases we can switch to using TBB to replace our task scheduler
implementation entirely, and use the same thread pool for BLI_task, Cycles,
Mantaflow, etc.

Differential Revision:

20 months agoBuild: add WITH_TBB option, in preparation of sculpt using it
Brecht Van Lommel [Wed, 9 Oct 2019 14:44:29 +0000 (16:44 +0200)]
Build: add WITH_TBB option, in preparation of sculpt using it

It should no longer be tied to OpenVDB and OpenImageDenoise then.

Differential Revision:

20 months agoFile Browser: add back Delete, which now moves files to the trash
Robert Guetzkow [Thu, 10 Oct 2019 08:53:13 +0000 (10:53 +0200)]
File Browser: add back Delete, which now moves files to the trash

In Blender 2.7 delete would permanently delete files, now this function is back
but using more standard behavior.

This patch includes code contributed by Kris (Metricity).

Differential Revision:

20 months agoNode Shader wrapper: add access to the Emission color of Principled BSDF node.
Bastien Montagne [Thu, 10 Oct 2019 15:17:04 +0000 (17:17 +0200)]
Node Shader wrapper: add access to the Emission color of Principled BSDF node.

This did not exist when that wrapper was created, but is supported by
many formats, so worth supporting it now. See also T70666.

20 months agoFix T70644 EEVEE: Bump issue with geometry node normal coordinate
Clément Foucault [Thu, 10 Oct 2019 14:51:08 +0000 (16:51 +0200)]
Fix T70644 EEVEE: Bump issue with geometry node normal coordinate

Was caused by non-normalized coordinates (normals). Note this is not 100%
correct as the dFdx functions can be the same for packs of 4 pixels and the
derivated value can only be correct for one pixels.

This is because smoothed normals are a non-linear function (because of the

The correct fix would be to do the dFdx offset BEFORE any normalization.

20 months agoFix T65134: Duplicated proxies in several scenes don't work
Sergey Sharybin [Thu, 10 Oct 2019 13:40:25 +0000 (15:40 +0200)]
Fix T65134: Duplicated proxies in several scenes don't work

This is something which worked in Blender 2.79.
Need to do special trickery to ensure peoxy_from points to a
proper object.

Differential Revision:

20 months agoUI: Only hide locked transform manipulator axes for matching spaces
Julian Eisel [Thu, 10 Oct 2019 13:10:36 +0000 (15:10 +0200)]
UI: Only hide locked transform manipulator axes for matching spaces

The manipulator would hide axes that were locked, even if the lock was
applied to a different space. That would lead to confusing behavior of
the manipulator. E.g.:
* Add armature
* Enter Pose Mode and select the bone
* Lock X and Y location in the Sidebar
* Enable the Move tool
* Only the Y axis is visible, but doesn't do anything on dragging
The manipulator would only show the Y axes, even though the lock is
applied to the bone's local Y axis, which matches the manipulators Z

Differential Revision: D6021

Reviewed by: Brecht van Lommel, William Reynish

20 months agoFix missing manipulator update when toggling bone lock
Julian Eisel [Thu, 10 Oct 2019 13:08:35 +0000 (15:08 +0200)]
Fix missing manipulator update when toggling bone lock

20 months agoFix: Manipulator visible if root or tip of locked bone is selected
Julian Eisel [Thu, 10 Oct 2019 13:06:11 +0000 (15:06 +0200)]
Fix: Manipulator visible if root or tip of locked bone is selected

When an edit-bone was locked, we hid the transform manipulator for it.
But only if the bone itself was selected, not when the root or tip were
selected, even though they are locked then too. So this makes sure the
manipulator is shown in neither case.

20 months agoAdded little explanation of eModifierTypeType_(Non)Constructive
Sybren A. Stüvel [Thu, 10 Oct 2019 11:25:44 +0000 (13:25 +0200)]
Added little explanation of eModifierTypeType_(Non)Constructive

Thanks to @campbellbarton for the explanation.

20 months agoCMake: Allow to use pre-compiled CentOS libraries
Sergey Sharybin [Wed, 9 Oct 2019 15:14:00 +0000 (17:14 +0200)]
CMake: Allow to use pre-compiled CentOS libraries

The goal is to make it able to use pre-compiled CentOS libraries on a
more modern system. Main issue was that it's possible that the compiler
on a newer version is defaulting to different C++11 ABI.

This change makes it so that if there is NO native libraries in the
lib folder and there IS pre-compiled CentOS folder, it will be used and
compiler will be forced to old ABI.

Differential Revision:

20 months agoAnnotations: Use flag to determine if the layer is a Ruler
Antonio Vazquez [Thu, 10 Oct 2019 06:11:47 +0000 (08:11 +0200)]
Annotations: Use flag to determine if the  layer is a Ruler

Proposed fix for T70141.

Before, the ruler was using the name of the layer as key, but this is very weak because if the layer name changes, the layer gets an annotation layer.

Now, the layer is marked using a flag and now it's possible to rename it.

Reviewed By: dfelinto

Differential Revision:

20 months agoFix T70691: Crash picking object from eyedropper
Campbell Barton [Thu, 10 Oct 2019 05:41:34 +0000 (16:41 +1100)]
Fix T70691: Crash picking object from eyedropper

Caused by 828905190e124

20 months agoFix crash versioning file-selector tool region
Campbell Barton [Thu, 10 Oct 2019 02:19:04 +0000 (13:19 +1100)]
Fix crash versioning file-selector tool region

Loading the file from T69967 was crashing.

20 months agoPyAPI: update for change in tessellate_polygon
Campbell Barton [Thu, 10 Oct 2019 00:30:50 +0000 (11:30 +1100)]
PyAPI: update for change in tessellate_polygon

20 months agoFix T70617: mesh.from_pydata() misses first edge if there are faces
Campbell Barton [Thu, 10 Oct 2019 00:08:17 +0000 (11:08 +1100)]
Fix T70617: mesh.from_pydata() misses first edge if there are faces

20 months agoCleanup: clang-format, spelling
Campbell Barton [Wed, 9 Oct 2019 23:25:46 +0000 (10:25 +1100)]
Cleanup: clang-format, spelling

20 months agoFix T70614 EEVEE: Bump with texture connected to other branches don't work
Clément Foucault [Wed, 9 Oct 2019 22:31:47 +0000 (00:31 +0200)]
Fix T70614 EEVEE: Bump with texture connected to other branches don't work

Was caused by the bump node not being evaluated because the other branch
was evaluated before.

To fix this, we use fromnode instead of tonode.

Also we fix a potential issue with recursiveness because
ntree_shader_copy_branch() also use nodeChainIterBackwards() which would
reset the iter_flag in the middle of the parent iteration. Use iter_flag
as a bitflag for each iteration to fix this.

20 months agoFix T70609 EEVEE: Shader using lots of nodegroups are slow to update
Clément Foucault [Wed, 9 Oct 2019 21:45:31 +0000 (23:45 +0200)]
Fix T70609 EEVEE: Shader using lots of nodegroups are slow to update

20 months agoFix T70659 Warning, Regression, slow vertex selection
Clément Foucault [Wed, 9 Oct 2019 16:11:10 +0000 (18:11 +0200)]
Fix T70659 Warning, Regression, slow vertex selection

This changes the fix for T70302 by reducing the number of things we discard.

20 months agoFix "make update" not working on buildbot after recent changes
Brecht Van Lommel [Wed, 9 Oct 2019 19:35:57 +0000 (21:35 +0200)]
Fix "make update" not working on buildbot after recent changes

The submodules don't have remote branches configured, skip that test since
we assume pulling from the "origin" remote anyway.

20 months agoSculpt: Fix wireframe drawing
Pablo Dobarro [Wed, 9 Oct 2019 17:03:57 +0000 (19:03 +0200)]
Sculpt: Fix wireframe drawing

With this commit sculpt mode draws the real mesh wireframe instead of the
triangulated version by ignoring non real edges when building the PBVH GPU buffers

Reviewed By: brecht

Differential Revision:

20 months agoFix T70596: Wrong default scale value for node wrapper tool.
Bastien Montagne [Wed, 9 Oct 2019 18:31:54 +0000 (20:31 +0200)]
Fix T70596: Wrong default scale value for node wrapper tool.

This affected all exporter add-ons using that wrapper to handle the node
shaders... sigh...

20 months agoFix T70677: Annotation converted to grease pencil remains unselectable
Antonio Vazquez [Wed, 9 Oct 2019 17:08:43 +0000 (19:08 +0200)]
Fix T70677: Annotation converted to grease pencil remains unselectable

The problem was the new object was created byt the tag for update objects in depsgraph was not tagged.

20 months agoGPU: Consider softpipe as software renderer
Sergey Sharybin [Wed, 9 Oct 2019 14:47:16 +0000 (16:47 +0200)]
GPU: Consider softpipe as software renderer

20 months agoCUDA Wrangler: Fix strict compiler warning
Sergey Sharybin [Mon, 7 Oct 2019 12:19:19 +0000 (14:19 +0200)]
CUDA Wrangler: Fix strict compiler warning

Namely addresses -Wstringop-truncation

Not sure if there is anything to be done for strncpy.

Differential Revision:

20 months agoFix T70544: Mesh extracted from Mask crash Blender when using Dyntopo
Pablo Dobarro [Mon, 7 Oct 2019 19:12:09 +0000 (21:12 +0200)]
Fix T70544: Mesh extracted from Mask crash Blender when using Dyntopo

This commit fixes an assert in mesh_runtime_check_normals_valid

Reviewed By: jbakker

Maniphest Tasks: T70544

Differential Revision:

20 months agoFix multires cursor not displaying the active vertex
Pablo Dobarro [Tue, 8 Oct 2019 22:55:56 +0000 (00:55 +0200)]
Fix multires cursor not displaying the active vertex

Reviewed By: brecht

Differential Revision:

20 months agoFix T70554: Snake Hook + Ctrl does not set the brush stroke in its normal direction
Pablo Dobarro [Mon, 7 Oct 2019 20:07:29 +0000 (22:07 +0200)]
Fix T70554: Snake Hook + Ctrl does not set the brush stroke in its normal direction

This commit also fixes the same issue in elastic deform

Reviewed By: jbakker

Maniphest Tasks: T70554

Differential Revision:

20 months agoFix Delaunay 2d valid bmesh mode bug.
Howard Trickey [Wed, 9 Oct 2019 13:26:55 +0000 (09:26 -0400)]
Fix Delaunay 2d valid bmesh mode bug.

Wasn't checking for repeated vertices.
Also, made choices of edges to keep more aesthetically pleasing.

20 months agoBuild: prepare "make update" to work for new release cycle branching
Brecht Van Lommel [Wed, 9 Oct 2019 12:41:34 +0000 (14:41 +0200)]
Build: prepare "make update" to work for new release cycle branching

Checking out release branches in submodules, and printing some more
informative messages when that fails.

20 months agoFix T61432: Sampling Subframes not working 2.8
Sebastián Barschkis [Wed, 9 Oct 2019 13:00:25 +0000 (15:00 +0200)]
Fix T61432: Sampling Subframes not working 2.8

Uncommented subframe logic and added correct time getter function (with subframe part in frame) to subframe update function

20 months agoFix T70640 EEVEE: Alpha hashed material is darker when alpha is not 1.0
Clément Foucault [Wed, 9 Oct 2019 12:56:21 +0000 (14:56 +0200)]
Fix T70640 EEVEE: Alpha hashed material is darker when alpha is not 1.0

Predivide all radiance components as the alpha effect comes from the hashed
transparency (pixel rejection).

20 months agoGPU: show one-time startup warnings for old Intel drivers with known issues
Brecht Van Lommel [Mon, 7 Oct 2019 16:42:02 +0000 (18:42 +0200)]
GPU: show one-time startup warnings for old Intel drivers with known issues

This is pretty conservative. We do not show warnings for e.g. HD 4000 with the
latest drivers as they appear to be working mostly fine even if unsupported,
and there is nothing the user can do to improve things.

Ref T70520

20 months agoGPU: show more descriptive labels on unsupported GPU dialog
Brecht Van Lommel [Wed, 9 Oct 2019 11:36:56 +0000 (13:36 +0200)]
GPU: show more descriptive labels on unsupported GPU dialog

Thanks to Ray Molenkamp for the help with the Windows implementation.

Fixes T70521

Differential Revision:

20 months agoCMake: Move software-gl to generic install procedure
Sergey Sharybin [Wed, 9 Oct 2019 11:07:40 +0000 (13:07 +0200)]
CMake: Move software-gl to generic install procedure

Removes custom logic from buildbot's packing step.

This also removes icons/ folder, but CMake was already copying the
icons to the root of the install folder.

20 months agoDeps: Fix wrong LLVM prefix used for Mesa
Sergey Sharybin [Wed, 9 Oct 2019 10:51:31 +0000 (12:51 +0200)]
Deps: Fix wrong LLVM prefix used for Mesa

It made it Mesa to be compiled with swrast rather than with llvmpipe.

20 months agoDeps: Add libraries needed for Software GL
Sergey Sharybin [Wed, 9 Oct 2019 10:36:40 +0000 (12:36 +0200)]
Deps: Add libraries needed for Software GL

Only compiled on Linux.

20 months agoCleanup: typo, style
Campbell Barton [Wed, 9 Oct 2019 09:13:59 +0000 (20:13 +1100)]
Cleanup: typo, style

20 months agoFix make deps libtool detection on macOS
Brecht Van Lommel [Sun, 6 Oct 2019 10:10:39 +0000 (12:10 +0200)]
Fix make deps libtool detection on macOS

20 months agoBuildbot: Correction to previous commit
Sergey Sharybin [Wed, 9 Oct 2019 08:37:09 +0000 (10:37 +0200)]
Buildbot: Correction to previous commit

Off-by-one calculating parent folders.

20 months agoBuildbot: Attempt to point precompiled libraries to a correct folder
Sergey Sharybin [Wed, 9 Oct 2019 08:34:12 +0000 (10:34 +0200)]
Buildbot: Attempt to point precompiled libraries to a correct folder

The CMAKE_SOURCES variable is not yet initialized when the buildbot
configuration is read. This is similar to the include of full release
configuration happening earlier in the file.

20 months agoBuildbot: Point to pre-compiled CentOS 7 libraries
Sergey Sharybin [Wed, 9 Oct 2019 07:50:58 +0000 (09:50 +0200)]
Buildbot: Point to pre-compiled CentOS 7 libraries

20 months agoBuildbot: Checkout precomiled CentOS libraries
Sergey Sharybin [Wed, 9 Oct 2019 07:42:42 +0000 (09:42 +0200)]
Buildbot: Checkout precomiled CentOS libraries

20 months agoFix missing clear of ID types tags
Sergey Sharybin [Wed, 9 Oct 2019 07:38:11 +0000 (09:38 +0200)]
Fix missing clear of ID types tags

Got lost in previous optimization commit.

20 months agoPyAPI: drop Vector requirement for tessellate_polygon
Campbell Barton [Wed, 9 Oct 2019 06:26:39 +0000 (17:26 +1100)]
PyAPI: drop Vector requirement for tessellate_polygon

Use mathutils_array_parse which converts any sequence of numbers.

20 months agoPyAPI: avoid normal calculation for tessellate_polygon
Campbell Barton [Wed, 9 Oct 2019 06:08:51 +0000 (17:08 +1100)]
PyAPI: avoid normal calculation for tessellate_polygon

Use fixed normal for 2D input, no need to calculate it.

20 months agoFix T70594: mathutils.geometry.tessellate_polygon flips triangles
mano-wii [Wed, 9 Oct 2019 05:53:53 +0000 (16:53 +1100)]
Fix T70594: mathutils.geometry.tessellate_polygon flips triangles

Some scripts will need to be updated to support this.

20 months agoFix T70662: Batch rename adds "\" before "."
Campbell Barton [Wed, 9 Oct 2019 04:12:15 +0000 (15:12 +1100)]
Fix T70662: Batch rename adds "\" before "."

20 months agoUI: hide text character options when out of edit-mode
Campbell Barton [Wed, 9 Oct 2019 02:53:27 +0000 (13:53 +1100)]
UI: hide text character options when out of edit-mode

These are overwritten when entering edit-mode so there is no use
in showing them in object mode.

Addresses T70566

20 months agoFix text edit-mode character info initialization
Campbell Barton [Wed, 9 Oct 2019 02:52:30 +0000 (13:52 +1100)]
Fix text edit-mode character info initialization

Using EditFont.pos before it was set.

20 months agoDocs: clarify Mesh.from_pydata edges argument usage
Campbell Barton [Wed, 9 Oct 2019 01:06:01 +0000 (12:06 +1100)]
Docs: clarify Mesh.from_pydata edges argument usage

Addresses T70617

20 months agoLocal Collections: Allow users to show hidden collections
Dalai Felinto [Thu, 3 Oct 2019 22:22:36 +0000 (19:22 -0300)]
Local Collections: Allow users to show hidden collections

Users now can turn on in a viewport collections that are temporarily
hidden (eye) in the view layer.

Design task: T61327

As for the implementation, I had to decouple the visibility in the
depsgraph from the visibility in the view layer.

Also there is a "bug" that in a way was there before which is some
operators (e.g., writing a text inside of a text object, tab into edit
mode) run regardless of the visibility of the active object. The bug was
present already (with object type visibility restriction) in 2.80 so if
we decide to tackle it, can be done separately (I have a patch for it
though P1132).

Reviewed by: brecht (thank you)

Differential Revision: D5992

20 months agoFix T69682: Render Audio ignores animation.
Richard Antalik [Tue, 8 Oct 2019 19:58:45 +0000 (12:58 -0700)]
Fix T69682: Render Audio ignores animation.

`sound_update_animation_flags_exec` didn't tag depsgraph to update.

Reviewed By: sergey

Maniphest Tasks: T69682

Differential Revision:

20 months agoFix T70601: Lasso select not functioning correctly in Armature Edit Mode
mano-wii [Tue, 8 Oct 2019 19:45:24 +0000 (16:45 -0300)]
Fix T70601: Lasso select not functioning correctly in Armature Edit Mode

This solution mimics the one used for pose by ignoring the bone line if either end is clipped.

20 months agoFix T70586 EEVEE: principled shader alpha bleeding issues
Clément Foucault [Tue, 8 Oct 2019 18:29:27 +0000 (20:29 +0200)]
Fix T70586 EEVEE: principled shader alpha bleeding issues

Avoid double multiplication by alpha on ssr/sss data.

20 months agoFix T70561: bad custom normals in mirrored geometry.
Bastien Montagne [Tue, 8 Oct 2019 18:16:07 +0000 (20:16 +0200)]
Fix T70561: bad custom normals in mirrored geometry.

Original code from rB1a9e698099b5 used a rather naive approach, now use
proper transpose of inverse of geometry transform for the normals.

20 months agoFix T68857 EditUV: Crash on Remesh modifier with 'Display in Edit Mode'
Clément Foucault [Tue, 8 Oct 2019 16:35:57 +0000 (18:35 +0200)]
Fix T68857 EditUV: Crash on Remesh modifier with 'Display in Edit Mode'

20 months agoFix T69363 EEVEE: Blender crash when using Edit mode for Ocean
Clément Foucault [Tue, 8 Oct 2019 14:59:29 +0000 (16:59 +0200)]
Fix T69363 EEVEE: Blender crash when using Edit mode for Ocean

Use same Mesh* as extraction. We always use the final mesh for shaded geom.

20 months agoCTest: Fix failing test BLI_expr_pylike_eval_test on clang/windows
Ray Molenkamp [Tue, 8 Oct 2019 15:46:09 +0000 (09:46 -0600)]
CTest: Fix failing test BLI_expr_pylike_eval_test on clang/windows

clang got a little to aggressive discarding unused variables
see D6012 for details.

Differential Revision:

Reviewers: brecht, sergey, angavrilov

20 months agoSculpt: support automasking, pose and mask expand for multires
Brecht Van Lommel [Mon, 30 Sep 2019 14:33:04 +0000 (16:33 +0200)]
Sculpt: support automasking, pose and mask expand for multires

These were the last remaining new sculpt tools that did not support multires.
Performance could be improved still, but it should work.

Fixes T68899

20 months agoFix multires sculpt not setting the active vertex correctly
Brecht Van Lommel [Tue, 8 Oct 2019 15:07:18 +0000 (17:07 +0200)]
Fix multires sculpt not setting the active vertex correctly

Also cleanup code to remove duplicated min_depth tracking, ray intersection
already does it.

20 months agoCleanup: avoid converting from CCGElem to SubdivCCGCoord
Brecht Van Lommel [Tue, 8 Oct 2019 14:08:16 +0000 (16:08 +0200)]
Cleanup: avoid converting from CCGElem to SubdivCCGCoord

The other direction is faster.

20 months agoCleanup: minor refactoring of mask expand and floodfill
Brecht Van Lommel [Tue, 8 Oct 2019 12:57:37 +0000 (14:57 +0200)]
Cleanup: minor refactoring of mask expand and floodfill

20 months agoFix T70585: Walk Navigation keyframe tweaks (still frame)
Philipp Oeser [Tue, 8 Oct 2019 11:53:27 +0000 (13:53 +0200)]
Fix T70585: Walk Navigation keyframe tweaks (still frame)

Walk Navigation was missing rotation keyframes on confirm (when animation
wasnt playing) after rB22bdd08dfd0.

Because for walk [in contrast to fly], the cursor is constantly warped
(WM_cursor_warp in walkEvent), we cant do something reasonable with
comparing mouse positions (to detect rotation) when mouse comes to rest.

Now remember if rotation changed at any time.

Also tweaked the insertion for location keyframes (which was always
happening even if the camera did not move), now checking the real dvec
(instead on relying on speed)

Reviewed By: dfelinto

Maniphest Tasks: T70585

Differential Revision:

20 months agoDepsgraph: Avoid threading for trivial operations
Sergey Sharybin [Tue, 8 Oct 2019 09:34:07 +0000 (11:34 +0200)]
Depsgraph: Avoid threading for trivial operations

Found this while looking into T70463, solves the high spinning times
mentioned in T70463#791026.

Sounds logical that iterating over an array to modify a single property
is faster than doing it in threads. But strangely, doing it for both
nodes and its components is still faster in threads here.

Gives extra speedup with a file mentioned in the report.

Reviewed By: brecht, mont29

Differential Revision:

20 months agoSculpt: Fix projection artifacts by changing the voxel remesh isovalue
Pablo Dobarro [Mon, 7 Oct 2019 16:33:28 +0000 (18:33 +0200)]
Sculpt: Fix projection artifacts by changing the voxel remesh isovalue

This should fix most of the shrinkwrap artifacts when the preserve volume option is active. After this commit the default voxel remehser settings should not fail in the default cube.

Reviewed By: zeddb

Differential Revision:

20 months agoFix "make update" error with old git versions, for the buildbot
Brecht Van Lommel [Tue, 8 Oct 2019 13:11:55 +0000 (15:11 +0200)]
Fix "make update" error with old git versions, for the buildbot

Just skip convenience test that checks if a rebase/merge is in progress.

20 months agoCleanup/fix for fix (c).
Bastien Montagne [Tue, 8 Oct 2019 12:45:50 +0000 (14:45 +0200)]
Cleanup/fix for fix (c).

Sorry for the noise... For once building with everything hid the issue
instead of revealing it.

20 months agoFix T70626: VSE: Slip Strip Operator doesn't refresh audio on confirm
Philipp Oeser [Tue, 8 Oct 2019 07:46:37 +0000 (09:46 +0200)]
Fix T70626: VSE: Slip Strip Operator doesn't refresh audio on confirm

Maniphest Tasks: T70626

Reviewed By: ISS, sergey

Differential Revision:

20 months agoFix build error (missing BKE_global.h)
Dalai Felinto [Tue, 8 Oct 2019 12:16:19 +0000 (09:16 -0300)]
Fix build error (missing BKE_global.h)

20 months agoFix T70588: Playing animation (after deleting rigid body obj) crashes blender.
Bastien Montagne [Tue, 8 Oct 2019 09:51:57 +0000 (11:51 +0200)]
Fix T70588: Playing animation (after deleting rigid body obj) crashes blender.

Fixing/working around another weakness of current RBW model... This is
not really nice, but it should work for now, and we cannot really do
anything else but that kind of monkey patching here anyway.

20 months agoFix: region toggle operator being able to toggle regions it shouldn't
Julian Eisel [Tue, 8 Oct 2019 08:50:43 +0000 (10:50 +0200)]
Fix: region toggle operator being able to toggle regions it shouldn't

Only regions with alignment set should be toggle-able. If this is not
set, then the region is likely either a main region, or entirely hidden
by the user (not just collapsed).

20 months agoDepsgraph: Cleanup, spelling in comment
Sergey Sharybin [Tue, 8 Oct 2019 09:12:30 +0000 (11:12 +0200)]
Depsgraph: Cleanup, spelling in comment

20 months agoDepsgraph: Perform early exit check prior to time tag
Sergey Sharybin [Sun, 6 Oct 2019 10:19:12 +0000 (12:19 +0200)]
Depsgraph: Perform early exit check prior to time tag

Evaluation is not entirely cheap even in the case when there is nothing tagged
in the scene. This is because of all the calculation of pending operations,
cleating runtime flags and so on.

This commit makes it so time operation is tagged for update prior to early exit
check. Improves playback speed in a scene without anything animated.

Maniphest Tasks: T70463

Differential Revision:

20 months agoDepsgraph: Cleanup, de-duplicate time source tagging
Sergey Sharybin [Sun, 6 Oct 2019 10:18:15 +0000 (12:18 +0200)]
Depsgraph: Cleanup, de-duplicate time source tagging

20 months agoDepsgraph: Don't force time update when legacy flag 0 is used
Sergey Sharybin [Sun, 6 Oct 2019 10:15:59 +0000 (12:15 +0200)]
Depsgraph: Don't force time update when legacy flag 0 is used

20 months agoFix T70522: Sidebars in Clip Editor work incorrectly in Dopesheet mode
Julian Eisel [Tue, 8 Oct 2019 08:29:27 +0000 (10:29 +0200)]
Fix T70522: Sidebars in Clip Editor work incorrectly in Dopesheet mode

Actually, in Dopesheet mode, the regions shouldn't be toggle-able at
all. For the user they should appear to not exist.
Previously the Movie Clip Editor archieved this by setting the region
alignments to NONE, which this restores.

Introduced in 6aef124e7d28.

20 months agoKeymap: use right mouse for console context menu
Campbell Barton [Tue, 8 Oct 2019 03:33:50 +0000 (14:33 +1100)]
Keymap: use right mouse for console context menu

Was using 'w' which doesn't work with text entry.
This matches the text editor.

20 months agoUI: support passing a function to WorkSpace.status_text_set()
Campbell Barton [Tue, 8 Oct 2019 03:21:41 +0000 (14:21 +1100)]
UI: support passing a function to WorkSpace.status_text_set()

This allows Python operators to draw icons and other UI elements
into the status bar.