blender.git
21 months agoMerge branch 'master' into blender2.8
Campbell Barton [Mon, 22 Oct 2018 03:59:12 +0000 (14:59 +1100)]
Merge branch 'master' into blender2.8

Reverts: 92fd931e536

21 months agoFix T57328: 'Save As Copy' prints warning
Campbell Barton [Mon, 22 Oct 2018 03:51:06 +0000 (14:51 +1100)]
Fix T57328: 'Save As Copy' prints warning

21 months agoCycles: Enable shadow information in requested features when denoising is used
Lukas Stockner [Sun, 21 Oct 2018 22:14:22 +0000 (00:14 +0200)]
Cycles: Enable shadow information in requested features when denoising is used

The shadow information isn't only used for shadowcatchers, but also to generate the shadowing feature pass of the denoiser.

21 months agoFix T57320: Crash when adding a linked scene, then deleting it.
Bastien Montagne [Sun, 21 Oct 2018 15:22:09 +0000 (17:22 +0200)]
Fix T57320: Crash when adding a linked scene, then deleting it.

You want to check collections (for NULL children) first, before you
actually go into those children collections checking for NULL objects...

21 months agoFix non-sense overloaded code in remapping post-process of objects and collections.
Bastien Montagne [Sun, 21 Oct 2018 15:20:17 +0000 (17:20 +0200)]
Fix non-sense overloaded code in remapping post-process of objects and collections.

In one case, code was calling the same func on bmain for all objects or
collections inside that bmain... seriously...

21 months agoOptimize meta-ball basis check.
Bastien Montagne [Sun, 21 Oct 2018 15:17:34 +0000 (17:17 +0200)]
Optimize meta-ball basis check.

`BKE_mball_is_basis_for()` was processing whole name, when we can
actually rule out most of cases by just checking third char of the ID
names first, which is much, much cheaper.

Even though MBalls are not much used nowadays, that's a nice
optimization when this is called over a whole Main database full of
meta-balls objects...

21 months agoIcons: update geometry icons
William Reynish [Sun, 21 Oct 2018 05:04:58 +0000 (16:04 +1100)]
Icons: update geometry icons

- Tweaked icons for Box Select, Circle Select & Lasso Select.
- Tweaked icons for Rip Region & Rip Edge.
- Added icons for Bone Envelope, Bone Size, Pose Breakdown,
  Pose Push & Pose Relax.
- Added icons for curve Extrude, Extrude Cursor.

Also removed grease pencil mirror tool which wasn't an active tool,
and is now consistent with regular Edit Mode.

21 months agoCleanup: style
Campbell Barton [Sun, 21 Oct 2018 05:22:46 +0000 (16:22 +1100)]
Cleanup: style

21 months agoCleanup: trailing space
Campbell Barton [Sun, 21 Oct 2018 05:08:30 +0000 (16:08 +1100)]
Cleanup: trailing space

21 months agoCleanup: compiler warnings
Campbell Barton [Sun, 21 Oct 2018 05:22:31 +0000 (16:22 +1100)]
Cleanup: compiler warnings

21 months agoGP: Fix duplication when draw strokes in multiple windows
Antonioya [Sat, 20 Oct 2018 17:40:29 +0000 (19:40 +0200)]
GP: Fix duplication when draw strokes in multiple windows

The stroke must be visible only in the current region and only visible when the stroke is completed.

21 months agoGP: Redesign drawing cache to support particles
Antonioya [Fri, 19 Oct 2018 18:39:21 +0000 (20:39 +0200)]
GP: Redesign drawing cache to support particles

Full redesign of the cache system used for drawing strokes and handle derived frame data.

Before, the cache was saved in bGPdata and a hash was used to manage several objects with the same datablock.

Old design made the use of particles very inefficient and prone to bugs and segment faults, and especially when this was mixed with onion skinning and multiple objects using same datablock. Also, there were some conflicts with the depsgrah logic (the old design was done before despgraph was in place) that made the use of hash not working.

