17 months agoFix T63642: Light Probe defined as UNKNOWN
Campbell Barton [Tue, 16 Apr 2019 07:15:39 +0000 (09:15 +0200)]
Fix T63642: Light Probe defined as UNKNOWN

17 months agoFix T63646: Box/Lasso select fails to de-select
Campbell Barton [Tue, 16 Apr 2019 07:01:00 +0000 (09:01 +0200)]
Fix T63646: Box/Lasso select fails to de-select

Select 'New' wasn't de-selecting when there was nothing selected
in some cases.

17 months agoCMake: add libs needed for gtests
Campbell Barton [Tue, 16 Apr 2019 06:07:01 +0000 (08:07 +0200)]
CMake: add libs needed for gtests

17 months agoCleanup: move motion paths into editors/animation
Campbell Barton [Tue, 16 Apr 2019 05:27:37 +0000 (07:27 +0200)]
Cleanup: move motion paths into editors/animation

Having this in blenkernel caused bad level calls to bf_editors_anim,
causing tests that use 'blenkernel' to require almost all libraries.
(complicating gtest linking & causing large binaries).

17 months agoCMake: add library deps to CMakeLists.txt
Campbell Barton [Tue, 16 Apr 2019 04:18:52 +0000 (06:18 +0200)]
CMake: add library deps to CMakeLists.txt

Tested to work on Linux and macOS.

This will be enabled once all platforms are verified.

See D4684

17 months agoCMake: cleanup, arg rename, add definitions last
Campbell Barton [Tue, 16 Apr 2019 04:11:27 +0000 (06:11 +0200)]
CMake: cleanup, arg rename, add definitions last

17 months agoCMake: re-order openvdb/osl linking
Brecht Van Lommel [Tue, 16 Apr 2019 04:09:34 +0000 (06:09 +0200)]
CMake: re-order openvdb/osl linking

Needed for building without sorted libs.

17 months agoFix DDS failure ignoring message argument
Campbell Barton [Tue, 16 Apr 2019 03:51:25 +0000 (05:51 +0200)]
Fix DDS failure ignoring message argument

17 months agoFix T62852: crash reading corrupt DDS file.
Brecht Van Lommel [Tue, 16 Apr 2019 01:39:29 +0000 (03:39 +0200)]
Fix T62852: crash reading corrupt DDS file.

17 months agoFix T63346: Cycles OSL shader with closure not working in final render.
Brecht Van Lommel [Tue, 16 Apr 2019 01:03:24 +0000 (03:03 +0200)]
Fix T63346: Cycles OSL shader with closure not working in final render.

17 months agoFix T63562: wrong viewport updates after editing group node sockets
Brecht Van Lommel [Tue, 16 Apr 2019 00:29:22 +0000 (02:29 +0200)]
Fix T63562: wrong viewport updates after editing group node sockets

17 months agoFix T63401: add Object (Without Inverse) to Set Parent menu
Philipp Oeser [Tue, 16 Apr 2019 00:14:35 +0000 (02:14 +0200)]
Fix T63401: add Object (Without Inverse) to Set Parent menu

Previously it was bound to a shortcut.

Differential Revision:

17 months agoFix T62913: datablock append removing unrelated rigid body objects.
Brecht Van Lommel [Mon, 15 Apr 2019 23:49:03 +0000 (01:49 +0200)]
Fix T62913: datablock append removing unrelated rigid body objects.

17 months agoFix proxy remapping on make local failing for more than one object.
Brecht Van Lommel [Mon, 15 Apr 2019 23:50:35 +0000 (01:50 +0200)]
Fix proxy remapping on make local failing for more than one object.

17 months agoFix T62849: crash entering particle edit mode with hair dynamics
Brecht Van Lommel [Mon, 15 Apr 2019 23:41:37 +0000 (01:41 +0200)]
Fix T62849: crash entering particle edit mode with hair dynamics

17 months agoFix T63189: missing double click for UV loop select and emulate MMB
Brecht Van Lommel [Mon, 15 Apr 2019 23:32:50 +0000 (01:32 +0200)]
Fix T63189: missing double click for UV loop select and emulate MMB

