3 years agoMulti-Objects: OBJECT_OT_vertex_group_smooth
Dalai Felinto [Mon, 3 Sep 2018 13:27:07 +0000 (10:27 -0300)]
Multi-Objects: OBJECT_OT_vertex_group_smooth

In this case we call the operation multiple times.

3 years agoDepsgraph: Use more meaningful name for flags storage
Sergey Sharybin [Mon, 3 Sep 2018 12:35:42 +0000 (14:35 +0200)]
Depsgraph: Use more meaningful name for flags storage

3 years agoTool System: add paint brush shortcut
Campbell Barton [Mon, 3 Sep 2018 13:12:53 +0000 (23:12 +1000)]
Tool System: add paint brush shortcut

3 years agoEevee: Fix missing meshes on Win + Intel HD 530/540
Clément Foucault [Mon, 3 Sep 2018 12:36:30 +0000 (14:36 +0200)]
Eevee: Fix missing meshes on Win + Intel HD 530/540

This is only a workaround. The real issue should be adressed by the
driver team upstream.

3 years agoFix slow .blend file load due to recent accidentally committed debug code.
Brecht Van Lommel [Mon, 3 Sep 2018 12:11:55 +0000 (14:11 +0200)]
Fix slow .blend file load due to recent accidentally committed debug code.

3 years agoSet active base to NULL if its object is gone
Sergey Sharybin [Mon, 3 Sep 2018 11:42:47 +0000 (13:42 +0200)]
Set active base to NULL if its object is gone

3 years agoDepsgraph: Cleanup, make it more obvious what ID references
Sergey Sharybin [Mon, 3 Sep 2018 10:57:04 +0000 (12:57 +0200)]
Depsgraph: Cleanup, make it more obvious what ID references

3 years agoDepsgraph: Cleanup, make it more clear what function does
Sergey Sharybin [Mon, 3 Sep 2018 10:55:26 +0000 (12:55 +0200)]
Depsgraph: Cleanup, make it more clear what function does

3 years agoDepsgraph: Generalize storage for already existing ID nodes
Sergey Sharybin [Mon, 3 Sep 2018 10:39:56 +0000 (12:39 +0200)]
Depsgraph: Generalize storage for already existing ID nodes

Currently no functional changes, just allows to store mo information.

3 years agoCleanup: Remove unused lay_updated
Sergey Sharybin [Mon, 3 Sep 2018 10:17:55 +0000 (12:17 +0200)]
Cleanup: Remove unused lay_updated

Is no longer used, having it around was more of a confusion than
anything else.

3 years agoDepsgraph: Cleanup, indentation level
Sergey Sharybin [Mon, 3 Sep 2018 10:11:11 +0000 (12:11 +0200)]
Depsgraph: Cleanup, indentation level

3 years agoFix T56659: Flow UI: Checkboxes report wrong width, making layouts jump to multi...
Bastien Montagne [Mon, 3 Sep 2018 09:05:36 +0000 (11:05 +0200)]
Fix T56659: Flow UI: Checkboxes report wrong width, making layouts jump to multi-columns too soon.

Wrong handling of ideal width when splitting buttons and labels appart
for checkboxes...

3 years agoCleanup: warning
Campbell Barton [Mon, 3 Sep 2018 04:35:40 +0000 (14:35 +1000)]
Cleanup: warning

3 years agoGP: Cleanup function parameter
Antonioya [Mon, 3 Sep 2018 08:14:13 +0000 (10:14 +0200)]
GP: Cleanup function parameter

There was a mix of enum parameters and int/bool values.

3 years agoFix exception running toolbar w/o an active space
Campbell Barton [Mon, 3 Sep 2018 04:22:58 +0000 (14:22 +1000)]
Fix exception running toolbar w/o an active space

3 years agoCleanup: use single quotes for enum's
Campbell Barton [Mon, 3 Sep 2018 04:15:18 +0000 (14:15 +1000)]
Cleanup: use single quotes for enum's

