17 months agoFix: Erratic collision response when using constraints on colliders
Benjamin Meyer [Thu, 4 Apr 2019 08:39:12 +0000 (10:39 +0200)]
Fix: Erratic collision response when using constraints on colliders

Missing dependency, which made collission to access object transform
prior it was evaluated.

Reviewers: sergey

Differential Revision:

17 months agoCleanup: remove B-Bone shape pointers from bPoseChanDeform.
Alexander Gavrilov [Thu, 4 Apr 2019 08:18:40 +0000 (11:18 +0300)]
Cleanup: remove B-Bone shape pointers from bPoseChanDeform.

They are pointless copies from pchan->runtime by now.

17 months agoSeparation lines for Quad View
Harley Acheson [Wed, 3 Apr 2019 23:25:43 +0000 (01:25 +0200)]
Separation lines for Quad View

Reviewers: brecht, billreynish, fclem

Reviewed By: billreynish, fclem

Differential Revision:

17 months agoFix T63255: Crash when circle select performs selection outside the viewport's bounds.
mano-wii [Wed, 3 Apr 2019 23:05:59 +0000 (20:05 -0300)]
Fix T63255: Crash when circle select performs selection outside the viewport's bounds.

17 months agoFix T61870 Eevee: Object's go completely black if they have a normal map
Clément Foucault [Wed, 3 Apr 2019 22:51:03 +0000 (00:51 +0200)]
Fix T61870 Eevee: Object's go completely black if they have a normal map

The problem was that tangent layers (being computed on demand in the batch
cache generation) were generated but if MR_DATATYPE_LOOPTRI was not present
(in some cases) and the looptri_len was 0, leaving the CDATA layer cleared.

17 months agoDRW: Mesh Batch Cache: Fix error in loop custom data layer checking
Clément Foucault [Wed, 3 Apr 2019 21:46:32 +0000 (23:46 +0200)]
DRW: Mesh Batch Cache: Fix error in loop custom data layer checking

17 months agoCleanup: redundant casts
Campbell Barton [Wed, 3 Apr 2019 21:15:26 +0000 (08:15 +1100)]
Cleanup: redundant casts

17 months agoCleanup: style
Campbell Barton [Wed, 3 Apr 2019 21:13:13 +0000 (08:13 +1100)]
Cleanup: style

17 months agoFix T55589, T60967: Windows pen pressure issues at start/end of the stroke.
Christopher Peerman [Wed, 3 Apr 2019 14:36:28 +0000 (16:36 +0200)]
Fix T55589, T60967: Windows pen pressure issues at start/end of the stroke.

and the pointer API to process stylus events. This avoids the delays that comes
with the WM_MOUSE and WM_xBUTTON events. The implementation should work on
Windows 8, and Windows 10 with both legacy and new pen interaction.

It also changes how the pressure is reset when the Windows Ink implementation
is enabled. The previous version reset the pressure to full when the pen left
the screen, however for some hardware implementations this allowed a small
window where Blender may process the final move event and read the pressure
as full leaving a dot on the last event.

Differential Revision:

17 months agoWindows: use Wintab by default if it's available and a device is detected.
Brecht Van Lommel [Wed, 3 Apr 2019 15:09:54 +0000 (17:09 +0200)]
Windows: use Wintab by default if it's available and a device is detected.

Previously Automatic tablet API mode would handle both Windows Ink and
Wintab events. This is unpredictable and causes problems with the fix
coming in the next commit.

Instead assume that in most cases where Windows Ink is desired there
will be no Wintab. If that's not the case, it can be adjusted under
Preferences > Input > Tablet.

17 months agoFix T63257: Grease Pencil renders incorrectly when in edit-mode
Antonioya [Wed, 3 Apr 2019 17:58:32 +0000 (19:58 +0200)]
Fix T63257: Grease Pencil renders incorrectly when in edit-mode

17 months agoAudaspace: merging modulator effect from upstream.
Jörg Müller [Wed, 3 Apr 2019 17:56:25 +0000 (19:56 +0200)]
Audaspace: merging modulator effect from upstream.