The new design saves the data in the object runtime struct and avoid the use of any hash to find the right data. This improves the speed and reduce a lot the complexity of the code, memory allocation, hash overload and adds full support for particles and reused datablocks.

The particles can reuse the modifiers and shader effects of the original grease pencil object.

21 months agoFix typo
Joshua Leung [Sat, 20 Oct 2018 02:28:43 +0000 (15:28 +1300)]
Fix typo

21 months agoFix: Drivers popover not showing
Joshua Leung [Fri, 12 Oct 2018 22:32:28 +0000 (11:32 +1300)]
Fix: Drivers popover not showing

This was broken since cca87ccc753a85b447872a259c9d3e3f07ec1c13

The problem was that as this popover was defined in the C-code
for the Graph Editor, the relevant panel never got added to the
WM_paneltype registry, since only Python defined panels get
WM_paneltype_add() called when they are defined.

Since the majority of panels defined for regions are only used there,
a more localised fix was applied here by only adding the driver popover
to the global list manually.

21 months agoMulti-Objects: pose slide operators
Dalai Felinto [Fri, 19 Oct 2018 22:08:12 +0000 (19:08 -0300)]
Multi-Objects: pose slide operators

* POSE_OT_breakdown
* POSE_OT_relax
* POSE_OT_push
* POSE_OT_propagate

Note: I could not test relax because of T57313.

Note 2: I believe those are the last armature related operators to be
ported - \o/

21 months agoFix Eevee Reflection CubeMap and Irradiance Volume on some Intel gpus
mano-wii [Fri, 19 Oct 2018 21:22:02 +0000 (18:22 -0300)]
Fix Eevee Reflection CubeMap and Irradiance Volume on some Intel gpus

When you pass a struct as a parameter to a function, the qualifier "layout(column_major)" is lost.

21 months agoRename BakeAction > NLA_OT_bake
Dalai Felinto [Fri, 19 Oct 2018 19:35:09 +0000 (16:35 -0300)]
Rename BakeAction > NLA_OT_bake

This was already the bl_idname anyways.

Now this seems to be working, for single and multi-pose.
That said, the operator seems to fail on redo.

21 months agoRemove defunct NLA_OT_bake
Dalai Felinto [Fri, 19 Oct 2018 19:12:35 +0000 (16:12 -0300)]
Remove defunct NLA_OT_bake

It's been 9 years too long.
And don't get this one confused with nla.bake (why would you even?).

The·BakeAction operator will be renamed to NLA_TO_bake next.

21 months agoMulti-Objects: POSE_OT_select_grouped > POSE_SEL_SAME_KEYINGSET 3/3
Dalai Felinto [Fri, 19 Oct 2018 18:44:04 +0000 (15:44 -0300)]
Multi-Objects: POSE_OT_select_grouped > POSE_SEL_SAME_KEYINGSET 3/3

Note for posterity, I couldn't figure out a way to test this mode
properly. That said, it should be working with multiple-poses now.

21 months agoMulti-Objects: POSE_OT_select_grouped > POSE_SEL_SAME_LAYER 2/3
Dalai Felinto [Fri, 19 Oct 2018 15:44:33 +0000 (12:44 -0300)]
Multi-Objects: POSE_OT_select_grouped > POSE_SEL_SAME_LAYER 2/3

21 months agoMulti-Objects: POSE_OT_select_grouped > POSE_SEL_SAME_GROUP 1/3
Dalai Felinto [Fri, 19 Oct 2018 14:53:48 +0000 (11:53 -0300)]
Multi-Objects: POSE_OT_select_grouped > POSE_SEL_SAME_GROUP 1/3

And disable the other options for now.

21 months agoCleanup: CTX_DATA_BEGIN_FOR_ID no longer needed
Dalai Felinto [Fri, 19 Oct 2018 13:15:01 +0000 (10:15 -0300)]
Cleanup: CTX_DATA_BEGIN_FOR_ID no longer needed