3 years agoUI: remove rotate/reverse UV's from menu
Campbell Barton [Mon, 3 Sep 2018 04:03:32 +0000 (14:03 +1000)]
UI: remove rotate/reverse UV's from menu

These are quite obscure operations and are already available in the
"Face Data" menu.

3 years agoUI: disable key shortcuts for tools
Campbell Barton [Mon, 3 Sep 2018 03:47:14 +0000 (13:47 +1000)]
UI: disable key shortcuts for tools

Only show shortcuts in the tooltips since they use different logic.

3 years agoCleanup: replace __import__ w/ import argument
Campbell Barton [Mon, 3 Sep 2018 02:53:42 +0000 (12:53 +1000)]
Cleanup: replace __import__ w/ import argument

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Mon, 3 Sep 2018 02:48:30 +0000 (12:48 +1000)]
Merge branch 'master' into blender2.8

3 years agoPyAPI: add optional imports to expression eval API
Campbell Barton [Mon, 3 Sep 2018 02:38:19 +0000 (12:38 +1000)]
PyAPI: add optional imports to expression eval API

Avoids having to use `__import__` to access modules.

3 years agoTool System: Show popup accelerators in tooltip
Campbell Barton [Mon, 3 Sep 2018 01:24:25 +0000 (11:24 +1000)]
Tool System: Show popup accelerators in tooltip

The tooltips for tools in the toolbar now show how to access.

3 years agoTool System: map keys bound directly to a tools
Campbell Barton [Mon, 3 Sep 2018 01:06:34 +0000 (11:06 +1000)]
Tool System: map keys bound directly to a tools

If a key is bound to activate a tool in the tool-system,
add this to the popup keymap.

3 years agoFix toolbar popup outside the window region
Campbell Barton [Mon, 3 Sep 2018 00:19:30 +0000 (10:19 +1000)]
Fix toolbar popup outside the window region

3 years agoFix part of T56654: Freestyle hiding viewlayer buttons when there is no lineset.
Bastien Montagne [Sun, 2 Sep 2018 13:28:03 +0000 (15:28 +0200)]
Fix part of T56654: Freestyle hiding viewlayer buttons when there is no lineset.

Buttons' context 'path' has to bee handled carefully, especially when
building more than one step in a single call...

3 years agoKeymap: Double tap A-Key to de-select all
Campbell Barton [Sun, 2 Sep 2018 11:39:31 +0000 (21:39 +1000)]
Keymap: Double tap A-Key to de-select all

Uses double click events for the keyboard, which wasn't used before.

Experimental feature suggested by @venomgfx

3 years agoCleanup: move select all/none/invert into template
Campbell Barton [Sun, 2 Sep 2018 11:21:15 +0000 (21:21 +1000)]
Cleanup: move select all/none/invert into template

3 years agoUI: correct unintended space in string formatting
Campbell Barton [Sun, 2 Sep 2018 10:05:45 +0000 (20:05 +1000)]
UI: correct unintended space in string formatting

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Sun, 2 Sep 2018 09:42:29 +0000 (19:42 +1000)]
Merge branch 'master' into blender2.8

3 years agoCleanup: move keymap helpers into own file
Campbell Barton [Sun, 2 Sep 2018 09:34:36 +0000 (19:34 +1000)]
Cleanup: move keymap helpers into own file

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Sun, 2 Sep 2018 08:56:02 +0000 (18:56 +1000)]
Merge branch 'master' into blender2.8

3 years agoCleanup: comment blocks
Campbell Barton [Sun, 2 Sep 2018 08:51:31 +0000 (18:51 +1000)]
Cleanup: comment blocks

3 years agoCleanup: comment blocks
Campbell Barton [Sun, 2 Sep 2018 08:28:27 +0000 (18:28 +1000)]
Cleanup: comment blocks

3 years agoCleanup: style
Campbell Barton [Sun, 2 Sep 2018 06:45:00 +0000 (16:45 +1000)]
Cleanup: style

3 years agoCleanup: shadow warning
Campbell Barton [Sun, 2 Sep 2018 06:27:44 +0000 (16:27 +1000)]
Cleanup: shadow warning