17 months agoFix T63439: too many 3D viewport redraws due to fading scrollbars.
Brecht Van Lommel [Mon, 15 Apr 2019 23:22:40 +0000 (01:22 +0200)]
Fix T63439: too many 3D viewport redraws due to fading scrollbars.

Only redraw the regions, not the entire editor.

17 months agoSpline IK: fix continuity issues with influence and curve end rolloff.
Alexander Gavrilov [Mon, 15 Apr 2019 18:48:33 +0000 (21:48 +0300)]
Spline IK: fix continuity issues with influence and curve end rolloff.

Mainly, scaling needs to be continuously faded out in these cases.
Plus, in the case of end roll-off, it seems better to integrate into
this general fading system, instead of ad-hoc interpolation of tail.

17 months agoFix T63574: missing implicit parent bone dependency in proxies.
Alexander Gavrilov [Mon, 15 Apr 2019 16:53:52 +0000 (19:53 +0300)]
Fix T63574: missing implicit parent bone dependency in proxies.

Although technically evaluating the proxy copy nodes doesn't require
the parent bone to be copied, other nodes that depend on the bones
sometimes expect the parent to be ready. To meet this expectation
it's necessary to add the dependency to the graph.

17 months agoFix T63284: Eevee: Crash when subsurface pass is enabled
Clément Foucault [Mon, 15 Apr 2019 15:46:06 +0000 (17:46 +0200)]
Fix T63284: Eevee: Crash when subsurface pass is enabled

Was caused by a NULL texture used as uniform.

17 months agoGPencil: Hide UV factor for Dots and Boxes
Antonioya [Mon, 15 Apr 2019 14:07:56 +0000 (16:07 +0200)]
GPencil: Hide UV factor for Dots and Boxes

This parameter is not used with these modes.

17 months agoUI: move gizmo popover next to the overlay buttons
Campbell Barton [Mon, 15 Apr 2019 13:54:25 +0000 (15:54 +0200)]
UI: move gizmo popover next to the overlay buttons

In paint modes this was the only button in the middle.

17 months agoFix T63598: "child of" constraint "set/clear inverse" ops not working
Philipp Oeser [Mon, 15 Apr 2019 09:37:18 +0000 (11:37 +0200)]
Fix T63598: "child of" constraint "set/clear inverse" ops not working

was missing DEG updates

Reviewers: sergey

Maniphest Tasks: T63598

Differential Revision:

17 months agoFix T63377: "Principled Volume" node not working anymore in EEVEE
Clément Foucault [Mon, 15 Apr 2019 12:36:16 +0000 (14:36 +0200)]
Fix T63377: "Principled Volume" node not working anymore in EEVEE

I'm not sur how it ever worked before. There was no texture bound to these
sampdensity and sampflame when no volume simulation was happening.

This fixes the issue using 1x1x1 dummy textures.

17 months agocleanup: typo in comment
Philipp Oeser [Mon, 15 Apr 2019 09:44:56 +0000 (11:44 +0200)]
cleanup: typo in comment

17 months agoCleanup: Add missing comma
Antonioya [Mon, 15 Apr 2019 09:03:56 +0000 (11:03 +0200)]
Cleanup: Add missing comma

17 months agoIndustry Compat Keymap: Tool shortcuts
William Reynish [Mon, 15 Apr 2019 08:58:52 +0000 (10:58 +0200)]
Industry Compat Keymap: Tool shortcuts