21 months agoFix py API docgen script for new context members.
Bastien Montagne [Fri, 19 Oct 2018 18:13:50 +0000 (20:13 +0200)]
Fix py API docgen script for new context members.

21 months agoMake Static Override optional/hidden by default.
Bastien Montagne [Fri, 19 Oct 2018 14:42:42 +0000 (16:42 +0200)]
Make Static Override optional/hidden by default.

That feature will not be ready (or at least, not tested enough) to be
officially part of 2.80 beta. So we disable it by default, hidding it
behind a startup option (`--enable-static-override`), and a python
app var (`bpy.app.use_static_override`).

That way, people who really want to play with it can do it easily, while
not exposing/enabling non-production-ready feature by default.

Note that underlying override code remains active, i.e. files we do have
overridden data-blocks will be loaded correctly according to static override.

21 months agoEevee: LightProbes: Fix negative padding
Clément Foucault [Fri, 19 Oct 2018 13:12:45 +0000 (15:12 +0200)]
Eevee: LightProbes: Fix negative padding

21 months agoFix function using same local variable name as output variable
Clément Foucault [Fri, 19 Oct 2018 13:06:08 +0000 (15:06 +0200)]
Fix function using same local variable name as output variable

This may fix issues with certain compiler.

21 months agoDope Sheet: remove many hard-coded color and alpha constants.
Alexander Gavrilov [Thu, 18 Oct 2018 20:48:06 +0000 (23:48 +0300)]
Dope Sheet: remove many hard-coded color and alpha constants.

Add the necessary colors and/or alpha components to the theme instead.
Also switch the background for ordinary channels to use the likely
intended theme option, instead of the window background color.

The general rule is that the channel color is drawn full strength in the
channel list on the left, and with alpha in the actual key frame area on
the right. This alpha is also reused with bone group colors.

Reviewers: brecht, billreynish

Differential Revision: https://developer.blender.org/D3813

21 months agoUI: reorder and group blend modes in menus, similar to other apps.
Charlie Jolly [Fri, 19 Oct 2018 14:56:38 +0000 (16:56 +0200)]
UI: reorder and group blend modes in menus, similar to other apps.

Differential Revision: https://developer.blender.org/D3815

21 months agoUI: move reports / job back to status bar, but make it more visible with color.
Brecht Van Lommel [Fri, 19 Oct 2018 15:14:27 +0000 (17:14 +0200)]
UI: move reports / job back to status bar, but make it more visible with color.

21 months agoMerge remote-tracking branch 'origin/master' into blender2.8
Ray Molenkamp [Fri, 19 Oct 2018 15:16:26 +0000 (09:16 -0600)]
Merge remote-tracking branch 'origin/master' into blender2.8

21 months agobuild_depenencies: Fix url for openal.
Ray Molenkamp [Fri, 19 Oct 2018 15:09:06 +0000 (09:09 -0600)]
build_depenencies: Fix url for openal.

21 months agoFix shadows of sun type lights on some Intel gpus
mano-wii [Fri, 19 Oct 2018 14:02:36 +0000 (11:02 -0300)]
Fix shadows of sun type lights on some Intel gpus

When you pass a struct as a parameter to a function, the qualifier "layout(column_major)" is lost.

21 months agoFix T57284: poor result UV unwrapping concave n-gon.
Brecht Van Lommel [Fri, 19 Oct 2018 12:42:27 +0000 (14:42 +0200)]
Fix T57284: poor result UV unwrapping concave n-gon.

21 months agoMulti-Objects: Implement/Fix POSE_OT_select_constraint_target
Dalai Felinto [Fri, 19 Oct 2018 12:38:21 +0000 (09:38 -0300)]
Multi-Objects: Implement/Fix POSE_OT_select_constraint_target

This operator had an initial multi-objects implementation.
However it would not select target bones across different selected objects.

21 months agoOutliner: Open empty collection when something is dragged into it
Jacques Lucke [Fri, 19 Oct 2018 12:30:39 +0000 (14:30 +0200)]
Outliner: Open empty collection when something is dragged into it