17 months agofix for freetype download link and llvm/clang header harvesting
Martin Felke [Wed, 3 Apr 2019 16:51:42 +0000 (18:51 +0200)]
fix for freetype download link and llvm/clang header harvesting

17 months agoFix T62780 , T59802, T57648: fullscreen window issues on Windows.
Brecht Van Lommel [Wed, 3 Apr 2019 14:01:20 +0000 (16:01 +0200)]
Fix T62780 , T59802, T57648: fullscreen window issues on Windows.

This fixes popups and preferences appearing behind the main window, as
well as flickering artifacts when Blender is in fullscreen.

Patch contributed by phocomelus.

Differential Revision:

17 months agoUI: remove close button from Windows console window.
Harley Acheson [Wed, 3 Apr 2019 13:51:48 +0000 (15:51 +0200)]
UI: remove close button from Windows console window.

This way you can't accidentally close Blender when toggling the console
window to be visible. When Blender is started from the command promt the
close button remains.

Differential Revision:

17 months agoMultires: Make topology cache to work with copy-on-write
Sergey Sharybin [Wed, 3 Apr 2019 14:11:57 +0000 (16:11 +0200)]
Multires: Make topology cache to work with copy-on-write

Allows to preserve topology cache even when copy-on-write is
fully re-copying the object. For example, toggling edit mode
in and out does no longer causes full topology to be re-created.

17 months agoFix export_obj_cube test.
Howard Trickey [Wed, 3 Apr 2019 14:05:47 +0000 (10:05 -0400)]
Fix export_obj_cube test.

Verified that current export files for all_quads.blend are good,
then updated expected MD5 hash to match current files.

17 months agoReset background alpha for probe rendering.
Alexander Court [Wed, 3 Apr 2019 13:56:19 +0000 (15:56 +0200)]
Reset background alpha for probe rendering.
Possibly fixes T63005.

Reviewers: fclem

Reviewed By: fclem

Differential Revision:

17 months agoFix T63217: Curve Modifier skipped in Cycles
Sergey Sharybin [Wed, 3 Apr 2019 13:37:30 +0000 (15:37 +0200)]
Fix T63217: Curve Modifier skipped in Cycles

Only mesh objects have all modifiers applied on the evaluated
object's data, other object types are to apply modifiers during
the conversion process.

17 months agoFix T62939: Incorrect cursor position when exiting UI slider
Victor Seiji Hariki [Wed, 3 Apr 2019 13:14:57 +0000 (15:14 +0200)]
Fix T62939: Incorrect cursor position when exiting UI slider

Differential Revision:

17 months agoUI: Fix odd behavior in region sizing, simplify code
George Vogiatzis [Wed, 3 Apr 2019 12:53:57 +0000 (14:53 +0200)]
UI: Fix odd behavior in region sizing, simplify code

* When resizing sidebars, don't collapse when the region becomes too big but
  instead clamp the region size to the available space.
* Fix clicking the tab to expand sidebars no working if the sidebar is too
  wide to fit. Instead make it less wide so it does fit.
* Fix incorrect limit on tool properties region height, for example in the
  file browser.

Differential Revision:

17 months agodeps_builder : copy llvm headers to lib folder.
Ray Molenkamp [Wed, 3 Apr 2019 12:57:16 +0000 (06:57 -0600)]
deps_builder : copy llvm headers to lib folder.

Were not needed previously, but the functions branch needs them.

17 months agoFix T62817: Can't drive modifier property with another one
Sergey Sharybin [Wed, 3 Apr 2019 12:50:21 +0000 (14:50 +0200)]
Fix T62817: Can't drive modifier property with another one

Random place in the modifier stack can not be referenced,
so it doesn't make sense to sue GEOMETRY component as a
FROM operation.

So now drivers on modifiers are driving GEOMETRY component,
but are using PARAMETERS as a source for variables.

17 months agoGPencil: Implement custom channel color in Dopesheet
Antonioya [Wed, 3 Apr 2019 08:25:49 +0000 (10:25 +0200)]
GPencil: Implement custom channel color in Dopesheet

A new parameter in the layer adjustment panel allows to define the color of the channel in Dopesheet.

This is needed when there are a lot of layers.

See D4623 for more details.

