blender.git
26 min agoFix T63897: GPencil Material Presets showing error master
Antonioya [Fri, 26 Apr 2019 08:14:50 +0000 (10:14 +0200)]
Fix T63897: GPencil Material Presets showing error

This error was introduced in a previous commit with the rename of the parameter.

Also added some missing values.

2 hours agoKeymap: Support shift-click to select multiple reports
Campbell Barton [Fri, 26 Apr 2019 05:59:30 +0000 (15:59 +1000)]
Keymap: Support shift-click to select multiple reports

Also support drag for box-select, matching the outliner.

D4660 by @Poulpator with edits.

5 hours agoCleanup: clang-format
Campbell Barton [Fri, 26 Apr 2019 03:03:38 +0000 (13:03 +1000)]
Cleanup: clang-format

5 hours agoCleanup: unused variable warning
Campbell Barton [Fri, 26 Apr 2019 03:02:44 +0000 (13:02 +1000)]
Cleanup: unused variable warning

10 hours agoFix T63784 Eevee : Black Diffuse with Principled BSDF and Mix Shader
Clément Foucault [Thu, 25 Apr 2019 22:12:06 +0000 (00:12 +0200)]
Fix T63784 Eevee : Black Diffuse with Principled BSDF and Mix Shader

This was cause by the SSS energy being lost when using SSRefraction. Also the mix
shader did not merge the discarded SSS light into the radiance.

11 hours agoCleanup: Node shader texture image
Clément Foucault [Thu, 25 Apr 2019 21:23:04 +0000 (23:23 +0200)]
Cleanup: Node shader texture image

11 hours agoAVI: Fix buffer overflow
Clément Foucault [Thu, 25 Apr 2019 18:40:57 +0000 (20:40 +0200)]
AVI: Fix buffer overflow

That was causing crashes when loading uncompressed avi files created with blender 2.79.

12 hours agoFix T63605: Assert squeezing a template_curve_mapping in a panel to
Philipp Oeser [Tue, 23 Apr 2019 11:13:11 +0000 (13:13 +0200)]
Fix T63605: Assert squeezing a template_curve_mapping in a panel to
almost zero horizontally

Reviewers: brecht

Maniphest Tasks: T63605

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

15 hours agoText editor: convert tabs to spaces on paste
Bruno Boaventura Scholl [Thu, 25 Apr 2019 17:25:58 +0000 (19:25 +0200)]
Text editor: convert tabs to spaces on paste

If the Tabs as Spaces settings is enabled for the text block. This avoids
issues with inconsistent indentation when pasting Python code from another
source.

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

16 hours agoUI: keep timeline collapsed to header size when resizing window
George Vogiatzis [Thu, 25 Apr 2019 16:10:41 +0000 (18:10 +0200)]
UI: keep timeline collapsed to header size when resizing window

This restores functionality lost with e8c9e85401ef.

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

16 hours agoCleanup: remove unneeded screen_refresh_headersizes
George Vogiatzis [Thu, 25 Apr 2019 15:34:06 +0000 (17:34 +0200)]
Cleanup: remove unneeded screen_refresh_headersizes

screen_geom_vertices_scale already checks if areas are too small for header.
And header size will be set in region_rect_recursive from ED_area_initialize.

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

16 hours agoFix small outliner drawing performance regression
Harley Acheson [Thu, 25 Apr 2019 14:39:16 +0000 (16:39 +0200)]
Fix small outliner drawing performance regression

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

16 hours agoUI: hide redundant menu separators automatically
Harley Acheson [Thu, 25 Apr 2019 12:40:53 +0000 (14:40 +0200)]
UI: hide redundant menu separators automatically

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

17 hours agoDRW: Use culling when selecting
Clément Foucault [Thu, 25 Apr 2019 13:55:27 +0000 (15:55 +0200)]
DRW: Use culling when selecting

The culing still seems to be off but at least it is enabled now.

17 hours agoDRW: Cleanup: use iter_flag const for readability
Clément Foucault [Thu, 25 Apr 2019 12:33:40 +0000 (14:33 +0200)]
DRW: Cleanup: use iter_flag const for readability