- Use C for Cursor tool
- Use D for Annotate tool
- Use tool shortcuts in UV Editor (although it's weak here still - waiting for Move, Rotate & Scale tools here)

17 months agoGPencil: New Dots gradient
Antonioya [Mon, 15 Apr 2019 08:32:06 +0000 (10:32 +0200)]
GPencil: New Dots gradient

This commit adds support for drawing Dots strokes with a gradient factor to get artistic effects like watercolor.

Currently, the option is only supported by Dots materials, and in the future will be added to line strokes, but now there is a limitation on drawing engine and we will keep disabled on Line materials.

Also, added the option to align Dots and Boxes strokes textures aligned with the drawing path to get more fluid strokes.

17 months agoIndustry Compat Keymap: Panning consistency
William Reynish [Mon, 15 Apr 2019 08:23:33 +0000 (10:23 +0200)]
Industry Compat Keymap: Panning consistency

- Allow orbiting while using Knife tool
- Use consistent panning keys in properties lists
- Also fix warning related to empty View 3D Generic keymap

17 months agoIndustry Compat Keymap: Remove Ctrl-click for context menu
William Reynish [Mon, 15 Apr 2019 07:37:06 +0000 (09:37 +0200)]
Industry Compat Keymap: Remove Ctrl-click for context menu

This was conflicting with some tools such as the select tools which used it for deselecting.

17 months agoCMake: fix WITH_PYTHON=OFF
Campbell Barton [Mon, 15 Apr 2019 06:40:15 +0000 (08:40 +0200)]

17 months agoCMake: sort file list
Campbell Barton [Mon, 15 Apr 2019 05:13:13 +0000 (07:13 +0200)]
CMake: sort file list

17 months agoCMake: resolve issue building without sorted libs
Campbell Barton [Mon, 15 Apr 2019 04:38:26 +0000 (06:38 +0200)]
CMake: resolve issue building without sorted libs

Linking empty libs gave an error.

17 months agoFix copy & paste mistake in assert.
Alexander Gavrilov [Sun, 14 Apr 2019 19:18:00 +0000 (22:18 +0300)]
Fix copy & paste mistake in assert.

17 months agoDepsgraph: fix hard CTD on dependency cycles through POSE_INIT.
Alexander Gavrilov [Sun, 14 Apr 2019 18:53:03 +0000 (21:53 +0300)]
Depsgraph: fix hard CTD on dependency cycles through POSE_INIT.

As reported in T63582, it can cause chan_array to be not ready.
To reliably avoid crashing, the only easy way seems to be to
create the index during COW -- maybe @sergey has a better idea.

17 months agoRender: new material preview
William Reynish [Sun, 14 Apr 2019 16:41:10 +0000 (18:41 +0200)]
Render: new material preview

* EEVEE support through irradiance volume and light probe.
* New shader ball shape (designed by Robin Marin).
* New cloth and liquid shapes, removed monkey.
* Replace world sphere by toggle to use world for any shape.
* Slight bevel on cube.
* More subdivision for displacement preview.
* Fixed and improved UV mapping for all shapes.
* Material icon / asset preview now uses specified shape instead of always
  a sphere. So for example hair material can be displayed as hair.

Ref T57683

17 months agoFix Alembic using wrong visible/selected flags, fix warnings.
Brecht Van Lommel [Sun, 14 Apr 2019 17:37:30 +0000 (19:37 +0200)]
Fix Alembic using wrong visible/selected flags, fix warnings.

17 months agoCleanup: remove deprecated grease pencil object property.
Brecht Van Lommel [Sun, 14 Apr 2019 17:08:19 +0000 (19:08 +0200)]
Cleanup: remove deprecated grease pencil object property.

17 months agoCleanup: fix compiler warnings.
Brecht Van Lommel [Sun, 14 Apr 2019 17:04:37 +0000 (19:04 +0200)]
Cleanup: fix compiler warnings.

17 months agoFix T63599: fix the zero ease hack for the B-Bone end matrix.
Alexander Gavrilov [Sun, 14 Apr 2019 17:30:33 +0000 (20:30 +0300)]
Fix T63599: fix the zero ease hack for the B-Bone end matrix.

Negate the second derivative, because it's effectively stepping back.

17 months agoFix T59622: dependency problems with Spline IK.
Alexander Gavrilov [Sun, 14 Apr 2019 10:44:12 +0000 (13:44 +0300)]
Fix T59622: dependency problems with Spline IK.

The bug is caused by problems in the dependency graph. Unfortunately,
fixing is not just a matter of fixing the graph, because correct
dependencies would cause a cycle here and in other reasonable use
cases. The real fix thus requires refactoring Spline IK to require
curve data only in the actual evaluation phase, and not in POSE_INIT_IK.

In addition, this separates the normal bone evaluation loop from
Spline IK computations for two reasons:

- That still needs to be done even if spline IK can't evaluate
  due to missing curve data.

- It should reduce issues with induced shearing, as Spline IK now
  controls how parent-child relations are handled in the chain, and
  can take care to only carry over rotation and location.

17 months agoComplete the set of matrix multiplication functions.
Alexander Gavrilov [Sun, 14 Apr 2019 15:13:39 +0000 (18:13 +0300)]
Complete the set of matrix multiplication functions.

Also, mul_m3_m3m4 was named incorrectly.

17 months agoFix add_search node operator to show custom nodes
Miguel Porces [Sun, 14 Apr 2019 14:59:01 +0000 (16:59 +0200)]
Fix add_search node operator to show custom nodes

Differential Revision:

17 months agoUI: Remember the last display mode in file browser
Sharan Ranjit [Sun, 14 Apr 2019 14:33:59 +0000 (16:33 +0200)]
UI: Remember the last display mode in file browser

See also T57688.

Differential Revision:

17 months agoUI: Do not show full action range
Jacques Lucke [Sun, 14 Apr 2019 14:18:48 +0000 (16:18 +0200)]
UI: Do not show full action range

Reviewers: brecht

Differential Revision:

17 months agoCMake: prepare for BLENDER_SORTED_LIBS removal
Campbell Barton [Sun, 14 Apr 2019 13:18:44 +0000 (15:18 +0200)]
CMake: prepare for BLENDER_SORTED_LIBS removal

No functional change, this adds LIB definition and args to cmake files.
Without this it's difficult to migrate away from 'BLENDER_SORTED_LIBS'
since there are many platforms/configurations that could break when
changing linking order.

Manually add and enable WITHOUT_SORTED_LIBS to try building
without sorted libs (currently fails since all variables are empty).
This check will eventually be removed.

See T46725.

17 months agoDopesheet: enable Show Keyframes and Interpolation by default.
Alexander Gavrilov [Sun, 14 Apr 2019 13:34:06 +0000 (16:34 +0300)]
Dopesheet: enable Show Keyframes and Interpolation by default.

Make the option enabled by default, and enable it in old files,
unless Show Extremes is enabled.

However, suppress it for the Timeline, because its View menu
doesn't include the option.

Reviewers: billreynish, brecht

Differential Revision:

17 months agoExplain the Local With Parent coordinate space better.
Alexander Gavrilov [Sun, 14 Apr 2019 13:26:47 +0000 (16:26 +0300)]
Explain the Local With Parent coordinate space better.

Just saying "parent transformation added" doesn't really explain
what this coordinate space does. Thus it seems almost nobody used
it and serious bugs like T61981 went unnoticed.

17 months agoFix T61981: Local With Parent broken as constraint own space.
Alexander Gavrilov [Sun, 14 Apr 2019 12:50:49 +0000 (15:50 +0300)]
Fix T61981: Local With Parent broken as constraint own space.

Specifically, matrix multiplication order in Local With Parent
to Pose space conversion was wrong, compared with Pose to LWP.

17 months agoMissed version bump in recent commit
Campbell Barton [Sun, 14 Apr 2019 11:29:06 +0000 (13:29 +0200)]
Missed version bump in recent commit

17 months agoKeymap: toggle context gizmo instead of the tool gizmo
Campbell Barton [Sun, 14 Apr 2019 11:21:44 +0000 (13:21 +0200)]
Keymap: toggle context gizmo instead of the tool gizmo

When a tool is activated in many cases the gizmo is needed so toggling
them isn't so useful.

Change behavior to use the active object instead so users who prefer
to enable gizmos in the popover can toggle them.

Also remove duplicate keymap item.

17 months agoGizmo: individual toggles for 3D view gizmos
Campbell Barton [Sun, 14 Apr 2019 11:11:17 +0000 (13:11 +0200)]
Gizmo: individual toggles for 3D view gizmos

The popover for displaying gizmos now has options for
empty, light & camera gizmos.

Transform toggles are now checkboxes, which has the advantage that it's
more obvious they can be mixed however changing from one to another now
uses 3x clicks instead of a single click-drag action.
We might need a faster way to switch between transform types.

17 months agoDepsgraph: fix debug print crash on IK constraint without target.
Alexander Gavrilov [Sun, 14 Apr 2019 08:31:51 +0000 (11:31 +0300)]
Depsgraph: fix debug print crash on IK constraint without target.

17 months agoCleanup: rename 'ObData' to 'Object Data'
Campbell Barton [Sun, 14 Apr 2019 09:19:09 +0000 (11:19 +0200)]
Cleanup: rename 'ObData' to 'Object Data'

17 months agoFix T63587: 3D View clipping region crashes
Campbell Barton [Sun, 14 Apr 2019 09:04:34 +0000 (11:04 +0200)]
Fix T63587: 3D View clipping region crashes

17 months agoCleanup: doxy comments
Campbell Barton [Sun, 14 Apr 2019 08:48:42 +0000 (10:48 +0200)]
Cleanup: doxy comments

Use doxy references to function and enums,
also correct some names which became out of sync.

17 months agoCleanup: move operator constants out of DNA
Campbell Barton [Sun, 14 Apr 2019 07:58:40 +0000 (09:58 +0200)]
Cleanup: move operator constants out of DNA

Also use doxy struct member references.

17 months agoGizmo: move transform to a persistent option
Campbell Barton [Sat, 13 Apr 2019 18:36:53 +0000 (20:36 +0200)]
Gizmo: move transform to a persistent option

Based on feedback from animators, this is useful to keep as a view
option (as in 2.7x).

Now the transform gizmos can be enabled from the popover,
the tools still work for location/scale/rotation.
The transform tool has been removed.

See T63518

17 months agoKeymap: warn when running poll on empty keymaps
Campbell Barton [Sat, 13 Apr 2019 17:22:08 +0000 (19:22 +0200)]
Keymap: warn when running poll on empty keymaps

17 months agoFix T62048: crash when turning off curve path animation with Spline IK.
Alexander Gavrilov [Sat, 13 Apr 2019 14:36:57 +0000 (17:36 +0300)]
Fix T62048: crash when turning off curve path animation with Spline IK.

Both fix missing depsgraph flag, and gracefully give up on missing data.

17 months agoFix T37500: implement Bendy bone segment deformation interpolation.
Alexander Gavrilov [Fri, 5 Apr 2019 15:40:59 +0000 (18:40 +0300)]
Fix T37500: implement Bendy bone segment deformation interpolation.

Previously B-Bone deformation mapped every vertex to just one
B-Bone segment. This results in abrupt transformation differences
between the sides of each threshold plane, reducing the quality
of B-Bone deformation and making the use of shape keys impractical.

This commit replaces this approach with a linear blend between
the two closest segment transformations, effectively representing
the B-Bone as two weight-blended plain bones for each vertex.

In order to distribute the interpolation more evenly along the
bone, segment matrices for deformation are now computed at points
between the segments and at the ends of the B-Bone. The computation
also uses the true tangents of the Bezier curve for the orientation.
The nodes at the end of the bone require some special handling to
deal with zero-length Bezier handles caused by a zero ease value.

The Copy Transforms constraint now also smoothly interpolates
rotation and scaling along the bone shape when enabled.

The initial version of the patch was submitted by @Sam200.

Differential Revision:

17 months agoCleanup: add View3D_Runtime struct
Campbell Barton [Sat, 13 Apr 2019 13:20:15 +0000 (15:20 +0200)]
Cleanup: add View3D_Runtime struct

Also remove 'matcap_icon'

17 months agoreadme: separate development links
Brecht Van Lommel [Sat, 13 Apr 2019 12:42:52 +0000 (14:42 +0200)]
readme: separate development links

Add development links and place under own heading.

17 months agoFix T63563: Grease pencil not visible when contained in a collection instanced in...
Antonioya [Sat, 13 Apr 2019 11:03:22 +0000 (13:03 +0200)]
Fix T63563: Grease pencil not visible when contained in a collection instanced in a foreign scene.

The check of DUPLI object was used, but as the original object was not in the scene, the VBO data was not available and the draw was empty.

Now, the function checks if the original data is in the scene, and set the object as not Dupli to generate the VBO data.

17 months ago3D View: move gizmo draw options out of overlays
Campbell Barton [Sat, 13 Apr 2019 10:23:07 +0000 (12:23 +0200)]
3D View: move gizmo draw options out of overlays

Gizmo's now have their own popover in preparation
for making transform gizmos accessible without having to use tools

See: T63518

17 months agoCleanup: add trailing commas to wrapped args
Campbell Barton [Sat, 13 Apr 2019 10:44:34 +0000 (12:44 +0200)]
Cleanup: add trailing commas to wrapped args

17 months agoUI: remove popover button text in viewport header
William Reynish [Sat, 13 Apr 2019 10:14:12 +0000 (12:14 +0200)]
UI: remove popover button text in viewport header

Makes room in the header for other buttons to be added.

17 months agoGPencil: Implement Opacity transform
Antonioya [Sat, 13 Apr 2019 08:47:38 +0000 (10:47 +0200)]
GPencil: Implement Opacity transform

Add Shift+F to transform points opacity in Edit mode

17 months agoreadme: initial minimal readme
Campbell Barton [Sat, 13 Apr 2019 08:37:52 +0000 (10:37 +0200)]
readme: initial minimal readme

Useful to link official resources when the repository is accessed via
3rd party hosting.

17 months agoGPencil: Remove script console warning when object is None
Antonioya [Sat, 13 Apr 2019 07:46:36 +0000 (09:46 +0200)]
GPencil: Remove script console warning when object is None

17 months agoCleanup: style, use braces for the window manager
Campbell Barton [Sat, 13 Apr 2019 07:15:15 +0000 (09:15 +0200)]
Cleanup: style, use braces for the window manager

17 months agoFix T61935 Crash when importing Alembic from Meshroom
Sybren A. Stüvel [Fri, 12 Apr 2019 12:51:17 +0000 (14:51 +0200)]
Fix T61935 Crash when importing Alembic from Meshroom

The Alembic importer can now deal with XForm-less objects. Apparently
MeshLab exports point clouds without parent transformation matrix (XForm in
Alembic-speak). We shouldn't warn about this, but handle it properly

17 months agoBuild system: disable Draco when not installing python.
Bastien Montagne [Fri, 12 Apr 2019 12:26:17 +0000 (14:26 +0200)]
Build system: disable Draco when not installing python.

Draco py binding needs to be installed somewhere, when not installing
Python itself it's breaking the installation (since it creates a fake
empty py install, which will crash when trying to start Blender).