17 months agoFix T63220: Cannot make object single user after Duplicate Scene with Link Object...
Bastien Montagne [Tue, 2 Apr 2019 19:50:17 +0000 (21:50 +0200)]
Fix T63220: Cannot make object single user after Duplicate Scene with Link Object Data.

Caused by own recent rB17c15798c35f33e (already a fix in that code).

We cannot erase immediately master_collection's childrn list, as it is
used in sub-code to check in how many scenes an object is instanciated.
Further more, we only want to do the remove old/add new children
collections in case we are actually duplicating them.

Makes me even more eager to nuke that whole piece of code and rethink
from scratch that kind of ID handling. Some day...

17 months agoPython API: expose text object kerning.
Damien Picard [Tue, 2 Apr 2019 17:11:03 +0000 (19:11 +0200)]
Python API: expose text object kerning.

Differential Revision:

17 months agoMerge branch 'blender2.7'
Sergey Sharybin [Tue, 2 Apr 2019 15:51:44 +0000 (17:51 +0200)]
Merge branch 'blender2.7'

17 months agoConstraints: Use RNA update instead of block update
Sergey Sharybin [Tue, 2 Apr 2019 15:44:18 +0000 (17:44 +0200)]
Constraints: Use RNA update instead of block update

Allows to have more control over which tags are done for which

This is a part of T62960 which fixes the issue in the 2.7 series.

17 months agoConstraints: Mark proxy lcoal as not editable
Sergey Sharybin [Tue, 2 Apr 2019 15:43:33 +0000 (17:43 +0200)]
Constraints: Mark proxy lcoal as not editable

This can not work reliably anyway.

17 months agoCleanup: Remove space at the end of description
Sergey Sharybin [Tue, 2 Apr 2019 15:42:30 +0000 (17:42 +0200)]
Cleanup: Remove space at the end of description

17 months agoFix T62434: EEVEE not using correct World Output node
Philipp Oeser [Tue, 2 Apr 2019 14:37:54 +0000 (16:37 +0200)]
Fix T62434: EEVEE not using correct World Output node

We were already getting the designated output node in
'ntreeGPUMaterialNodes()' but this wasnt used in 'ntreeExecGPUNodes()',
instead whatever node was tagged NODE_DO_OUTPUT was executed.

note: this is just the bare minimum to fix the bug, other improvements
previously done in D4482 might follow as a separate commit.

Reviewers: brecht, fclem

Maniphest Tasks: T62434

Differential Revision:

17 months agoCleanup: Fix compiler warning
Antonioya [Tue, 2 Apr 2019 15:02:10 +0000 (17:02 +0200)]
Cleanup: Fix compiler warning

17 months agoUI: Collapsed nodes have the same width as uncollapsed nodes
Robert Guetzkow [Tue, 2 Apr 2019 14:39:48 +0000 (16:39 +0200)]
UI: Collapsed nodes have the same width as uncollapsed nodes

Fixes T63079.

Differential Revision:

17 months agoFix Linux build error after recent changes.
Brecht Van Lommel [Tue, 2 Apr 2019 14:30:39 +0000 (16:30 +0200)]
Fix Linux build error after recent changes.

17 months agoCleanup: Scene Copy: remove scene's camera remapping in core func.
Bastien Montagne [Tue, 2 Apr 2019 14:20:56 +0000 (16:20 +0200)]
Cleanup: Scene Copy: remove scene's camera remapping in core func.

This is useless at that point, since no object has been duplicated yet...

17 months agoFix T62970: Scene Copy: remove 'linked objects/obdata', add 'linked collections'.
Bastien Montagne [Tue, 2 Apr 2019 14:15:17 +0000 (16:15 +0200)]
Fix T62970: Scene Copy: remove 'linked objects/obdata', add 'linked collections'.

'Linked objects' option was not behaving correctly before, effectively
linking in collections, so this one has been renamed to just 'Linked Copy',
and gives a fully shallow copy of current scene.

'Linked Obdata' was not really useful, kind of confusing, and was
painful to maintain, so dropping it now.

17 months agoFix broken BLI_STATIC_ASSERT on Visual Studio.
Brecht Van Lommel [Tue, 2 Apr 2019 13:49:07 +0000 (15:49 +0200)]
Fix broken BLI_STATIC_ASSERT on Visual Studio.