17 hours agoFix T63846: In Orthographic View, unconfirmed Grease Pencil strokes do not appear...
Antonioya [Thu, 25 Apr 2019 15:11:58 +0000 (17:11 +0200)]
Fix T63846: In Orthographic View, unconfirmed Grease Pencil strokes do not appear in front of Reference Images

In orthographic, the z-depth was wrong.

18 hours agoCleanup: remove verbose debug print
Jacques Lucke [Thu, 25 Apr 2019 14:31:02 +0000 (16:31 +0200)]
Cleanup: remove verbose debug print

18 hours agoTracking Pie Menus for Blender 2.8
Sebastian Koenig [Thu, 25 Apr 2019 14:05:47 +0000 (16:05 +0200)]
Tracking Pie Menus for Blender 2.8

This patch adds 4 pie menus to space_clip.py, as discussed in T57912.

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

19 hours agoSequencer: use Alpha Over blend mode by default
Jacques Lucke [Thu, 25 Apr 2019 13:23:53 +0000 (15:23 +0200)]
Sequencer: use Alpha Over blend mode by default

Reviewers: ISS, brecht

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

19 hours agoIndustry Compat Keymap: Support box select for more tools with gizmos
William Reynish [Thu, 25 Apr 2019 13:08:33 +0000 (15:08 +0200)]
Industry Compat Keymap: Support box select for more tools with gizmos

-Extrude Region
-Spin & Spin Duplicates
-Shear

Again, MMB is used here to execute the tool outside the gizmo perpendicular to the view

20 hours agoMerge branch 'blender2.7'
Brecht Van Lommel [Thu, 25 Apr 2019 12:31:45 +0000 (14:31 +0200)]
Merge branch 'blender2.7'

20 hours agoFix T63494: linked scenes missing from sequencer Add > Scene menu
Philipp Oeser [Thu, 25 Apr 2019 12:27:56 +0000 (14:27 +0200)]
Fix T63494: linked scenes missing from sequencer Add > Scene menu

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

20 hours agoFix inconsistent collection/object hide icon brightness in outliner
Harley Acheson [Thu, 25 Apr 2019 12:26:03 +0000 (14:26 +0200)]
Fix inconsistent collection/object hide icon brightness in outliner

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

20 hours agoGHOST: remove OpenGL depth buffer, remove code for other unused buffers
mano-wii [Thu, 25 Apr 2019 12:09:01 +0000 (14:09 +0200)]
GHOST: remove OpenGL depth buffer, remove code for other unused buffers

Viewport drawing has moved to offscreen buffers, and we no longer need to have
depth, stencil, aa samples, sRGB buffers as part of the window. So all that
code is removed now. The depth buffer was the only one still being allocated,
its removal save a bit of memory.

Code by Germano and Brecht.

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

20 hours agoFix T63344: broken topology after sculpting with clay strips brush
Pablo Dobarro [Thu, 25 Apr 2019 12:07:30 +0000 (14:07 +0200)]
Fix T63344: broken topology after sculpting with clay strips brush

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

20 hours agoFix T63859: outdated info editor description
Brecht Van Lommel [Thu, 25 Apr 2019 11:58:25 +0000 (13:58 +0200)]
Fix T63859: outdated info editor description

Contributed by EitanSomething.

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

20 hours agoIndustry Compat Keymap: Support box selecting while the transform tools are active
William Reynish [Thu, 25 Apr 2019 12:12:17 +0000 (14:12 +0200)]
Industry Compat Keymap: Support box selecting while the transform tools are active
Similar to many apps:
  - Use left click and drag to box select
  - Hold modifiers like Ctrl and Shift to remove or expand selections
  - Use MMB-drag to use the tool outside of the gizmo area

In the future it would be nice if the transform tools would have this increased flexibility built-in so you could configure it more easily, but this setup seems to at least make it do the most commonly useful thing by default.

20 hours agoFix for Cycles UV adaptive subdivision after float2 changes. blender2.7
Alex Fuller [Thu, 25 Apr 2019 12:04:31 +0000 (14:04 +0200)]
Fix for Cycles UV adaptive subdivision after float2 changes.

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