3 years agoFix MESH_OT_loop_select: Deselect object objects
Dalai Felinto [Fri, 31 Aug 2018 20:43:57 +0000 (17:43 -0300)]
Fix MESH_OT_loop_select: Deselect object objects

Before that if you loop select a mesh, it would deselect the previous selected
edges of the selected mesh, leaving the other objects untouched.

3 years agoFollow up to MESH_OT_offset_edge_loops
Dalai Felinto [Fri, 31 Aug 2018 20:23:33 +0000 (17:23 -0300)]
Follow up to MESH_OT_offset_edge_loops

Committing this as a separate commit since we may want to keep this mode syncing
elsewhere. But for now it makes sense to do it like this.

3 years agoMulti-Objects: MESH_OT_offset_edge_loops
milios [Fri, 31 Aug 2018 20:07:42 +0000 (17:07 -0300)]
Multi-Objects: MESH_OT_offset_edge_loops

Changes from reviewer (Dalai Felinto):
* Code style (replace tabs with spaces).
* Return OPERATOR_CANCELLED if no a single object get through.

Maniphest Tasks: T54643

3 years agoFixup for MESH_OT_vertices_smooth_laplacian
Dalai Felinto [Fri, 31 Aug 2018 20:00:21 +0000 (17:00 -0300)]
Fixup for MESH_OT_vertices_smooth_laplacian

Failing to repeat should return, but continue the object loop.
Should test for selected vertex, not face.

3 years agoFixup for multi-objects snap functions
Dalai Felinto [Fri, 31 Aug 2018 19:33:45 +0000 (16:33 -0300)]
Fixup for multi-objects snap functions

Sanitizing the use of TransVertStore, making sure it is always freed.
Skip meshes with no vertex selected.

3 years agoFix memleak on snap_curs_to_sel_ex
Dalai Felinto [Fri, 31 Aug 2018 19:23:38 +0000 (16:23 -0300)]
Fix memleak on snap_curs_to_sel_ex

3 years agoMESH_OT_symmetrize: Cleanup, get op->ptr props outside objects loop
Dalai Felinto [Fri, 31 Aug 2018 18:53:07 +0000 (15:53 -0300)]
MESH_OT_symmetrize: Cleanup, get op->ptr props outside objects loop

3 years agoMulti-Objects: MESH_OT_symmetry_snap
n-kall [Fri, 31 Aug 2018 18:33:12 +0000 (15:33 -0300)]
Multi-Objects: MESH_OT_symmetry_snap

Reviewers: dfelinto
Differential Revision:

3 years agoMESH_OT_blend_from_shape: Add error when no selected vertex
Dalai Felinto [Fri, 31 Aug 2018 18:22:54 +0000 (15:22 -0300)]
MESH_OT_blend_from_shape: Add error when no selected vertex

This is just something simple I caught while testing the patch for multi-object.

3 years agoMulti-Object-Mode: MESH_OT_blend_from_shape
Habib Gahbiche [Fri, 31 Aug 2018 17:25:18 +0000 (14:25 -0300)]
Multi-Object-Mode: MESH_OT_blend_from_shape

"Blend from Shape" lists keys from active object and applies to all selected
objects that have keys with a matching name.

Changes from reviewer (Dalai Felinto):
* Code Style.
* Move Object **objects after sanity check to prevent leak when
* Skip objects that have no selected vertex.
* Fixed existent comments code-style: Since we are changing the indentation of
  these lines, may as well correct this as well.

Differential Revision:

3 years agoMESH_OT_shape_propagate_to_all: Add error when no selected vertex
Dalai Felinto [Fri, 31 Aug 2018 17:20:05 +0000 (14:20 -0300)]
MESH_OT_shape_propagate_to_all: Add error when no selected vertex

This is just something simple I caught while testing the patch for multi-object.

3 years agoMulti-Objects: MESH_OT_shape_propagate_to_all
Habib Gahbiche [Fri, 31 Aug 2018 15:26:01 +0000 (12:26 -0300)]
Multi-Objects: MESH_OT_shape_propagate_to_all