Reviewers: brecht

Differential Revision: https://developer.blender.org/D3814

21 months agoUV_OT_unwrap: Error messages
Dalai Felinto [Fri, 19 Oct 2018 12:13:59 +0000 (09:13 -0300)]
UV_OT_unwrap: Error messages

Make sure a message is not reported multiple times when working with
multi-objects. Like in 2.7x we may have two infos coming from the same operator.

In 2.7 we could report non-uniform xor non-scaled, and subsurface.
Now we can report each one of those errors separately.

21 months agoFix multiple-object uv selection not "deselecting" other objects
Dalai Felinto [Fri, 19 Oct 2018 11:49:55 +0000 (08:49 -0300)]
Fix multiple-object uv selection not "deselecting" other objects

21 months agoCTX_DATA_BEGIN for active object only (..._from_active_object)
Dalai Felinto [Fri, 19 Oct 2018 11:29:15 +0000 (08:29 -0300)]
CTX_DATA_BEGIN for active object only (..._from_active_object)

For now only `selected_pose_bones_from_active_object`, more options can
be added on demand.

Discussed this with Campbell Barton. We may need this only for selected
pose bones, time will tell.

21 months agoVersioning: name screens by their workspaces
Campbell Barton [Fri, 19 Oct 2018 09:29:15 +0000 (20:29 +1100)]
Versioning: name screens by their workspaces

Avoids all screens in the startup file being named 'Default.###'.

21 months agoImage Space: make 'UV Edit' a separate mode
Campbell Barton [Fri, 19 Oct 2018 09:10:14 +0000 (20:10 +1100)]
Image Space: make 'UV Edit' a separate mode

This is needed for splitting UV into its own editor, see: T54744

21 months agoOutliner: only drag element under mouse if it was not selected before
Jacques Lucke [Fri, 19 Oct 2018 08:59:53 +0000 (10:59 +0200)]
Outliner: only drag element under mouse if it was not selected before

Reviewers: brecht

Differential Revision: https://developer.blender.org/D3811

21 months agoPartial Revert: bring back some comments
Jacques Lucke [Fri, 19 Oct 2018 08:51:18 +0000 (10:51 +0200)]
Partial Revert: bring back some comments

21 months agoRNA: add widget property access
Campbell Barton [Fri, 19 Oct 2018 08:32:43 +0000 (19:32 +1100)]
RNA: add widget property access

21 months agoMerge branch 'master' into blender2.8
Campbell Barton [Fri, 19 Oct 2018 06:51:40 +0000 (17:51 +1100)]
Merge branch 'master' into blender2.8

21 months agoFix error disabling all addons
Campbell Barton [Fri, 19 Oct 2018 06:49:16 +0000 (17:49 +1100)]
Fix error disabling all addons

21 months agoUI: correct face center button active state
Campbell Barton [Fri, 19 Oct 2018 06:10:40 +0000 (17:10 +1100)]
UI: correct face center button active state

21 months agoFix T57295: Edit-mesh modes got out of sync
Campbell Barton [Fri, 19 Oct 2018 04:48:39 +0000 (15:48 +1100)]
Fix T57295: Edit-mesh modes got out of sync

21 months agoCleanup: compiler warnings
Campbell Barton [Fri, 19 Oct 2018 03:51:55 +0000 (14:51 +1100)]
Cleanup: compiler warnings

21 months agoFix UI message-bus automatic subscription
Campbell Barton [Fri, 19 Oct 2018 03:45:11 +0000 (14:45 +1100)]
Fix UI message-bus automatic subscription

21 months agoFix T57294: Modifiers cage ignore face visibility
Campbell Barton [Fri, 19 Oct 2018 02:57:00 +0000 (13:57 +1100)]
Fix T57294: Modifiers cage ignore face visibility

21 months agoTool System: option for transform drag action
Campbell Barton [Fri, 19 Oct 2018 00:54:26 +0000 (11:54 +1100)]
Tool System: option for transform drag action