We could fix that in some smarter way maybe, but for now it's simpler to
just not care about Draco when we are not installing Python.

17 months agoFix T63504: Python Template 'ui_previews_dynamic_enum' error
Philipp Oeser [Fri, 12 Apr 2019 12:00:57 +0000 (14:00 +0200)]
Fix T63504: Python Template 'ui_previews_dynamic_enum' error

thx @nacioss for the fix

17 months agoRename Label instead of Name in Node editor using F2 key
Campbell Barton [Fri, 12 Apr 2019 11:50:33 +0000 (13:50 +0200)]
Rename Label instead of Name in Node editor using F2 key

Previously reverted change without RNA changes.

17 months agoRevert "Rename Label instead of Name in Node editor using F2 key"
Campbell Barton [Fri, 12 Apr 2019 10:58:31 +0000 (12:58 +0200)]
Revert "Rename Label instead of Name in Node editor using F2 key"

This reverts commit 98b06c20a0d4a66e2d9f4496c788f3d0902ea7c6.

RNA properties should give predictable results,
the desired behavior can be added only in operator logic.

17 months agoCleanup: add back semicolons to DefNode
Campbell Barton [Thu, 11 Apr 2019 16:14:05 +0000 (02:14 +1000)]
Cleanup: add back semicolons to DefNode