The old trick seems to no longer work in newer VS version.

17 months agoFix T63164: DNA size mismatches on 32bit, causing memory corruption and crashes.
Brecht Van Lommel [Tue, 2 Apr 2019 13:56:16 +0000 (15:56 +0200)]
Fix T63164: DNA size mismatches on 32bit, causing memory corruption and crashes.

Some alignment rules from Visual Studion on 32 bit are not taken into
account, this fixes the structs to confirm. We now have static asserts
to catch when such breakage happens in the future.

17 months agoFix T63219: error in previous commit for makesdna mismatch detection
Brecht Van Lommel [Tue, 2 Apr 2019 11:34:53 +0000 (13:34 +0200)]
Fix T63219: error in previous commit for makesdna mismatch detection

17 months agoDNA: add error for DNA computed struct sizes and member offsets mismatch.
Brecht Van Lommel [Tue, 2 Apr 2019 10:32:21 +0000 (12:32 +0200)]
DNA: add error for DNA computed struct sizes and member offsets mismatch.

Ref T63164, there was a hidden bug like this on Windows 32 bit.

17 months agoCleanup: remove DNA_PRIVATE_WORKSPACE hacks.
Brecht Van Lommel [Tue, 2 Apr 2019 11:21:21 +0000 (13:21 +0200)]
Cleanup: remove DNA_PRIVATE_WORKSPACE hacks.

This is just not practical to do for the code as a whole, and having it as an
exception for one specific data structure is not that helpful. This has only
been in the way for me when refactoring code.

17 months agoCleanup: Fix compiler warning
Antonioya [Tue, 2 Apr 2019 11:13:23 +0000 (13:13 +0200)]
Cleanup: Fix compiler warning

17 months agoFix T63120 Select random in particle edit mode is broken
Sebastian Parborg [Tue, 2 Apr 2019 10:35:16 +0000 (12:35 +0200)]
Fix T63120 Select random in particle edit mode is broken

Fix coding snafu where the variable keeping track of changes only took
the state of the last element into account.

17 months agoFix T63211: Can't move camera in viewport while realtime render mode on
Sergey Sharybin [Tue, 2 Apr 2019 09:38:55 +0000 (11:38 +0200)]
Fix T63211: Can't move camera in viewport while realtime render mode on

The issue is that Eevee directly evaluates animation on a datablock which
is a part of active dependency graph.

This is a broken logic by design and requires a complete revamp to support
more real life cases when camera is parented to a camera rig, but it is
beyond of what i can do with a simple bugfix.

17 months agoFix T61598: Python error from connect rigid body feature
Philipp Oeser [Tue, 2 Apr 2019 08:15:04 +0000 (10:15 +0200)]
Fix T61598: Python error from connect rigid body feature

needed update to 2.8

17 months agoFix T60199: Icon Viewer addon causes internal errors and slows text editor
Philipp Oeser [Fri, 29 Mar 2019 15:10:36 +0000 (16:10 +0100)]
Fix T60199: Icon Viewer addon causes internal errors and slows text editor