22 hours agoFix T63524: crash selecting an object in texture coordinate node
Brecht Van Lommel [Thu, 25 Apr 2019 10:11:55 +0000 (12:11 +0200)]
Fix T63524: crash selecting an object in texture coordinate node

Using mat4 in a uniform buffer object was not properly supported.

23 hours agoOverlay: Mesh Analysis
Jeroen Bakker [Thu, 18 Apr 2019 06:00:59 +0000 (08:00 +0200)]
Overlay: Mesh Analysis

Enabling the drawing of the mesh analysis overlay.
Currently the settings are part of the scene toolsettings. What makes sense,
for 3d printing, but does not fit well with the per viewport blender 2.80
overlays.

Reviewers: brecht, fclem

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

23 hours agoFix opening files from splash screen
Jacques Lucke [Thu, 25 Apr 2019 09:03:09 +0000 (11:03 +0200)]
Fix opening files from splash screen

26 hours agoDynamicPaint: Remove Previews
Jeroen Bakker [Wed, 24 Apr 2019 13:43:58 +0000 (15:43 +0200)]
DynamicPaint: Remove Previews

Modifier previews should be implemented by a more generic system.
The current system is already a hack and needed a lot of work
to get it working again in 2.80 and even so that would be replaced by
another system in the near future.

For Vertex Colors we have a work around in place by using Workbench
Vertex Colors. For Vertex Weights we loose the previewing. Not sure
targetting weight is working (even for 279).

Reviewed By: brecht

Maniphest Tasks: T63857

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

27 hours agoOutliner parenting hierarchy: Sort for children when not a-z sorting
Dalai Felinto [Thu, 25 Apr 2019 04:47:14 +0000 (01:47 -0300)]
Outliner parenting hierarchy: Sort for children when not a-z sorting

We always keep the children that are not in a collection listed in the
end of the children list due to design. This way we can visually draw
them with dashed vertical lines.

This was already working for alphabetical sorting, however whenever
sorting was disabled, we would end up with a list of children ordered
regardless of their state (whether the child itself is in the collection).

28 hours agoFix T63869: Crash in new outliner show parenting hierarchy
Dalai Felinto [Thu, 25 Apr 2019 03:09:19 +0000 (00:09 -0300)]
Fix T63869: Crash in new outliner show parenting hierarchy

As known as outliner parenting hierarchy take two.
Implemented suggestion by Brecht Van Lommel:

```
The problem is that it's iterating over te_parent->subtree,
while at the same time removing elements from it as tree_to_remove_objects_from.

Further there is a linear lookup to find tree elements corresponding to a child
object, which causes O(n^2) time complexity overall and so poor scaling for many
objects in a collection.

The more efficient solution that also fixes the crash could be:

* Build a map from Object* to a list of TreeElement* matching the object.
* For all objects in the tree lookup the parent in this map, and move or add
  tree elements as needed.
```

I removed the grouping of the children not in collection in the end of
the children list when sorting was not enabled. If we think we really
need it back it can be tackled separately.

That said, despite due to performance reasons, I can't see why would
someone not have the a-z sorting enabled. And if they do, it is not the
end of the world to have interleaved children that are in the collection
or not in the parent subtree.

30 hours agoFix T63528: Alembic export always showing error on macOS, even on success
Brecht Van Lommel [Thu, 25 Apr 2019 01:31:30 +0000 (03:31 +0200)]
Fix T63528: Alembic export always showing error on macOS, even on success

tellp() is not valid to check if the string stream is empty. Just get the
string directly as there is no obvious efficient method to check otherwise.

30 hours agoCycles: tweak preferences text when no compatible GPUs are found
Brecht Van Lommel [Mon, 22 Apr 2019 08:10:43 +0000 (10:10 +0200)]
Cycles: tweak preferences text when no compatible GPUs are found

Try to make it more clear that this only affects Cycles, many users seem to
miss the panel title.

34 hours agoFix T63869: disable outliner show parent hierarchy temporarily
Brecht Van Lommel [Wed, 24 Apr 2019 22:21:10 +0000 (00:21 +0200)]
Fix T63869: disable outliner show parent hierarchy temporarily

This is likely to cause crashes in many file, so disable this feature until
it is fixed.