Pressing "Propagate to Shapes" now propagates the current shapes to the selected
object's respective keys, if at least one selected object has shape keys.

Discussion here:

Changes from reviewer (Dalai Felinto):
* Code style
* Error message
* Remove dead code

Reviewers: dfelinto
Differential Revision:

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Fri, 31 Aug 2018 15:08:29 +0000 (17:08 +0200)]
Merge branch 'master' into blender2.8

3 years agoBuildbot: Usable PIE
Sergey Sharybin [Fri, 31 Aug 2018 15:05:51 +0000 (17:05 +0200)]
Buildbot: Usable PIE

Makes it impossible to run from GUI on certain platforms, see T56628.

3 years agoCleanup: edbm_do_smooth_laplacian_vertex_exec
Dalai Felinto [Fri, 31 Aug 2018 14:43:44 +0000 (11:43 -0300)]
Cleanup: edbm_do_smooth_laplacian_vertex_exec

3 years agoMulti-Object-Editing: MESH_OT_vertices_smooth_laplacian
Habib Gahbiche [Fri, 31 Aug 2018 14:29:01 +0000 (11:29 -0300)]
Multi-Object-Editing: MESH_OT_vertices_smooth_laplacian

Since D3284 was inactive for a long time, I figured I could finish this.

This revision also gives warning when there are no selected faces or when
selected faces are invalid.

Changes from reviewer (Dalai Felinto) :
* Code style
* Fix checking for ngons (BM_ITER_MESH is a for loop, you need to break from it
before continuing the object iteration loop).

Differential Revision:

3 years agoCloth: Implement angular bending springs
Luca Rood [Mon, 5 Dec 2016 23:39:29 +0000 (21:39 -0200)]
Cloth: Implement angular bending springs

This implements angular bending springs for cloth simulation. This also
adds shearing springs for n-gons.

This angular spring implementation does not include Jacobian matrices,
as the springs can exist between polygons of different vertex counts,
rendering their relationships asymmetrical, and thus impossible to solve
with the current implementation. This means that the bending component
is solved explicitly. However, this is usually not a big problem, as
bending springs contribute less to instability than structural springs.

The the old linear bending model can still be used, and is the default for
existing files, to keep compatibility. However, the new angular bending
model is the default for any new simulation.

This commit makes small breaking changes, in that shearing springs are
now created on n-gons (also in linear bending mode), while n-gons were
previously ignored.

Reviewed By: brecht

Differential Revision:

3 years agoCloth: Componentize forces
Luca Rood [Tue, 28 Aug 2018 22:29:37 +0000 (00:29 +0200)]
Cloth: Componentize forces

This separates cloth stiffness and damping forces into tension,
compression, and shearing components, allowing more control over the
cloth behaviour.

This also adds a bending model selector (although the new bending model
itself is not implemented in this commit). This is because some of the
features implemented here only make sense within the new bending model,
while the old model is kept for compatibility.

This commit makes non-breaking changes, and thus maintains full
compatibility with existing simulations.

Reviewed By: brecht

Differential Revision:

3 years agoMulti-Objects: VIEW3D_OT_snap_selected_to_cursor by Habib Gahbiche
Dalai Felinto [Fri, 31 Aug 2018 13:54:24 +0000 (10:54 -0300)]
Multi-Objects: VIEW3D_OT_snap_selected_to_cursor by Habib Gahbiche

Objects in edit mode now behave as if they were joined.

Changes from reviewer (Dalai Felinto): code style (tabs, spaces, ...), missing MEM_freeN(objects);

3 years agoPython: Enable MASS unit in FloatProperty
Monique Dewanchand [Fri, 31 Aug 2018 13:00:38 +0000 (15:00 +0200)]
Python: Enable MASS unit in FloatProperty

MASS unit was already implemented for the C api. Only making sure it is
accessible in the python api. Also added 'CAMERA' to the documentation as a valid option.

3 years agoFix Text Boxes not drawing
Dalai Felinto [Fri, 31 Aug 2018 12:53:44 +0000 (09:53 -0300)]
Fix Text Boxes not drawing