this just removes unused icon definitions [for which no icons exist

Reviewers: billreynish, brecht

Maniphest Tasks: T60199

Differential Revision:

17 months agoCleanup: empty expression statement warning
Campbell Barton [Tue, 2 Apr 2019 06:54:04 +0000 (17:54 +1100)]
Cleanup: empty expression statement warning

17 months agoFix T63101: Blender crashes on adding any object to collection duplicated with added...
Bastien Montagne [Mon, 1 Apr 2019 19:10:25 +0000 (21:10 +0200)]
Fix T63101: Blender crashes on adding any object to collection duplicated with added scene.

Issue was that (deep) duplication code of scene ended up leaving
children collections of new master one without any parent.

Note that even though I think that fix is OK for now, we should really
make 'deep' duplication of IDs part of the generic ID management code.
Am less and less happy with current handling of this, done half from
/editors code, half from some semi-specialized helpers from /blenkernel,
with sometimes nearly the same logic replicated several times for
slightly different needs, etc. Unfortunately this would not be a small
refactor, so it will have to wait...

17 months agoEdit Mesh Selection: Clear out buffer that indicates out of bounds pixels.
mano-wii [Sun, 31 Mar 2019 18:58:29 +0000 (15:58 -0300)]
Edit Mesh Selection: Clear out buffer that indicates out of bounds pixels.

This prevents the use of uninitialized buffer.
In addition, use `memset` instead of assigning in a loop.

17 months agoGPencil: Handle vertex groups weights correctly
Antonioya [Mon, 1 Apr 2019 14:47:01 +0000 (16:47 +0200)]
GPencil: Handle vertex groups weights correctly

In extrude operator when the point was added, the weight data pointer was wrongly connected to old pointer.

Now, when move the data, the pointer is moved, but when a new point is added, the memory is duplicated to keep separated copies of the pointer.

This is related T62872

Thanks to @sergey for his help fixing this bug.

17 months agoCleanup: Indentation
Sergey Sharybin [Mon, 1 Apr 2019 14:33:28 +0000 (16:33 +0200)]
Cleanup: Indentation

Got broken in the previous commit somehow.

17 months agoFix memory leak in armatures with no bones
Sergey Sharybin [Mon, 1 Apr 2019 14:09:26 +0000 (16:09 +0200)]
Fix memory leak in armatures with no bones

The cleanup operation was never run for such armatures.

17 months agoCleanup: Spelling
Sergey Sharybin [Mon, 1 Apr 2019 13:33:09 +0000 (15:33 +0200)]
Cleanup: Spelling

17 months agoTweak behavior of object.to_mesh()
Sergey Sharybin [Wed, 27 Mar 2019 21:28:44 +0000 (22:28 +0100)]
Tweak behavior of object.to_mesh()

- Passing original object with apply_modifiers=false will give a
  non-modified non-deformed mesh.
  The result mesh will point to datablocks from the original "domain". For
  example, materials will be original.

- Passing original object with apply_modifiers=true will give a mesh which
  has all modifiers applied.
  The result mesh will point to datablocks from the original "domain". For
  example, materials will be original.

- Passing evaluated object will ignore apply_modifiers argument, and the
  result always contains all modifiers applied.
  The result mesh will point to an evaluated datablocks. For example,
  materials will be an evaluated IDs from the dependency graph.

Fixes T62916: Applying boolean modifier does not set material properly

Differential Revision:

17 months agoModifiers: Proper fix for the Apply Modifier
Sergey Sharybin [Tue, 26 Mar 2019 10:39:11 +0000 (11:39 +0100)]
Modifiers: Proper fix for the Apply Modifier

It is up to the operator to pass valid object to the modifiers

Fixes T62916: Applying boolean modifier does not set materials properly

17 months agoModifiers: Use object passed to evaluation
Sergey Sharybin [Tue, 26 Mar 2019 10:25:07 +0000 (11:25 +0100)]
Modifiers: Use object passed to evaluation

This was wrong and violating design to force modifiers to query
evaluated objects and IDs. It is up to the caller to make sure
the object is properly evaluatable.

Effectively, reverting changes from de491abf9962 (and possibly
other related changes).

17 months agoFix T62960: Expanding/Closing Constraints/Modifiers causes re-render
Sergey Sharybin [Mon, 1 Apr 2019 08:22:06 +0000 (10:22 +0200)]
Fix T62960: Expanding/Closing Constraints/Modifiers causes re-render

Mark specific properties as no-dependency-graph tag.

This is needed to avoid a centralized Copy-on-Write tag from RNA
pointer update.

17 months agoRemove evaluated RNA pointer lookup in interface
Sergey Sharybin [Mon, 1 Apr 2019 08:18:07 +0000 (10:18 +0200)]
Remove evaluated RNA pointer lookup in interface

Since there is a flush of evaluated values back to the original
for an active dependency graph we don't need this lookup anymore.

Not only it slows interface drawing down, but also is becoming
in a way of the upcoming fix.

17 months agoFix T63071: Bevel inconsistent results toggling harden_normals.
Howard Trickey [Mon, 1 Apr 2019 11:58:34 +0000 (07:58 -0400)]
Fix T63071: Bevel inconsistent results toggling harden_normals.

Some iterations in bevel were over a hash table, which leads
to possibly different results run-to-run, especially when
loop_slide is enabled. Changed those iters to go over all verts
of BMesh, which leads to consistent order run-to-run.

17 months agoFix T63169: 'Duplicate Current' entry in new workspace menu is not translated.
Bastien Montagne [Mon, 1 Apr 2019 09:30:44 +0000 (11:30 +0200)]
Fix T63169: 'Duplicate Current' entry in new workspace menu is not translated.

17 months agoGPencil: Redesign soft eraser logic
Antonioya [Mon, 1 Apr 2019 09:24:03 +0000 (11:24 +0200)]
GPencil: Redesign soft eraser logic

The old logic was working if the eraser was moved towards the end of the stroke, but got ugly results when the eraser was done towards the start of the stroke.

17 months agoGPencil: Remove low limit for soft eraser
Antonioya [Sun, 31 Mar 2019 18:30:54 +0000 (20:30 +0200)]
GPencil: Remove low limit for soft eraser

The low limit was not needed in the loop.

17 months agoFix T62996
Richard Antalik [Sun, 31 Mar 2019 21:52:47 +0000 (14:52 -0700)]
Fix T62996

    Brecht Van Lommel (brecht)
    Clément Foucault (fclem)

Differential revision:

17 months agoFix: Buffer overflow in StudioLight
Ray Molenkamp [Sun, 31 Mar 2019 19:45:13 +0000 (13:45 -0600)]
Fix: Buffer overflow in StudioLight

sl->light_ambient is a float[3], copy_v4_fl4 overwrites sl->free_function with a bogus
pointer on 32 bit.

17 months agoI18n messages extraction: add 'generic' handling of Tools.
Bastien Montagne [Sun, 31 Mar 2019 16:49:11 +0000 (18:49 +0200)]
I18n messages extraction: add 'generic' handling of Tools.

17 months ago18N for tools definitions: make them resilient to None context.
Bastien Montagne [Sun, 31 Mar 2019 16:43:14 +0000 (18:43 +0200)]
18N for tools definitions: make them resilient to None context.

Dynamic callbacks generating lists of tools should accept None context,
not crash on it.

Similar to what we do with dynamic RNA enums, when NULL/None context is
given, assume we are in 'introspection' mode and return as many things
as possible.

This is currently essentially used by i18n messages extraction tool
(where getting all possible entries is kind of mandatory ;) ).