34 hours agoCleanup: fix compiler warning
Brecht Van Lommel [Wed, 24 Apr 2019 15:47:29 +0000 (17:47 +0200)]
Cleanup: fix compiler warning

36 hours agoFix T63841: armature with X-axis mirror does not mirror bbone scale
Philipp Oeser [Wed, 24 Apr 2019 13:42:06 +0000 (15:42 +0200)]
Fix T63841: armature with X-axis mirror does not mirror bbone scale

Reviewers: brecht

Maniphest Tasks: T63841

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

39 hours agoFix T61184 linked curves with curve modifiers arent drawn correctly
Clément Foucault [Wed, 24 Apr 2019 17:11:28 +0000 (19:11 +0200)]
Fix T61184 linked curves with curve modifiers arent drawn correctly

Force Displist to Mesh conversion if there is any modifier.

This is until we find a better way to store the batches per objects.

Also fix draw cache functions that were not returning final mesh edges.

40 hours agoCorrect switched values in the previous commit.
mano-wii [Wed, 24 Apr 2019 16:31:35 +0000 (13:31 -0300)]
Correct switched values in the previous commit.

40 hours agoFix T62701: Hair edit mode crashes on some old AMD Radeon drivers.
mano-wii [Wed, 24 Apr 2019 16:18:17 +0000 (13:18 -0300)]
Fix T62701: Hair edit mode crashes on some old AMD Radeon drivers.

The crash is related to the format, but the real reason is unknown.

40 hours agoUI: Simple confirm dialog when loading new file
Jacques Lucke [Wed, 24 Apr 2019 15:45:34 +0000 (17:45 +0200)]
UI: Simple confirm dialog when loading new file

I also had to make the "New" operator a submenu in the
`File Context Menu`, so that you can still select the template.

This partially solves T61599. Currently the confirm dialog
is not shown when an already existing file is opened.
Implementing that requires a bit more work and will be
done in a separate patch.

Reviewers: brecht

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

41 hours agoRefactor: allow event handlers to have a poll function
Jacques Lucke [Wed, 24 Apr 2019 15:34:48 +0000 (17:34 +0200)]
Refactor: allow event handlers to have a poll function

Previously only a fixed bounding box could be used.
This was not flexible enough.
T63193 will benefit from this refactor.

Reviewers: brecht, campbellbarton

44 hours agoCycles: remove hair minimum width support.
Brecht Van Lommel [Sat, 16 Mar 2019 21:05:37 +0000 (22:05 +0100)]
Cycles: remove hair minimum width support.

This never really worked as it was supposed to. The main goal of this is to
turn noise from sampling tiny hairs into multiple layers of transparency that
do not need to be sampled stochastically. However the implementation of this
worked by randomly discarding hair intersections in BVH traversal, which
defeats the purpose.

If it ever comes back, it's best implemented outside the kernel as a preprocess
that changes hair radius before BVH building. This would also make it work with
Embree, where it's not supported now. But it's not so clear anymore that with
many AA samples and GPU rendering this feature is as helpful as it once was for
CPU raytracers with few AA samples.

The benefit of removing this feature is improved hair ray tracing performance,
tested on NVIDIA Titan Xp:

bmw27: +0.37%
classroom: +0.26%
fishy_cat: -7.36%
koro: -12.98%
pabellon: -0.12%

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

44 hours agoOutliner: Show parenting hierarchy in view layer view
Dalai Felinto [Wed, 24 Apr 2019 11:41:35 +0000 (11:41 +0000)]
Outliner: Show parenting hierarchy in view layer view

If the "Object Children" filter is enabled, we nest the object children inside
the object. If the child itself is not in the collection, it is grayed out,
connected by a dash line, and its restriction flags and contents are not shown.

If "Object Children" filter is disabled, it works as before.

Note: This is not super fast, but at least we traverse the tree only once to get the
children of an object. That said, there is a lot of loops going on here.

Task T63526.

Development notes:
I could use the GPU_SHADER_2D_LINE_DASHED_UNIFORM_COLOR shader, but
that would mean I would need to iterate over the tree twice (once for
each shader) - or do some bigger refactor.