I'm using a different shading group for the active text box and the others.
This way I can assign different colors to them.

The alternative would be to create a new `shgroup_dynlines_dashed_flat_color`,
but I find this overkill for such a simple use case.

3 years agoRemove CCGDM from PBVH
Sergey Sharybin [Fri, 31 Aug 2018 10:41:23 +0000 (12:41 +0200)]
Remove CCGDM from PBVH

The statement that PBVH needs to keep track of CCGDM is wrong, PBVH itself
does not care about CCGDM at all, and it's weird for it to carry on this
beast so others can access.

Even more, nobody will actually caring about CCGDM itself, all the usages
were checking whether there is CCGDM or not. This is as good as simply
checking PBVH type.

Tested with an original report T53551 and everything is still stable.

3 years agoFix broken decorate buttong dragging after recent changes.
Brecht Van Lommel [Fri, 31 Aug 2018 11:35:07 +0000 (13:35 +0200)]
Fix broken decorate buttong dragging after recent changes.

3 years agoMerge branch 'master' into blender2.8
Brecht Van Lommel [Fri, 31 Aug 2018 11:00:19 +0000 (13:00 +0200)]
Merge branch 'master' into blender2.8

3 years agoFix T56618: crash in release builds when GHOST asserts.
Brecht Van Lommel [Fri, 31 Aug 2018 10:32:12 +0000 (12:32 +0200)]
Fix T56618: crash in release builds when GHOST asserts.

WITH_ASSERT_ABORT was not disabled for release builds. In most cases asserts
are disabled in release builds, but not always.

This also changes the buildbot to use blender_release.cmake instead of
blender_full.cmake, the only effective difference should be WITH_ASSERT_ABORT.

3 years agoFix T56618: crash when typing certain characters on Linux.
Brecht Van Lommel [Fri, 31 Aug 2018 10:39:16 +0000 (12:39 +0200)]
Fix T56618: crash when typing certain characters on Linux.

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Fri, 31 Aug 2018 10:30:19 +0000 (12:30 +0200)]
Merge branch 'master' into blender2.8

3 years agoCycles: Cleanup, use explicit comparison with NULL
Sergey Sharybin [Fri, 31 Aug 2018 10:28:12 +0000 (12:28 +0200)]
Cycles: Cleanup, use explicit comparison with NULL

3 years agoFix T56626: Cycles ambient occlusion only local : crash
Sergey Sharybin [Fri, 31 Aug 2018 10:14:36 +0000 (12:14 +0200)]
Fix T56626: Cycles ambient occlusion only local : crash

Was caused by missing NULL pointer check in BVH8.

3 years agoCleanup: Remove unused field
Antonioya [Fri, 31 Aug 2018 07:54:35 +0000 (09:54 +0200)]
Cleanup: Remove unused field

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Fri, 31 Aug 2018 04:53:34 +0000 (14:53 +1000)]
Merge branch 'master' into blender2.8

3 years agoPyAPI: replace checks for invalid input w/ assert
Campbell Barton [Fri, 31 Aug 2018 04:51:59 +0000 (14:51 +1000)]
PyAPI: replace checks for invalid input w/ assert

Was returning -1 as a bool argument,
in this case the caller needs to ensure non-null args.

3 years agoTool System: support tool description for tips
Campbell Barton [Fri, 31 Aug 2018 04:37:10 +0000 (14:37 +1000)]
Tool System: support tool description for tips

When the description isn't set, the operators is used instead.

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Fri, 31 Aug 2018 04:25:42 +0000 (14:25 +1000)]
Merge branch 'master' into blender2.8

3 years agoC/Python API: Add PyC_RunString_AsIntPtr
Campbell Barton [Fri, 31 Aug 2018 04:21:32 +0000 (14:21 +1000)]
C/Python API: Add PyC_RunString_AsIntPtr

Utility to get an int or pointer from a Python expression.

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Fri, 31 Aug 2018 03:40:10 +0000 (13:40 +1000)]
Merge branch 'master' into blender2.8