Causes extra-semicolon warning,
we'll need to disable clang-format for this file since it
won't format properly.

Reverts b389bb5ef8a

17 months agoUI: Re-order Properties tabs to follow the data hierarchy
William Reynish [Fri, 12 Apr 2019 10:04:59 +0000 (12:04 +0200)]
UI: Re-order Properties tabs to follow the data hierarchy

- Group tabs together based on the data-flow
- Puts Physics and Particles next to Modifiers, with which they interrelate

See D4612

Reviewers: pablovazquez

17 months agoFix T63452: View Port/render artifacts while camera movement in
Antonioya [Fri, 12 Apr 2019 07:09:37 +0000 (09:09 +0200)]
Fix T63452: View Port/render artifacts while camera movement in

Patch provided by @matc

17 months agoFix T63341: Xray mode makes some shading popover options grayed out despite them...
Sebastian Parborg [Thu, 11 Apr 2019 17:43:06 +0000 (19:43 +0200)]
Fix T63341: Xray mode makes some shading popover options grayed out despite them working

Do not gray out shading items if the xray alpha value is 1.
They are rendered correctly in viewport so there is no reason to mark
them as disabled in the shading menu.

17 months agoFix T63467: Edge/vertex selection isnt working properly with X-ray set to 1
Sebastian Parborg [Thu, 11 Apr 2019 16:28:20 +0000 (18:28 +0200)]
Fix T63467: Edge/vertex selection isnt working properly with X-ray set to 1