See: T57203

21 months agoPartial revert '#if 0' cleanup
Campbell Barton [Thu, 18 Oct 2018 22:07:40 +0000 (09:07 +1100)]
Partial revert '#if 0' cleanup

Partially revert 41216d5ad4c722e2ad9f15c968af454fc7566d5e

Some of this code had comments to be left as is for readability,
or comment the code should be kept.
Other functions were only for debugging.

21 months agoEdit Mesh: Decrease the depth bias on vertices
Clément Foucault [Thu, 18 Oct 2018 18:04:47 +0000 (20:04 +0200)]
Edit Mesh: Decrease the depth bias on vertices

21 months agoFix Copy Selection to Buffer breaking library paths.
Brecht Van Lommel [Thu, 18 Oct 2018 17:51:34 +0000 (19:51 +0200)]
Fix Copy Selection to Buffer breaking library paths.

This is a bug experienced by animators in the Blender Studio that developers
have been trying to fix for a /long/ time.

What happens is that partial file writing extracts the needed datablocks from
the main list of datablocks into a smaller one. Afterwards they are added back
to the main list, but in some cases not exactly in the same order.

There is file path remapping code that depends on the datablocks being in
exactly the same order as before, and when this was not the case filepaths
would get swapped between datablocks

The reason datablocks are not restored in the same order is because the sorting
of datablocks by name is a) case insensitive and b) undefined if there are
multiple datablocks with the same name from different libraries. This should
be made well defined, but the fix in this commit is simpler.

The way animators ran into this bug is that they use the Copy Attributes addon
a lot, which has as the first item in the menu Copy Selection to Buffer. In
some cases this would be clicked accidentally when menu is near the edge of the
window, breaking the library paths which would only be noticed a much later on
file save and reload.

The way this bug was finally tracked down is that it was suspected that the
undo system was the cause, and so Bastien added library validation for undo.
When Hjalti then did undo and noticed the error, he remembered accidentally
clicking Copy Selection to Buffer just before, and we could finally reproduce
the bug.

21 months agoMerge branch 'master' into blender2.8
Brecht Van Lommel [Thu, 18 Oct 2018 18:11:14 +0000 (20:11 +0200)]
Merge branch 'master' into blender2.8

21 months agoFix Copy Objects to Buffer breaking library paths.
Brecht Van Lommel [Thu, 18 Oct 2018 17:51:34 +0000 (19:51 +0200)]
Fix Copy Objects to Buffer breaking library paths.

This is a bug experienced by animators in the Blender Studio that developers
have been trying to fix for a /long/ time.

What happens is that partial file writing extracts the needed datablocks from
the main list of datablocks into a smaller one. Afterwards they are added back
to the main list, but in some cases not exactly in the same order.

There is file path remapping code that depends on the datablocks being in
exactly the same order as before, and when this was not the case filepaths
would get swapped between datablocks

The reason datablocks are not restored in the same order is because the sorting
of datablocks by name is a) case insensitive and b) undefined if there are
multiple datablocks with the same name from different libraries. This should
be made well defined, but the fix in this commit is simpler.

The way animators ran into this bug is that they use the Copy Attributes addon
a lot, which has as the first item in the menu Copy Selection to Buffer. In
some cases this would be clicked accidentally when menu is near the edge of the
window, breaking the library paths which would only be noticed a much later on
file save and reload.

The way this bug was finally tracked down is that it was suspected that the
undo system was the cause, and so Bastien added library validation for undo.
When Hjalti then did undo and noticed the error, he remembered accidentally
clicking Copy Selection to Buffer just before, and we could finally reproduce
the bug.

21 months agoLinks: update development fund link to new URL.
Brecht Van Lommel [Thu, 18 Oct 2018 16:55:50 +0000 (18:55 +0200)]
Links: update development fund link to new URL.