Also I could not get that shader to work. This shader expects float
vertices while the current one is using integers, so converting the code
would make the dash line drawing to diverge from the regular lines even
further.

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

45 hours agoCycles: move shader node versioning code to C
Brecht Van Lommel [Sat, 20 Apr 2019 18:25:23 +0000 (20:25 +0200)]
Cycles: move shader node versioning code to C

Shader nodes are now shared with Eevee, so makes more sense to have it in
the core and not be Cycles specific.

Fix T62415: issues with append/link of old Cycles settings.

45 hours agoNodes: avoid slow and unecessary node group updates on file read
Brecht Van Lommel [Sat, 20 Apr 2019 18:25:22 +0000 (20:25 +0200)]
Nodes: avoid slow and unecessary node group updates on file read

On file read we need to update group nodes in case the group they refer to
has changed its inputs and outputs. This had O(n^2) time complexity and was
updating all datablocks even if they did not change.

45 hours agoNodes: remove group node forward compatibility with version 2.66
Brecht Van Lommel [Sat, 20 Apr 2019 18:25:21 +0000 (20:25 +0200)]
Nodes: remove group node forward compatibility with version 2.66

Forward compatibility with that version is already long gone, and removing
it means we can avoid running some complicated code on every file read/write.

45 hours agoNodes: better integrate node init and versioning in file reading
Brecht Van Lommel [Sat, 20 Apr 2019 18:25:20 +0000 (20:25 +0200)]
Nodes: better integrate node init and versioning in file reading

Node versioning code was added before there was a mechanism to do versioning
after lib linking. Now integrate with that system and make it less of a strange
exception. Node versioning is now skipped on undo, like other versioning code.

46 hours agoFix T63566: Pop-up closes before mouse-over
Campbell Barton [Wed, 24 Apr 2019 10:16:40 +0000 (20:16 +1000)]
Fix T63566: Pop-up closes before mouse-over

Closely spaced buttons caused the curve clipping popup to close
before the cursor could mouse-over it.

46 hours agoRefactor: Separate template selection from read_homefile operator
Jacques Lucke [Wed, 24 Apr 2019 09:54:40 +0000 (11:54 +0200)]
Refactor: Separate template selection from read_homefile operator

This is a first step towards T61599.
This way the invoke function can be used for the confirm
dialog in a separate patch.

Reviewers: campbellbarton

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

47 hours agoFix T55326: Massive slowdown when animating material in a highpoly mesh
Sergey Sharybin [Wed, 24 Apr 2019 09:24:45 +0000 (11:24 +0200)]
Fix T55326: Massive slowdown when animating material in a highpoly mesh

This is a dependency graph part, which is the last required bit to get the
issue solved after all the rest of the work done by Clement.

47 hours agoGPencil: Disable Stroke Textures in Solid mode
Antonioya [Wed, 24 Apr 2019 09:27:34 +0000 (11:27 +0200)]
GPencil: Disable Stroke Textures in Solid mode

When solid mode is enabled, but Texture mode is disabled, the color of the stroke must not use the texture.

47 hours agoGPencil: Add small offset to follow the drawing path for single points
Antonioya [Wed, 24 Apr 2019 08:45:08 +0000 (10:45 +0200)]
GPencil: Add small offset to follow the drawing path for single points

The offset added allows to generate a vector to determine direction. This direction will be used when rotate the object to rotate texture.

The solution is not 100% perfect, but it's far better that having an unpredictable rotation.

2 days agoFix tool settings showing in the top-bar
Campbell Barton [Wed, 24 Apr 2019 06:11:16 +0000 (16:11 +1000)]
Fix tool settings showing in the top-bar

Each spaces top-bar wasn't showing it's own active tool,
Remove RNA access to the workspaces tool since using it is error prone.
Eventually this should be completely removed.

2 days agoCleanup: sort CMake include paths
Campbell Barton [Wed, 24 Apr 2019 04:39:31 +0000 (14:39 +1000)]
Cleanup: sort CMake include paths

2 days agoHaiku: build fix
Campbell Barton [Wed, 24 Apr 2019 02:30:35 +0000 (12:30 +1000)]
Haiku: build fix

D4693 by @miqlas