Edit mode shows the mesh elements in X-ray mode even if alpha is set to
1. Now the code takes this into account so that you can still select
visible mesh elements in X-ray edit mode.

view3d_draw_legacy need to be updated with the new XRAY flag macros to
avoid crashes. Additional cleanup of the XRAY macro flags were done.

17 months agoFix 'static override' message showing in ID template tooltip.
Bastien Montagne [Thu, 11 Apr 2019 15:46:10 +0000 (17:46 +0200)]
Fix 'static override' message showing in ID template tooltip.

We only want to show that when library overrides are enabled.

17 months agoFix (unreported) potential infinite loop over collections' parents pointers.
Bastien Montagne [Wed, 3 Apr 2019 09:05:16 +0000 (11:05 +0200)]
Fix (unreported) potential infinite loop over collections' parents pointers.

It is crucial to properly tag as loopback that kind of pointers,
otherwise some users of libquery's foreach_ID might end up in infinite

17 months agoCleanup: comments
Campbell Barton [Thu, 11 Apr 2019 14:58:54 +0000 (00:58 +1000)]
Cleanup: comments

17 months agoCleanup: remove unused code
Campbell Barton [Thu, 11 Apr 2019 14:58:42 +0000 (00:58 +1000)]
Cleanup: remove unused code