21 months agoFix assert/crash when copying RGBA color into RGB
Dalai Felinto [Thu, 18 Oct 2018 14:40:27 +0000 (14:40 +0000)]
Fix assert/crash when copying RGBA color into RGB

For example, copy from viewport display color into brush color.

21 months agoOutliner: drop into master collection when below everything else
Jacques Lucke [Thu, 18 Oct 2018 13:45:48 +0000 (15:45 +0200)]
Outliner: drop into master collection when below everything else

Reviewers: brecht

Differential Revision: https://developer.blender.org/D3810

21 months agoCleanup: Remove more #if 0 blocks
Jacques Lucke [Thu, 18 Oct 2018 13:43:06 +0000 (15:43 +0200)]
Cleanup: Remove more #if 0 blocks

Continuation of https://developer.blender.org/D3802

Reviewers: brecht

Differential Revision: https://developer.blender.org/D3808

21 months agoFix debug build after recent changes.
Brecht Van Lommel [Thu, 18 Oct 2018 12:48:22 +0000 (14:48 +0200)]
Fix debug build after recent changes.

21 months agoEevee: Fix default texture coord for procedural texture in world tree
Clément Foucault [Thu, 18 Oct 2018 13:30:06 +0000 (15:30 +0200)]
Eevee: Fix default texture coord for procedural texture in world tree

21 months agoCleanup: node_tex_checker: Vectorize operation in GLSL
Clément Foucault [Thu, 18 Oct 2018 13:17:21 +0000 (15:17 +0200)]
Cleanup: node_tex_checker: Vectorize operation in GLSL

21 months agoFix use of uninitialized variable in cloth collision.
Brecht Van Lommel [Thu, 18 Oct 2018 10:20:33 +0000 (12:20 +0200)]
Fix use of uninitialized variable in cloth collision.

No apparent difference in a quick simulation, but was clearly wrong.

21 months agoCleanup: fix compiler warnings.
Brecht Van Lommel [Thu, 18 Oct 2018 10:19:06 +0000 (12:19 +0200)]
Cleanup: fix compiler warnings.

21 months agoUI: closure some more panels by default, leaving open mostly 1 per tab.
William Reynish [Thu, 18 Oct 2018 10:13:06 +0000 (12:13 +0200)]
UI: closure some more panels by default, leaving open mostly 1 per tab.

21 months agoPyAPI: Support for custom tool registration
Campbell Barton [Thu, 18 Oct 2018 05:46:43 +0000 (16:46 +1100)]
PyAPI: Support for custom tool registration

Added a module bpy.utils.toolsystem which only exposes ToolDef,
to avoid scripts referencing bl_ui internals.

21 months agoTool System: expose shear tool x/y option
Campbell Barton [Thu, 18 Oct 2018 02:55:01 +0000 (13:55 +1100)]
Tool System: expose shear tool x/y option

21 months agoKeymap: use tweak event for shear
Campbell Barton [Thu, 18 Oct 2018 02:06:23 +0000 (13:06 +1100)]
Keymap: use tweak event for shear

21 months agoGizmo: tweak sorting to avoid view-aligned shear
Campbell Barton [Thu, 18 Oct 2018 01:58:54 +0000 (12:58 +1100)]
Gizmo: tweak sorting to avoid view-aligned shear

21 months agoGizmo: remove 'Click Anywhere' option
Campbell Barton [Thu, 18 Oct 2018 01:30:23 +0000 (12:30 +1100)]
Gizmo: remove 'Click Anywhere' option

Having an invisible gizmo caused event handling problems (see: T56603).

This is hard to avoid since gizmos are similar to buttons in the way
they have priority over the regular keymap.

Transform events use tweak so events to fall though to the general
view 3d keymap (for cursor placement for eg).

21 months agoCleanup: style
Campbell Barton [Thu, 18 Oct 2018 01:03:04 +0000 (12:03 +1100)]
Cleanup: style

21 months agoCleanup: use mul_m3_series
Campbell Barton [Thu, 18 Oct 2018 00:45:21 +0000 (11:45 +1100)]
Cleanup: use mul_m3_series