2 days agoCleanup: remove unused transform tool
Campbell Barton [Wed, 24 Apr 2019 02:08:07 +0000 (12:08 +1000)]
Cleanup: remove unused transform tool

D4695 by @kamran

2 days agoFix T63822: Sidebar tabs active area dead-zone #2
Campbell Barton [Wed, 24 Apr 2019 01:37:36 +0000 (11:37 +1000)]
Fix T63822: Sidebar tabs active area dead-zone #2

Take the entire gutter used for panel tabs into account.

Introduced in recent fix for T61554

2 days agoFix T63822: Sidebar tabs active area dead-zone
Campbell Barton [Tue, 23 Apr 2019 20:57:36 +0000 (06:57 +1000)]
Fix T63822: Sidebar tabs active area dead-zone

Clip on one axis for aligned regions to avoid tabs being clipped out.

Introduced in recent fix for T61554

2 days agoFix action zones getting out of sync with panel size
Campbell Barton [Tue, 23 Apr 2019 20:10:50 +0000 (06:10 +1000)]
Fix action zones getting out of sync with panel size

Change to recent fix for T61554

2 days agoCleanup: correct rst string literals
Campbell Barton [Tue, 23 Apr 2019 18:09:56 +0000 (04:09 +1000)]
Cleanup: correct rst string literals

2 days agoFix building with asan option and OSL.
Bastien Montagne [Tue, 23 Apr 2019 18:59:10 +0000 (20:59 +0200)]
Fix building with asan option and OSL.

When OSL is enabled, Cycles disables RTTI in some of its modules, which
then breaks vptr sanitizer (part of the 'undefined' sanitizer).

thanks to @brecht for helping tracking down the issue.

2 days agoFix T63178 Eevee animation render crash
Clément Foucault [Tue, 23 Apr 2019 18:34:26 +0000 (20:34 +0200)]
Fix T63178 Eevee animation render crash

If image buffer is not loaded and blender attempts to reload it (during
`BKE_image_acquire_ibuf`) over and over for each frame rendered.
When attempting this reload, image_load_image_file is calling
`BKE_image_free_buffers` and tag the Image to the (GPU) image_free_queue
(because this run on the rendering thread).

If the main thread decide to redraw the UI and go through `GPU_free_unused_buffers` they all get deleted and if that happens before the rendering thread use them ... segfault.

If I replace the environment textures with correct ones (the file does not seems to contain them), there is no crash when rendering.

I used a list of GPUTexture from blender Image to increase and decrease the
reference counter correctly.

This add very little memory and computation overhead.

2 days agoGPUBuffers: Fix wrong assert
Clément Foucault [Tue, 23 Apr 2019 12:30:52 +0000 (14:30 +0200)]
GPUBuffers: Fix wrong assert

For good this time...

forgot to commit it in the previous commit rBedde48f57844.

2 days agoFix T63813: crash saving images on Windows
Brecht Van Lommel [Tue, 23 Apr 2019 16:59:24 +0000 (18:59 +0200)]
Fix T63813: crash saving images on Windows

The danger of void pointers...

2 days agoMerge branch 'blender2.7'
Brecht Van Lommel [Tue, 23 Apr 2019 16:54:50 +0000 (18:54 +0200)]
Merge branch 'blender2.7'

2 days agoFix T63796: 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 T63796: Cycles OSL shader with closure not working in final render.

2 days agoOutliner draw: Fix using wrong flag to tag object on visibility change
Dalai Felinto [Tue, 23 Apr 2019 15:54:19 +0000 (12:54 -0300)]
Outliner draw: Fix using wrong flag to tag object on visibility change

Note: This doesn't fix any bug we know of, but it is the correct flag to
tag in this case.

2 days agoDepsgraph: make the dependency cycle report more readable.
Alexander Gavrilov [Tue, 23 Apr 2019 15:29:36 +0000 (18:29 +0300)]
Depsgraph: make the dependency cycle report more readable.

Since it is a continuous cycle, there's no need to repeat the
name of the previous bone. Also, dot is a common symbol in object
and bone names, so use '/' instead for node nesting.

2 days agoGPencil: Add support for gradient to Box strokes
Antonioya [Tue, 23 Apr 2019 15:25:37 +0000 (17:25 +0200)]
GPencil: Add support for gradient to Box strokes