This variable was never used.

17 months agocurve_fit_nd: fix assert caused by too small epsilon
Campbell Barton [Thu, 11 Apr 2019 14:58:15 +0000 (00:58 +1000)]
curve_fit_nd: fix assert caused by too small epsilon

Curve decimate would assert in some cases.

17 months agoAlembic export: free depsgraph after use
Sybren A. Stüvel [Thu, 11 Apr 2019 14:21:43 +0000 (16:21 +0200)]
Alembic export: free depsgraph after use

17 months agoFix T62664: Exporting Metaballs as Alembic crashes Blender
Sybren A. Stüvel [Thu, 11 Apr 2019 13:03:08 +0000 (15:03 +0200)]
Fix T62664: Exporting Metaballs as Alembic crashes Blender

The `AbcMetaballWriter` now subclasses `AbcGenericMeshWriter` instead of
wrapping an `AbcMeshWriter`. `AbcGenericMeshWriter` was created for this
purpose (writing non-mesh objects as mesh to Alembic) and performs the work
in a cleaner and, more importantly, not crashing way.

17 months agoAlembic export: always consider metaballs animated
Sybren A. Stüvel [Thu, 11 Apr 2019 12:56:32 +0000 (14:56 +0200)]
Alembic export: always consider metaballs animated

The metaball 'mesh' is animated whenever any of its components are animated.
However, it's not easily possible to visit all its components (AFAIK it
requires a full scan of all objects in the scene and comparing names), so
due to the blobby nature of the metaballs I now simply assume they'll be