3 years agoCleanup: rename WM_keymap_find -> WM_keymap_ensure
Campbell Barton [Fri, 31 Aug 2018 03:36:14 +0000 (13:36 +1000)]
Cleanup: rename WM_keymap_find -> WM_keymap_ensure

3 years agoFix T56619: Transform crash w/ curve deform
Campbell Barton [Fri, 31 Aug 2018 01:09:26 +0000 (11:09 +1000)]
Fix T56619: Transform crash w/ curve deform

3 years agoCleanup: GPU_BATCH_DISCARD_ARRAY_SAFE (deduplicate existing code)
Dalai Felinto [Thu, 30 Aug 2018 20:47:36 +0000 (17:47 -0300)]
Cleanup: GPU_BATCH_DISCARD_ARRAY_SAFE (deduplicate existing code)

3 years agoFix Font object: text selection and cursor not updating
Dalai Felinto [Thu, 30 Aug 2018 20:35:33 +0000 (17:35 -0300)]
Fix Font object: text selection and cursor not updating

3 years agoSilence Grease Pencil warning
Dalai Felinto [Thu, 30 Aug 2018 20:48:53 +0000 (17:48 -0300)]
Silence Grease Pencil warning

3 years agoGP: Change icon identfier for shaderFx
Antonioya [Thu, 30 Aug 2018 17:22:24 +0000 (19:22 +0200)]
GP: Change icon identfier for shaderFx

This commit complements commit d2ad256326736c8a4c746163f9b27491d8a6e95a

3 years agoUI: remove context path from tool settings tab in properties editor.
Brecht Van Lommel [Thu, 30 Aug 2018 15:29:09 +0000 (17:29 +0200)]
UI: remove context path from tool settings tab in properties editor.

3 years agoUI: add dedicated icon IDs for decorators, tool settings, shaderfx, overlays.
Brecht Van Lommel [Fri, 24 Aug 2018 10:54:48 +0000 (12:54 +0200)]
UI: add dedicated icon IDs for decorators, tool settings, shaderfx, overlays.

The preset and decorator icons were updated to be monochrome and draw in the
same color as text. Other icons are unchanged, having them as separate icon IDs
prepares for an artist to make them.

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Thu, 30 Aug 2018 15:40:06 +0000 (17:40 +0200)]
Merge branch 'master' into blender2.8

3 years agoCycles: Cleanup, whitespace after keyword
Sergey Sharybin [Thu, 30 Aug 2018 15:34:11 +0000 (17:34 +0200)]
Cycles: Cleanup, whitespace after keyword

3 years agoCleanup: Improve comments
Antonioya [Thu, 30 Aug 2018 14:44:52 +0000 (16:44 +0200)]
Cleanup: Improve comments

3 years agoGP: Fix unreported surface missing strokes
Antonioya [Thu, 30 Aug 2018 14:42:03 +0000 (16:42 +0200)]
GP: Fix unreported surface missing strokes

When drawing in surface mode if the stroke z-depth was not valid, the stroke was created, but it was not visible because location was something illogical.

Now, if the z-depth cannot be calculated, the stroke is calculated as it was done in other modes.

3 years agoWorkspaces: switch object mode when switching workspaces.
Brecht Van Lommel [Tue, 21 Aug 2018 13:27:29 +0000 (15:27 +0200)]
Workspaces: switch object mode when switching workspaces.

In the workspace properties a mode can now be configured that is
automatically enabled when switching to the workspace.

This is a test to validate how well it works. The weak point is
that if you don't have an appropriate object already select it will
not switch modes.

See T56475.

3 years agoFix fox strict flags: Avoid sign cast of strlen() result
Sergey Sharybin [Thu, 30 Aug 2018 12:14:18 +0000 (14:14 +0200)]
Fix fox strict flags: Avoid sign cast of strlen() result

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Thu, 30 Aug 2018 12:09:58 +0000 (14:09 +0200)]
Merge branch 'master' into blender2.8

3 years agoBuildbot: Correction to previous commit
Sergey Sharybin [Thu, 30 Aug 2018 12:09:14 +0000 (14:09 +0200)]
Buildbot: Correction to previous commit