Before this options was only available to Dots mode.

2 days agoSpace_node: Add draw backdrop callback.
Ray Molenkamp [Tue, 23 Apr 2019 15:15:45 +0000 (09:15 -0600)]
Space_node: Add draw backdrop callback.

Add a callback to allow custom node editors to draw their own
backdrop.

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

Reviewed by: JacquesLucke

2 days agoDepsgraph: fix standard IK target dependencies.
Alexander Gavrilov [Tue, 23 Apr 2019 14:47:11 +0000 (17:47 +0300)]
Depsgraph: fix standard IK target dependencies.

Targeting a different object always requires its transform,
and normally dependencies should go to the solver node.

ITASC is quite broken so special case it until fixed.

2 days agoFix T63816: Crash opening file with multiple view layers
Sergey Sharybin [Tue, 23 Apr 2019 12:31:21 +0000 (14:31 +0200)]
Fix T63816: Crash opening file with multiple view layers

Dependency graph will not be crated for view layers which were never visible.

2 days agoB-Bones: remove hard limits on curve/roll/scale/ease properties.
Alexander Gavrilov [Tue, 23 Apr 2019 10:27:27 +0000 (13:27 +0300)]
B-Bones: remove hard limits on curve/roll/scale/ease properties.

I don't see any reasons why soft limits wouldn't be enough here.

2 days agoCleanup: rename the curveInX etc bbone DNA fields to curve_in_x etc.
Alexander Gavrilov [Tue, 23 Apr 2019 10:15:30 +0000 (13:15 +0300)]
Cleanup: rename the curveInX etc bbone DNA fields to curve_in_x etc.

2 days agoB-Bones: split the Scale In/Out properties into X and Y values.
Alexander Gavrilov [Sat, 20 Apr 2019 15:06:31 +0000 (18:06 +0300)]
B-Bones: split the Scale In/Out properties into X and Y values.

As far as I can tell, there is no technical reason why the B-Bone
segment thickness scaling can't be separated into two axes. The
only downside is the increase in complexity of the B-Bone settings,
but this is inevitable due to the increase in flexibility.

Updating the file is somewhat complicated though, because F-Curves
and drivers have to be duplicated and updated to the new names.

Reviewers: campbellbarton

Subscribers: icappiello, jpbouza

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

2 days agoFix T63233: Set default blur kernel radius to 2.
Jacques Lucke [Tue, 23 Apr 2019 10:31:37 +0000 (12:31 +0200)]
Fix T63233: Set default blur kernel radius to 2.

Reviewers: jbakker

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

2 days agoCleanup: Fix comment for ImBuf->encodedbuffer
Jacques Lucke [Tue, 23 Apr 2019 10:24:55 +0000 (12:24 +0200)]
Cleanup: Fix comment for ImBuf->encodedbuffer

2 days agoWorkbench: Support Active Vertex Color
Jeroen Bakker [Tue, 16 Apr 2019 12:00:16 +0000 (14:00 +0200)]
Workbench: Support Active Vertex Color

Currently it is not possible to view the vertex colors of an object. To
optimize the workflow, workbench will need to support Vertex Colors.

The Vertex Colors is a new option in `shading->color_type`. When objects
do not have vertex color, the objects will be rendered with the
`V3D_SHADING_OBJECT_COLOR`.

In order to support vertex colors in workbench the current texture/solid
shading structure is migrated to a primary shaders and fallback shaders.

Fix: T57000

Reviewers: brecht, fclem

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

2 days agoFix T63649: Action group expand setting for graph editor missing
Jacques Lucke [Tue, 23 Apr 2019 09:24:55 +0000 (11:24 +0200)]
Fix T63649: Action group expand setting for graph editor missing