Also add some initial missing tranlations for complex cases that cannot
be automated, there'll likely be more of that kind...

17 months agoFix/Cleanup bad usage of RNA_def_parameter_clear_flags() on RNA properties.
Bastien Montagne [Sun, 31 Mar 2019 14:48:39 +0000 (16:48 +0200)]
Fix/Cleanup bad usage of RNA_def_parameter_clear_flags() on RNA properties.

17 months agoFix T63137: crash pressing enter to confirm menu, after recent changes.
Brecht Van Lommel [Sat, 30 Mar 2019 19:30:35 +0000 (20:30 +0100)]
Fix T63137: crash pressing enter to confirm menu, after recent changes.

17 months agoCleanup: remove unused modifier methods.
Brecht Van Lommel [Sat, 30 Mar 2019 18:16:44 +0000 (19:16 +0100)]
Cleanup: remove unused modifier methods.

17 months agoGPencil: Uses same random seed for render in Noise modifier
Antonioya [Sat, 30 Mar 2019 16:06:49 +0000 (17:06 +0100)]
GPencil: Uses same random seed for render in Noise modifier

As the random seed was calculated in the copy data, the render could be a little different. Now, the data is saved in the original data.

17 months agoGPencil: Fix segment fault when use F3 search menu.
Author Name [Sat, 30 Mar 2019 15:03:39 +0000 (16:03 +0100)]
GPencil: Fix segment fault when use F3 search menu.

Author of the patch: Robert Guetzkow (@rjg)

17 months agoGPencil: Improve soft eraser for low pressure strokes
Antonioya [Sat, 30 Mar 2019 09:43:52 +0000 (10:43 +0100)]
GPencil: Improve soft eraser for low pressure strokes

