blender.git
2 years agoMerge branch 'master' into blender2.8
Campbell Barton [Mon, 22 Oct 2018 04:13:43 +0000 (15:13 +1100)]
Merge branch 'master' into blender2.8

2 years agoPrevent G.fileflags changes when WM_OT_save_mainfile() is called from script
Campbell Barton [Mon, 22 Oct 2018 04:08:26 +0000 (15:08 +1100)]
Prevent G.fileflags changes when WM_OT_save_mainfile() is called from script

This is to solve an issue where a blend file could be compressed
unbeknownst to the artist. This happened in the following situtation:

- Artist edits an uncompressed blend file.
- Some script saves a compressed blendfile to a separate location.
- When the artist saves the file (s)he is editing (File>Save, or Ctrl+S),
  it was silently compressed.

Cherry pick from: cd3b313d5f44a10a1150bf1ddb560775d1bcd827

2 years 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

2 years 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

2 years 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.

2 years 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...

2 years 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...

2 years 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...

2 years 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.

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

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

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

2 years 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.

2 years 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.

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

2 years 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.

2 years 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/

2 years 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.

2 years 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.

2 years 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.

2 years 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.

2 years 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

2 years 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.

2 years 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

2 years 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.

2 years 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.

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

2 years 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.

2 years 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

2 years 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

2 years 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.

2 years 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

2 years 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.

2 years 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.

2 years 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.

2 years 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.

2 years 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

2 years 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.

2 years 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

2 years 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.

2 years 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.###'.

2 years 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

2 years 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

2 years 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

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

2 years 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

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

2 years 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

2 years 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

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

2 years 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

2 years 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

2 years 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

2 years 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.

2 years 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

2 years 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.

2 years 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

2 years 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.

2 years 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.

2 years 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.

2 years 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

2 years 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

2 years 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.

2 years 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

2 years 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

2 years 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.

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

2 years 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.

2 years 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.

2 years 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

2 years 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

2 years 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

2 years 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).

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

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

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

2 years 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

2 years 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.

2 years 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!

2 years 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.

2 years 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.

2 years 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...

2 years 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

2 years 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

2 years 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

2 years 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

2 years 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

2 years 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...

2 years 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

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

2 years 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.

2 years 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

2 years 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

2 years 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```

2 years 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

2 years 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

2 years 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.

2 years 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

2 years 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.

2 years 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.