I did not rename the other property to `show_expanded_dopesheet`
yet (as suggested in the report), because:
* Would break compatibility (haven't found any addon using it though).
* I'm not sure if this really only affects the dopesheet.

3 days agoCleanup: minor changes to scrollbar checks
Campbell Barton [Tue, 23 Apr 2019 07:12:09 +0000 (17:12 +1000)]
Cleanup: minor changes to scrollbar checks

Remove some redundant comments & declare vars in for loops.

3 days agoUI: ignore events in empty region overlap areas
Campbell Barton [Tue, 23 Apr 2019 06:43:50 +0000 (16:43 +1000)]
UI: ignore events in empty region overlap areas

- Resizable areas use 2D view bounds.
- Header uses the button bounds.
- A margin is added to avoid clicking between buttons.
- Region resize edges clamp to the 2D view bounds.

Resovles T61554

3 days agoUI: add ui_window_to_block_rctf, ui_window_to_region_rcti
Campbell Barton [Tue, 23 Apr 2019 06:39:14 +0000 (16:39 +1000)]
UI: add ui_window_to_block_rctf, ui_window_to_region_rcti

3 days agoUI: move auto_open clearing out of ui_region_contains_point_px
Campbell Barton [Tue, 23 Apr 2019 05:44:31 +0000 (15:44 +1000)]
UI: move auto_open clearing out of ui_region_contains_point_px

Prefer explicit call for menu buttons since it's confusing if only some
queries clear auto open.
Also queries shouldn't modify data.

3 days agoCleanup: style, use braces for compositor
Campbell Barton [Tue, 23 Apr 2019 01:21:22 +0000 (11:21 +1000)]
Cleanup: style, use braces for compositor

3 days agoCleanup: style, use braces for imbuf
Campbell Barton [Tue, 23 Apr 2019 01:01:30 +0000 (11:01 +1000)]
Cleanup: style, use braces for imbuf

3 days agoFix T63772: Movie clip toggle toolbar fails
Campbell Barton [Tue, 23 Apr 2019 00:00:48 +0000 (10:00 +1000)]
Fix T63772: Movie clip toggle toolbar fails

D4718 by @Gvgeo

3 days agoApp Template: match screen names to workspaces
Campbell Barton [Mon, 22 Apr 2019 22:49:10 +0000 (08:49 +1000)]
App Template: match screen names to workspaces

Doing this makes versioning workspace screens simpler.

This was already done for the default startup file.

3 days agoCorrect braces with ifdef's
Campbell Barton [Mon, 22 Apr 2019 22:36:57 +0000 (08:36 +1000)]
Correct braces with ifdef's

3 days agoRename: Separate: By loose parts > By Loose Parts
Dalai Felinto [Mon, 22 Apr 2019 13:10:19 +0000 (10:10 -0300)]
Rename: Separate: By loose parts > By Loose Parts

3 days agoCleanup: style, use braces
Campbell Barton [Mon, 22 Apr 2019 02:20:14 +0000 (12:20 +1000)]
Cleanup: style, use braces

Add braces for modules already using braces almost everywhere.

3 days agoCleanup: style, use braces for nodes
Campbell Barton [Mon, 22 Apr 2019 03:31:31 +0000 (13:31 +1000)]
Cleanup: style, use braces for nodes

3 days agoCleanup: style, use braces for blenkernel
Campbell Barton [Sun, 21 Apr 2019 23:39:35 +0000 (09:39 +1000)]
Cleanup: style, use braces for blenkernel

3 days agoCleanup: style, use braces for gpu
Campbell Barton [Sun, 21 Apr 2019 23:32:37 +0000 (09:32 +1000)]
Cleanup: style, use braces for gpu

3 days agoCleanup: style, use braces for editors
Campbell Barton [Sun, 21 Apr 2019 23:19:45 +0000 (09:19 +1000)]
Cleanup: style, use braces for editors

3 days agoCleanup: style, use braces for gpencil modifiers
Campbell Barton [Sun, 21 Apr 2019 23:16:44 +0000 (09:16 +1000)]
Cleanup: style, use braces for gpencil modifiers

3 days agoCleanup: style, use braces for makesdna, makesrna
Campbell Barton [Sun, 21 Apr 2019 23:16:18 +0000 (09:16 +1000)]
Cleanup: style, use braces for makesdna, makesrna

3 days agoCleanup: style, use braces for modifiers
Campbell Barton [Sun, 21 Apr 2019 23:15:10 +0000 (09:15 +1000)]
Cleanup: style, use braces for modifiers