For very thin strokes with low pressure, the low limit value was too high.

17 months agoFix T63086: Navigation problem with Background/Reference Images
Sebastian Parborg [Sat, 30 Mar 2019 07:21:09 +0000 (08:21 +0100)]
Fix T63086: Navigation problem with Background/Reference Images

The issue was the manipulated depth for images would be used when doing distance depth checks.
Now we will use the actual depth of the image object when doing such tests.

Reviewed By: Clément Foucault

Differential Revision:

17 months agoFix T63115 crash upon switching to textured/rendered mode
Clément Foucault [Sat, 30 Mar 2019 03:20:25 +0000 (04:20 +0100)]
Fix T63115 crash upon switching to textured/rendered mode

17 months agoUI: Icons update
William Reynish [Sat, 30 Mar 2019 00:02:15 +0000 (01:02 +0100)]
UI: Icons update

New icons from Andrzej Ambroż / jendrzych:
-Adds separate icons for 3D Cursor orientation and pivot
Also, many dozens of tweaks and updates - too many to mention here.
Full list is on Devtalk

17 months agoCleanup: style, use braces for the Python API
Campbell Barton [Fri, 29 Mar 2019 19:12:48 +0000 (06:12 +1100)]
Cleanup: style, use braces for the Python API

17 months agoCleanup: style
Campbell Barton [Fri, 29 Mar 2019 20:13:55 +0000 (07:13 +1100)]
Cleanup: style

17 months agoEevee: Material: Decouple transparent shadows from blend mode
Clément Foucault [Fri, 29 Mar 2019 18:18:08 +0000 (19:18 +0100)]
Eevee: Material: Decouple transparent shadows from blend mode

This makes it easier to exclude a surface from casting shadows and can be
used to manipulate the shadows even for opaque surfaces.

Versionning ensure that old behavior is transfered to new rendering logic.

17 months agoFix T61129 Eevee: alpha texture shadow bug
Clément Foucault [Fri, 29 Mar 2019 17:59:11 +0000 (18:59 +0100)]
Fix T61129 Eevee: alpha texture shadow bug

This was due to some shading resources not being bound for the shadow
shader. This commit completely remove the shading part when in a shadow
shader. Thus making it a bit more lightweight and removing the needed

17 months agoFix cramped display of tool setting enums in workspace tab.
Brecht Van Lommel [Fri, 29 Mar 2019 16:53:56 +0000 (17:53 +0100)]
Fix cramped display of tool setting enums in workspace tab.

17 months agoFix part of T63102: wrong Python API Reference link in Help menu.
Brecht Van Lommel [Fri, 29 Mar 2019 16:34:16 +0000 (17:34 +0100)]
Fix part of T63102: wrong Python API Reference link in Help menu.

17 months agoFix header text for muted collapsed nodes not being greyed out.
Brecht Van Lommel [Fri, 29 Mar 2019 14:51:36 +0000 (15:51 +0100)]
Fix header text for muted collapsed nodes not being greyed out.

17 months agoEevee: Implement Texture coordinate from object
Clément Foucault [Fri, 29 Mar 2019 16:40:50 +0000 (17:40 +0100)]
Eevee: Implement Texture coordinate from object

First try to implement T57489. But unfortunately, there is a missing
dependency in the depsgraph that does not trigger the shader update.

17 months agoCleanup: Line wrapping
Sergey Sharybin [Fri, 29 Mar 2019 14:40:59 +0000 (15:40 +0100)]
Cleanup: Line wrapping

17 months agoGPencil: Improve soft eraser for last stroke points
Antonioya [Fri, 29 Mar 2019 14:39:29 +0000 (15:39 +0100)]
GPencil: Improve soft eraser for last stroke points

Now, the last point is managed separately in order to get smoother transition.

17 months agoCleanup: Spelling in comment
Sergey Sharybin [Fri, 29 Mar 2019 14:33:44 +0000 (15:33 +0100)]
Cleanup: Spelling in comment

17 months agoFix T63042: Grease pencil and armature will sometimes copy successfully because of...
Bastien Montagne [Fri, 29 Mar 2019 13:54:50 +0000 (14:54 +0100)]
Fix T63042: Grease pencil and armature will sometimes copy successfully because of the put in Collection order, sometimes fail.