3 years agoBuildbot: Attempt to fix glibc-2.19 compilation
Sergey Sharybin [Thu, 30 Aug 2018 12:07:48 +0000 (14:07 +0200)]
Buildbot: Attempt to fix glibc-2.19 compilation

It is likely to be retired, but for until then lets ensure it works.

3 years agoMerge branch 'master' into blender2.8
Brecht Van Lommel [Thu, 30 Aug 2018 11:59:34 +0000 (13:59 +0200)]
Merge branch 'master' into blender2.8

3 years agoOutliner: support dragging multiple collections, same as objects.
Brecht Van Lommel [Wed, 29 Aug 2018 16:07:14 +0000 (18:07 +0200)]
Outliner: support dragging multiple collections, same as objects.

3 years agoGP: Undo previous Subdivide edit operator and reformat code
Antonioya [Thu, 30 Aug 2018 11:45:12 +0000 (13:45 +0200)]
GP:  Undo previous Subdivide edit operator  and reformat code

The previous commit reusing the subdivide modifier code was not taking in account the selected points, so the subdivide was wrong.

3 years agoCycles: Fix detection of CPU brand string on 32 bit platforms
Sergey Sharybin [Thu, 30 Aug 2018 10:50:36 +0000 (12:50 +0200)]
Cycles: Fix detection of CPU brand string on 32 bit platforms

The assembler template was backing up and restoring ebx, which is
fair enough. However, this did not prevent compiler for putting
result variables to ebx. This was causing data corruption.

In order to prevent this easiest solution is to list ebx in clobbers
for the assembly.

3 years agoUI: check prop-separate before adding black decorator
Campbell Barton [Thu, 30 Aug 2018 10:41:40 +0000 (20:41 +1000)]
UI: check prop-separate before adding black decorator

This caused the blank icon to be added to menus (ndof menu for eg).

3 years agoCleanup: warnings
Campbell Barton [Thu, 30 Aug 2018 10:47:46 +0000 (20:47 +1000)]
Cleanup: warnings

3 years agoFix T56612: crash in Cycles viewport render update, after recent changes.
Brecht Van Lommel [Thu, 30 Aug 2018 10:21:57 +0000 (12:21 +0200)]
Fix T56612: crash in Cycles viewport render update, after recent changes.

BVH8 refitting code had a bug.

3 years agoGP: New Armature modifier and tools to handle weights
Antonioya [Thu, 30 Aug 2018 10:22:55 +0000 (12:22 +0200)]
GP: New Armature modifier and tools to handle weights

This commit adds a new armature modifier for grease pencil. The deformations are done reusing the mesh deform routines.

There is also a new operator in weight paint mode to help the artist to generate weights base on armatures. This operator is required because 2D animation workflow is not equal to meshes when parent an object to armatures.

In the drawing engine has been added the option to handle the Fade object parameter used in armatures to see the strokes while move the bones.

When rename bones, all related data of grease pencil is renamed too. This not only affect new armature code, but also layers parented and hook modifiers.

Thanks @aligorith for his review and help.

3 years agoFix T56610: crash saving images with python API.
Brecht Van Lommel [Thu, 30 Aug 2018 10:19:27 +0000 (12:19 +0200)]
Fix T56610: crash saving images with python API.

3 years agoCleanup: license header formatting.
Brecht Van Lommel [Thu, 30 Aug 2018 10:09:47 +0000 (12:09 +0200)]
Cleanup: license header formatting.

3 years agoCleanup: Remove line introduced by error in previous commit
Antonioya [Thu, 30 Aug 2018 09:18:04 +0000 (11:18 +0200)]
Cleanup: Remove line introduced by error in previous commit

3 years agoGP: Add weights while drawing strokes
Antonioya [Thu, 30 Aug 2018 09:11:10 +0000 (11:11 +0200)]
GP: Add weights while drawing strokes

Now it's possible to add the weight of the current selected vertex group to any new stroke created.

This is very handy when add drawings after the weight paint was done and it will be required with Armatures.