21 months agoGizmo: depth sort shear gizmos
Campbell Barton [Thu, 18 Oct 2018 00:41:07 +0000 (11:41 +1100)]
Gizmo: depth sort shear gizmos

21 months agoCleanup: move gizmo sort functions into an API
Campbell Barton [Thu, 18 Oct 2018 00:26:03 +0000 (11:26 +1100)]
Cleanup: move gizmo sort functions into an API

21 months agoOptimization: Edit Mesh Overlay
mano-wii [Wed, 17 Oct 2018 18:45:58 +0000 (15:45 -0300)]
Optimization: Edit Mesh Overlay

In tests with edit_cage: performance jumped from 9.37ms to 9.17ms.

21 months agonode_shader_utils: Proper fix for node_normalmap accessor returning ellipsis value.
Bastien Montagne [Wed, 17 Oct 2018 18:18:40 +0000 (20:18 +0200)]
node_shader_utils: Proper fix for node_normalmap accessor returning ellipsis value.

Ellipsis value is internal ingredient only, to tag hidden _node_normalmap
'real' property as not yet initialized. Public node_normalmap accessor
should never ever have that value, it's either None or a valid node!

21 months agoRevert "Fix error on FBX export after material changes"
Bastien Montagne [Wed, 17 Oct 2018 18:17:02 +0000 (20:17 +0200)]
Revert "Fix error on FBX export after material changes"

This reverts commit ce4cfbe108d0641832d86a731ea32f596220b7c5.

Obviously wrong 'fix', please do not touch other dev’s code, especially
in active/WIP area, when you do not fully understand it.

21 months agoFix error on FBX export after material changes
Dalai Felinto [Wed, 17 Oct 2018 17:04:04 +0000 (17:04 +0000)]
Fix error on FBX export after material changes

Update the addons repository as well.

21 months agoDRW: Fix DRW_shgroup_create_sub returning source shgroup
Clément Foucault [Wed, 17 Oct 2018 17:01:56 +0000 (19:01 +0200)]
DRW: Fix DRW_shgroup_create_sub returning source shgroup

instead of the actual sub group...

21 months agoEditMesh: Fix uninitialized value causing red outline on edges
Clément Foucault [Wed, 17 Oct 2018 16:49:27 +0000 (18:49 +0200)]
EditMesh: Fix uninitialized value causing red outline on edges

21 months agoObjectMode: Fix Outlines being drawn for BBox meshes
Clément Foucault [Wed, 17 Oct 2018 16:09:23 +0000 (18:09 +0200)]
ObjectMode: Fix Outlines being drawn for BBox meshes

21 months agoObjectMode: Fix instances with BoundBox drawtype not displaying
Clément Foucault [Wed, 17 Oct 2018 16:08:00 +0000 (18:08 +0200)]
ObjectMode: Fix instances with BoundBox drawtype not displaying

21 months agoShrinkwrap: implement the use of smooth normals in constraint & modifier.
Alexander Gavrilov [Wed, 3 Oct 2018 16:09:43 +0000 (19:09 +0300)]
Shrinkwrap: implement the use of smooth normals in constraint & modifier.

- Use smooth normals to displace in Above Surface mode.
- Add an option to align an axis to the normal in the constraint.

I've seen people request the alignment feature, and it seems useful.
For the actual aligning I use the damped track logic.

In order to conveniently keep mesh data needed for normal
computation together, a new data structure is introduced.

Reviewers: mont29

Differential Revision: https://developer.blender.org/D3762

21 months agoMerge branch 'master' into blender2.8
Bastien Montagne [Wed, 17 Oct 2018 14:50:09 +0000 (16:50 +0200)]
Merge branch 'master' into blender2.8

Conflicts:
source/blender/blenkernel/BKE_global.h
source/blender/editors/undo/ed_undo.c