Remove remapping to new IDs from `BKE_object_duplicate()` itself, doing
it here will break later remapping done after all desired objects have
been duplicated, preventing complete remap of ID pointers used in obdata
and other sub-data of duplicated objects.

Checked, the only two usages of this function were already doing
separated later step for this anyway.

17 months agoCleanup: BKE_object_duplicate.
Bastien Montagne [Fri, 29 Mar 2019 13:53:45 +0000 (14:53 +0100)]
Cleanup: BKE_object_duplicate.

Comments, code consistency, remove disabled code...

17 months agoCleanup: Fix comment.
Bastien Montagne [Thu, 28 Mar 2019 14:20:58 +0000 (15:20 +0100)]
Cleanup: Fix comment.

17 months agoFix T63075: edit mode crash with deforming modifiers, after recent changes.
Brecht Van Lommel [Fri, 29 Mar 2019 13:53:56 +0000 (14:53 +0100)]
Fix T63075: edit mode crash with deforming modifiers, after recent changes.

17 months agoGPencil: Cleanup code
Antonioya [Fri, 29 Mar 2019 11:51:46 +0000 (12:51 +0100)]
GPencil: Cleanup code

Reduce double function calling.

17 months agoFix T63082: Outliner allows assign grease pencil materials to mesh
Antonioya [Fri, 29 Mar 2019 10:58:28 +0000 (11:58 +0100)]
Fix T63082: Outliner allows assign grease pencil materials to mesh

The grease pencil materials only can be assigned to objects of grease pencil type.

17 months agoFix T62938: Rigid body crash with surface effector
Sergey Sharybin [Fri, 29 Mar 2019 09:27:57 +0000 (10:27 +0100)]
Fix T62938: Rigid body crash with surface effector

Missing dependency graph relation from geometry to simulation,
which made simulation to use evaluated mesh while it is being

17 months agoCleanup: Make it obvious which relations are used
Sergey Sharybin [Fri, 29 Mar 2019 09:21:36 +0000 (10:21 +0100)]
Cleanup: Make it obvious which relations are used

Relation in dependency graph is something else. So make it clear
that those are the effector ones.

17 months agoFix T62908: Missing update when inserting keyframe from dopesheet
Sergey Sharybin [Fri, 29 Mar 2019 09:01:55 +0000 (10:01 +0100)]
Fix T62908: Missing update when inserting keyframe from dopesheet

17 months agoFix T63063: solidify modifier crash after recent changes.
Brecht Van Lommel [Fri, 29 Mar 2019 00:27:58 +0000 (01:27 +0100)]
Fix T63063: solidify modifier crash after recent changes.

It should not assume there to be an origindex layer. Checked other modifiers
and they all seem to explicitly create it or verify if it's NULl.

17 months agoCycles: reduce number of synchronizing object prints.
Brecht Van Lommel [Fri, 29 Mar 2019 00:29:42 +0000 (01:29 +0100)]
Cycles: reduce number of synchronizing object prints.

Do it only for meshes/curves since those are potentially slow and need user
feedback to see things are not stuck. For object instances and lights assume
it's fast enough.

Printing too much can have a performance impact on slow Windows command
prompt or when logging complex scene renders.

17 months agoBuild environment: update comment about required packages.
Brecht Van Lommel [Thu, 28 Mar 2019 23:39:19 +0000 (00:39 +0100)]
Build environment: update comment about required packages.

17 months agoEevee: Render: Reduce debug print amount to not decrease perf
Clément Foucault [Thu, 28 Mar 2019 22:24:25 +0000 (23:24 +0100)]
Eevee: Render: Reduce debug print amount to not decrease perf

This is to fix the slowdown issue experienced on windows when rendering
from command line.

Fix T59649 Eevee in command-line batch mode is slow with particles/duplis

17 months agoGPU: Fix color difference when rendering to gpu_py_offscreen
Clément Foucault [Thu, 28 Mar 2019 21:38:55 +0000 (22:38 +0100)]
GPU: Fix color difference when rendering to gpu_py_offscreen

Now we do the color management inside the Draw manager and output CM byte