This fixes an issue where a metaball was considered static when the base
ball was static. For example, MBall static but MBall.001 animated would
be considered 'not animated'.

17 months agoFix: Build issue with draco on mac.
Ray Molenkamp [Thu, 11 Apr 2019 13:47:33 +0000 (07:47 -0600)]
Fix: Build issue with draco on mac.

somehow missed mac in my last commit

17 months agoFix: Build issue with draco.
Ray Molenkamp [Thu, 11 Apr 2019 13:20:14 +0000 (07:20 -0600)]
Fix: Build issue with draco.

DRACO_LIB_NAME was undefined, better use the proper cmake variable for it.

17 months agoFix: Build error with msvc2019.
Ray Molenkamp [Thu, 11 Apr 2019 12:56:15 +0000 (06:56 -0600)]
Fix: Build error with msvc2019.

17 months agoRename Label instead of Name in Node editor using F2 key
Antonioya [Thu, 11 Apr 2019 11:10:10 +0000 (13:10 +0200)]
Rename Label instead of Name in Node editor using F2 key

See D4631 for more details

Reviewers: @brecht @billreynish

17 months ago3D View: Show the camera frame when Extra's is off
Campbell Barton [Thu, 11 Apr 2019 12:00:38 +0000 (14:00 +0200)]
3D View: Show the camera frame when Extra's is off

17 months agoFix T63451: selected objects not highlighted in outliner scene view.
Harley Acheson [Thu, 11 Apr 2019 10:57:02 +0000 (12:57 +0200)]
Fix T63451: selected objects not highlighted in outliner scene view.

Differential Revision:

17 months agoglTF: add Draco shared library for mesh compression.
Benjamin Schmithüsen [Thu, 11 Apr 2019 09:26:23 +0000 (11:26 +0200)]
glTF: add Draco shared library for mesh compression.

Draco is added as a library under extern/ and builds a shared library that is
installed into the Python site-packages. This is then loaded by the glTF add-on
to do mesh compression.

Differential Revision:

17 months agoCleanup: suppress some warnings in external libraries.
Brecht Van Lommel [Thu, 11 Apr 2019 10:04:31 +0000 (12:04 +0200)]
Cleanup: suppress some warnings in external libraries.

17 months agoFix T63464: Multi UV Maps limited to three with eevee
Philipp Oeser [Thu, 11 Apr 2019 07:34:54 +0000 (09:34 +0200)]
Fix T63464: Multi UV Maps limited to three with eevee

this was very similar to T60684 (and the UV case was actually reported
back then as well), so the fix goes hand in hand with rBbd8039399575

Reviewers: fclem

Maniphest Tasks: T63464

Differential Revision:

17 months agoAnnotations: Make all 2D editors locked to View
Antonioya [Wed, 10 Apr 2019 15:32:44 +0000 (17:32 +0200)]
Annotations: Make all 2D editors locked to View

Before, there was a hacky code for Image editor when the image was empty.

Now, all 2D editors are locked to view and when you Move or Zoom, the stroke moves.

This is a fix of T63402.

Still pending if we add more options to 2D editors, but at least now,  we have something consistent.

17 months agoIndustry Compat Keymap: Add Sculpt Mode keys
William Reynish [Wed, 10 Apr 2019 14:10:07 +0000 (16:10 +0200)]
Industry Compat Keymap: Add Sculpt Mode keys