21 months agoDEBUG_IO: add sanity check on libdata in undo step as well.
Bastien Montagne [Wed, 17 Oct 2018 14:43:02 +0000 (16:43 +0200)]
DEBUG_IO: add sanity check on libdata in undo step as well.

There are serious suspicions that weird corruptions faced by studio
artists may happen in undo/redo code, so let's see whether that's the
case.

With this, and when --debug-io arg is passed on startup, the whole lib
data are checked at every undo. This makes undo slower (from two to
three times slower), but it could help us spot better what happens...

21 months agoExpose 'debug_io' flag in bpy.app
Bastien Montagne [Wed, 17 Oct 2018 14:42:36 +0000 (16:42 +0200)]
Expose 'debug_io' flag in bpy.app

21 months agoMinor style cleanup.
Bastien Montagne [Wed, 17 Oct 2018 14:42:18 +0000 (16:42 +0200)]
Minor style cleanup.

21 months agoDope Sheet: fix assert in new hold code when bezier keys are not sorted.
Alexander Gavrilov [Wed, 17 Oct 2018 13:07:52 +0000 (16:07 +0300)]
Dope Sheet: fix assert in new hold code when bezier keys are not sorted.

Turns out this can happen during duplicate+drag operations.

21 months agoFix T57096: Crash when scaling bones
Philipp Oeser [Wed, 17 Oct 2018 12:51:38 +0000 (14:51 +0200)]
Fix T57096: Crash when scaling bones

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D3777

21 months agoCleanup: remove some #if 0 blocks
Jacques Lucke [Wed, 17 Oct 2018 10:43:41 +0000 (12:43 +0200)]
Cleanup: remove some #if 0 blocks

Reviewers: brecht, campbellbarton

Differential Revision: https://developer.blender.org/D3802

21 months agoEevee: Fix error when using texture coordinate on world shaders
Clément Foucault [Wed, 17 Oct 2018 10:17:56 +0000 (12:17 +0200)]
Eevee: Fix error when using texture coordinate on world shaders

Compilation errors were happening on OSX with errors of the type:
```ERROR: Input of fragment shader 'viewNormal' not written by vertex shader```

21 months agoUI: particle deflector options in topbar
Campbell Barton [Wed, 17 Oct 2018 07:52:11 +0000 (18:52 +1100)]
UI: particle deflector options in topbar

See: T57228

21 months agoCleanup: better naming
Jacques Lucke [Wed, 17 Oct 2018 07:53:05 +0000 (09:53 +0200)]
Cleanup: better naming

Suggested by Campbell here: https://developer.blender.org/rB09cd651bb7e59044cbcd0664e8b1064cb37734ed

21 months agoGizmo: change axis used for shear handles
Campbell Barton [Wed, 17 Oct 2018 06:47:09 +0000 (17:47 +1100)]
Gizmo: change axis used for shear handles

The shear direction should be more obvious this way.

21 months agoTransform: map mouse input to shear direction
Campbell Barton [Wed, 17 Oct 2018 05:30:15 +0000 (16:30 +1100)]
Transform: map mouse input to shear direction

21 months agoTransform: show arrows for 'custom' ratio input
Campbell Barton [Wed, 17 Oct 2018 06:12:57 +0000 (17:12 +1100)]
Transform: show arrows for 'custom' ratio input

Arrows are now shown for vertex/edge slide.

21 months agoRNA: disable notifiers from property updates
Campbell Barton [Wed, 17 Oct 2018 05:14:58 +0000 (16:14 +1100)]
RNA: disable notifiers from property updates

This was re-enabled because it made copy-on-write bugs hard to
track down.

Since copy-on-write implementation has been simplified
this isn't a problem anymore.

21 months agoCleanup: naming
Campbell Barton [Wed, 17 Oct 2018 03:09:32 +0000 (14:09 +1100)]
Cleanup: naming

21 months agoCleanup: whitespace
Campbell Barton [Wed, 17 Oct 2018 03:08:44 +0000 (14:08 +1100)]
Cleanup: whitespace