blender.git
5 months agoMerge branch 'blender2.7'
Brecht Van Lommel [Wed, 9 Jan 2019 16:20:58 +0000 (17:20 +0100)]
Merge branch 'blender2.7'

5 months agoBuild Environment: install clang-format for macOS / Linux.
Brecht Van Lommel [Wed, 9 Jan 2019 15:53:57 +0000 (16:53 +0100)]
Build Environment: install clang-format for macOS / Linux.

It's already there for Windows.

5 months agoFix Cycles viewport render doing some unnecessary work at the start.
Brecht Van Lommel [Wed, 9 Jan 2019 15:57:01 +0000 (16:57 +0100)]
Fix Cycles viewport render doing some unnecessary work at the start.

In some cases it would load adaptive kernels or even start rendering
twice because the first time the scene was not fully synced yet.

5 months agoFix T60300, T57774: Cycles OpenCL viewport crash with subsurface scattering.
Brecht Van Lommel [Wed, 9 Jan 2019 15:38:04 +0000 (16:38 +0100)]
Fix T60300, T57774: Cycles OpenCL viewport crash with subsurface scattering.

5 months agoFix T60351: Blender crashes when using fill tool without existent keyframe
Antonioya [Wed, 9 Jan 2019 15:39:07 +0000 (16:39 +0100)]
Fix T60351: Blender crashes when using fill tool without existent keyframe

5 months agoRevert/Redo ugly rBd12b3767f81d commit (i.e. add locked sorting option to UIList).
Bastien Montagne [Wed, 9 Jan 2019 14:48:09 +0000 (15:48 +0100)]
Revert/Redo ugly rBd12b3767f81d commit (i.e. add locked sorting option to UIList).

Too many things done wrong in original rBd12b3767f81d to list them all
here, hopefully nothing bad sneaked in again this time :|

Also cleaned up a little the 'sort by name', even though (since we only
have two options by default, sort by index and by name) we can abuse it
as a binary option for now, this is not a bitflag...

5 months agoFix T60324: node linking UI bugs with some shader nodes.
Brecht Van Lommel [Wed, 9 Jan 2019 13:33:17 +0000 (14:33 +0100)]
Fix T60324: node linking UI bugs with some shader nodes.

5 months agoFix T60244: Bisect in mirror modifier doesn't work properly.
Bastien Montagne [Wed, 9 Jan 2019 10:36:00 +0000 (11:36 +0100)]
Fix T60244: Bisect in mirror modifier doesn't work properly.

That was indeed not working properly, not at all. Except for
the basic case, but as soon as you used another object to define the
mirror plane, it would be utterly broken, in several different ways!

5 months agoMerge branch 'blender2.7'
Sergey Sharybin [Wed, 9 Jan 2019 11:56:50 +0000 (12:56 +0100)]
Merge branch 'blender2.7'

5 months agoCycles: Add utility to dump BVH tree as graphviz file
Sergey Sharybin [Tue, 8 Jan 2019 17:17:21 +0000 (18:17 +0100)]
Cycles: Add utility to dump BVH tree as graphviz file

5 months agoCycles: Make BVH wider prior to packing
Sergey Sharybin [Tue, 8 Jan 2019 17:10:32 +0000 (18:10 +0100)]
Cycles: Make BVH wider prior to packing

This allows to do more non-trivial tree modifications to make
it more dense and more friendly for vectorization.

5 months agoFix T60342: exception when creating cycles integrator or sampling preset
Jacques Lucke [Wed, 9 Jan 2019 10:58:48 +0000 (11:58 +0100)]
Fix T60342: exception when creating cycles integrator or sampling preset

5 months agoFix T60338: Allow user to input units of another system
Jacques Lucke [Wed, 9 Jan 2019 09:39:31 +0000 (10:39 +0100)]
Fix T60338: Allow user to input units of another system

5 months agoFix T55336: Crash w/ dyntopo sculpt
Campbell Barton [Wed, 9 Jan 2019 09:25:12 +0000 (20:25 +1100)]
Fix T55336: Crash w/ dyntopo sculpt

5 months agoUndo System: apply accumulation steps
Campbell Barton [Wed, 9 Jan 2019 09:21:24 +0000 (20:21 +1100)]
Undo System: apply accumulation steps

Apply steps between the active and the undo state being decoded.

5 months agoFix sculpt redo failing to enable dyntopo
Campbell Barton [Wed, 9 Jan 2019 07:08:14 +0000 (18:08 +1100)]
Fix sculpt redo failing to enable dyntopo

5 months agoFix memfile undo decoding creating undo steps
Campbell Barton [Wed, 9 Jan 2019 05:53:44 +0000 (16:53 +1100)]
Fix memfile undo decoding creating undo steps

Exiting modes shouldn't be needed since loading the new memfile
will free the old data.

Sculpt mode dynamic topology was adding undo data on exiting the mode
which isn't logical in this case and can be avoided altogether.

5 months agoFix T59165: Text operations fail to undo
Campbell Barton [Wed, 9 Jan 2019 03:07:35 +0000 (14:07 +1100)]
Fix T59165: Text operations fail to undo

Some undo operations encode multiple actions, now all are undone/redone.

5 months agoAvoid assert w/ recent sculpt changes on undo
Campbell Barton [Wed, 9 Jan 2019 02:25:23 +0000 (13:25 +1100)]
Avoid assert w/ recent sculpt changes on undo

5 months agoFix swapped active/selected lattice vertex color
Campbell Barton [Wed, 9 Jan 2019 02:09:03 +0000 (13:09 +1100)]
Fix swapped active/selected lattice vertex color

5 months agoUI: use keymap introspection for tooltip creation
Campbell Barton [Wed, 9 Jan 2019 01:27:58 +0000 (12:27 +1100)]
UI: use keymap introspection for tooltip creation

Also support non existing keymap items which gave an error, see: T60335

5 months agoWM: add keymap.find_from_operator(...)
Campbell Barton [Wed, 9 Jan 2019 01:26:10 +0000 (12:26 +1100)]
WM: add keymap.find_from_operator(...)

5 months agoFix IS_EVENT_ACTIONZONE macro
Campbell Barton [Wed, 9 Jan 2019 01:22:32 +0000 (12:22 +1100)]
Fix IS_EVENT_ACTIONZONE macro

Caused tweak events not to display.

5 months agoAssert: add check to last commit
Campbell Barton [Tue, 8 Jan 2019 23:32:02 +0000 (10:32 +1100)]
Assert: add check to last commit

5 months agoObject Mode: only toggle active object mode once
Campbell Barton [Tue, 8 Jan 2019 23:16:51 +0000 (10:16 +1100)]
Object Mode: only toggle active object mode once

- When toggling a mode that doesn't support multi editing
  only do this once of the active object.

- For sculpt mode create sculpt data since this is needed
  for activating other sculpt objects on reload.

5 months agoFix T60044: Sculpting brush is not visible
Campbell Barton [Tue, 8 Jan 2019 22:06:59 +0000 (09:06 +1100)]
Fix T60044: Sculpting brush is not visible

Same logic as fix from D4153, but only applied when running undo.

5 months agoRevert "Fix T60044: Sculpting brush is not visible on file load"
Dalai Felinto [Tue, 8 Jan 2019 20:31:36 +0000 (18:31 -0200)]
Revert "Fix T60044: Sculpting brush is not visible on file load"

This reverts commit 4d8ed937f226f4cdfa6f62fde5306b14c217e9c5.

An alternative fix will come soon as a patch, since this introduced an issue.
Rolling back since the original fix (sculpt cursor on load) is less important
than the issue it introduced (crash on weight paint undo/redo).

Fix T60322.

5 months agoFix T60327: Value input with adaptive imperial units not working properly
Jacques Lucke [Tue, 8 Jan 2019 18:20:22 +0000 (19:20 +0100)]
Fix T60327: Value input with adaptive imperial units not working properly

5 months agoFix inconsistent naming and behavior for base visible/selected/editable.
Brecht Van Lommel [Tue, 8 Jan 2019 17:19:12 +0000 (18:19 +0100)]
Fix inconsistent naming and behavior for base visible/selected/editable.

Fixes T60251.

5 months agoFix T60320: Cycles OpenCL volume rendering error on some drivers.
Brecht Van Lommel [Tue, 8 Jan 2019 14:50:14 +0000 (15:50 +0100)]
Fix T60320: Cycles OpenCL volume rendering error on some drivers.

5 months agoFix T60300: Cycles SSS render hanging with AMD OpenCL.
Brecht Van Lommel [Tue, 8 Jan 2019 14:35:54 +0000 (15:35 +0100)]
Fix T60300: Cycles SSS render hanging with AMD OpenCL.

5 months agoQuick Explode: replace BI based material handling (using 'fade'/'blend')
Philipp Oeser [Mon, 7 Jan 2019 14:42:46 +0000 (15:42 +0100)]
Quick Explode: replace BI based material handling (using 'fade'/'blend')

using a simple shader graph mixing Transparent BSDF now

Fixes T59185

Reviewers: brecht

Maniphest Tasks: T59185

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

5 months agoQuick Explode: use keyword argument
Philipp Oeser [Mon, 7 Jan 2019 12:04:39 +0000 (13:04 +0100)]
Quick Explode: use keyword argument

5 months agoFix T56545: Material referencing missing UV crash
Campbell Barton [Tue, 8 Jan 2019 14:04:28 +0000 (01:04 +1100)]
Fix T56545: Material referencing missing UV crash

5 months agoFix T58479: Quick Favorites Lets you add multiple of the same item
Philipp Oeser [Fri, 28 Dec 2018 13:57:34 +0000 (14:57 +0100)]
Fix T58479: Quick Favorites Lets you add multiple of the same item

Reviewers: brecht

Maniphest Tasks: T58479

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

5 months agoFix T60314: Missing strength w/ weight gradient
Campbell Barton [Tue, 8 Jan 2019 12:46:55 +0000 (23:46 +1100)]
Fix T60314: Missing strength w/ weight gradient

5 months agoTypo fixes
Joshua Leung [Fri, 4 Jan 2019 02:02:41 +0000 (15:02 +1300)]
Typo fixes

5 months agoFix T59984: Drivers don't update values in UI or show proper errors
Joshua Leung [Fri, 4 Jan 2019 01:57:09 +0000 (14:57 +1300)]
Fix T59984: Drivers don't update values in UI or show proper errors

We now perform COW -> original data flushing for all the debug values + error
status flags on Drivers/DriverVariables/DriverTargets, as these are only set
when errors are encountered when evaluating drivers.

5 months agoFix T59450: brush colors flip inactive w/ texture paint
Campbell Barton [Tue, 8 Jan 2019 12:24:38 +0000 (23:24 +1100)]
Fix T59450: brush colors flip inactive w/ texture paint

5 months agoFix T60263: render layer node sockets not showing on file load, for some files.
Brecht Van Lommel [Tue, 8 Jan 2019 12:21:39 +0000 (13:21 +0100)]
Fix T60263: render layer node sockets not showing on file load, for some files.

5 months agoFix T60291: Wrong tooltip in for Add Cube tool
Jacques Lucke [Tue, 8 Jan 2019 11:24:45 +0000 (12:24 +0100)]
Fix T60291: Wrong tooltip in for Add Cube tool

5 months agoFix T60306: Circle select tool behaves like a mode
Campbell Barton [Tue, 8 Jan 2019 11:14:09 +0000 (22:14 +1100)]
Fix T60306: Circle select tool behaves like a mode

5 months agoProperly clean up Python when exiting due to --python-exit-code
Sybren A. Stüvel [Tue, 8 Jan 2019 11:00:18 +0000 (12:00 +0100)]
Properly clean up Python when exiting due to --python-exit-code

When BPY_python_end() is not called, there can be buffered data still in
`sys.stdout` or `sys.stderr`. This generally isn't an issue when those are
connected to a terminal, but when they are read by another process (in the case
of rendering with Flamenco, for example) we could miss the actual error message
that's causing the exit in the first place.

The following script demonstrates the issue; before this commit neither the
writes to STDERR and STDOUT nor the traceback of the NameError were shown.

    #!/bin/bash

    cat > file-with-errors.py <<EOT
    import sys
    print('THIS IS STDERR', file=sys.stderr)
    print('THIS IS STDOUT', file=sys.stdout)
    nonexisting.monkey = 3
    EOT

    blender --enable-autoexec -noaudio --background \
any-existing-blendfile.blend \
--python-exit-code 42 \
--python file-with-errors.py 2>&1 | cat

Reviewers: campbellbarton, mont29

Reviewed By: campbellbarton, mont29

Subscribers: fsiddi

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

5 months agoMerge branch 'blender2.7'
Sergey Sharybin [Tue, 8 Jan 2019 10:47:35 +0000 (11:47 +0100)]
Merge branch 'blender2.7'

5 months agoMake DNA and RNA errors more meaningful and friendly
Sergey Sharybin [Tue, 8 Jan 2019 10:43:15 +0000 (11:43 +0100)]
Make DNA and RNA errors more meaningful and friendly

5 months agofix rotational limits not showing for GENERIC ridgid body constraint
Philipp Oeser [Tue, 8 Jan 2019 09:20:53 +0000 (10:20 +0100)]
fix rotational limits not showing for GENERIC ridgid body constraint

oversight in rB502aabb9d0c5

part of T60290

5 months agoFix workbench shading pie menu
Campbell Barton [Tue, 8 Jan 2019 06:17:52 +0000 (17:17 +1100)]
Fix workbench shading pie menu

Expand the enum since it's dynamic, depending on the render engine.

5 months agoVertex Paint: support vertex masking
Philipp Oeser [Tue, 8 Jan 2019 04:15:35 +0000 (15:15 +1100)]
Vertex Paint: support vertex masking

Working in 2.7x, was just disabled in 2.8x.

Fixes T60256

5 months agoCleanup: comments causing bad clang-format output
Campbell Barton [Mon, 7 Jan 2019 23:28:20 +0000 (10:28 +1100)]
Cleanup: comments causing bad clang-format output

5 months agoFix T60167: wrong shader nodes in Eevee add menu.
Brecht Van Lommel [Mon, 7 Jan 2019 16:32:40 +0000 (17:32 +0100)]
Fix T60167: wrong shader nodes in Eevee add menu.

5 months agoFix bad enum value since 299ff7dcd13
Sergey Sharybin [Mon, 7 Jan 2019 16:18:33 +0000 (17:18 +0100)]
Fix bad enum value since 299ff7dcd13

This is why out-sourcing things to a production-tested formatters
is a very very good idea.

5 months agoSubdiv: Use defined order of corner/edge vertices
Sergey Sharybin [Mon, 7 Jan 2019 16:08:54 +0000 (17:08 +0100)]
Subdiv: Use defined order of corner/edge vertices

This switches evaluation of vertices which are on the boundaries
of PTex faces to a single threaded one. While this introduces
some slowdown it fixes ambiguity of PTex index used to evaluate
particular vertex.

Possible alternative solutions would be:
- Do some pre-calculation of index, then do evaluation in threads.
- Try using Gregory patches and see if that makes any affect.

Fix T60235: Flickering of object instances

5 months agoSubdiv: Move single threaded code to a single function
Sergey Sharybin [Mon, 7 Jan 2019 14:34:59 +0000 (15:34 +0100)]
Subdiv: Move single threaded code to a single function

Allows to more easily add more passes which are supposed to be run
from a single thread.

5 months agoSubdiv: Cleanup, de-duplicate code
Sergey Sharybin [Mon, 7 Jan 2019 14:31:09 +0000 (15:31 +0100)]
Subdiv: Cleanup, de-duplicate code

5 months agoGP: Hide Options and Curves popovers for Fill brushes
Antonioya [Mon, 7 Jan 2019 15:22:20 +0000 (16:22 +0100)]
GP: Hide Options and Curves popovers for Fill brushes

5 months agoFix missing updates when muting/soloing/reordering NLA tracks.
Alexander Gavrilov [Mon, 7 Jan 2019 14:33:47 +0000 (17:33 +0300)]
Fix missing updates when muting/soloing/reordering NLA tracks.

5 months agoCleanup: corrections to last commit
Campbell Barton [Mon, 7 Jan 2019 14:00:40 +0000 (01:00 +1100)]
Cleanup: corrections to last commit

5 months agoCleanup: move DNA comments before struct members
Campbell Barton [Mon, 7 Jan 2019 11:19:13 +0000 (22:19 +1100)]
Cleanup: move DNA comments before struct members

Needed for clang-format in some cases, see: T53211

5 months agoCleanup: fix typo.
Bastien Montagne [Mon, 7 Jan 2019 13:04:23 +0000 (14:04 +0100)]
Cleanup: fix typo.

5 months agoFix T59151 Bevel modifier has bad input width for percent.
Howard Trickey [Mon, 7 Jan 2019 12:29:54 +0000 (07:29 -0500)]
Fix T59151 Bevel modifier has bad input width for percent.

The units scaling was inappropriate when the bevel value was
to be interpreted as a percent, so added a separate rna property
for "Width Percent" and made UI show the width appropriate for
current offset_type.

5 months agoOpenSundiv: Simplify tweaking of shared stencil/patch settings
Sergey Sharybin [Mon, 7 Jan 2019 09:29:48 +0000 (10:29 +0100)]
OpenSundiv: Simplify tweaking of shared stencil/patch settings

5 months agoFix T60247: app.handlers.undo_post calls undo_pre's function.
Bastien Montagne [Mon, 7 Jan 2019 08:51:41 +0000 (09:51 +0100)]
Fix T60247: app.handlers.undo_post calls undo_pre's function.

Undo and redo post were actually calling respective pre funcs...

5 months agoCleanup: naming for return args
Campbell Barton [Mon, 7 Jan 2019 04:33:25 +0000 (15:33 +1100)]
Cleanup: naming for return args

5 months agoFix T58964: drivers_remove fails w/ missing paths
Campbell Barton [Mon, 7 Jan 2019 04:27:59 +0000 (15:27 +1100)]
Fix T58964: drivers_remove fails w/ missing paths

5 months agoPyAPI: Add AnimationData.drivers.new/remove methods
Campbell Barton [Mon, 7 Jan 2019 03:03:34 +0000 (14:03 +1100)]
PyAPI: Add AnimationData.drivers.new/remove methods

Low level functions to directly create and remove drivers,
use when high level functions aren't flexible enough, see: T58964.

5 months agoCleanup: tweak last commit
Campbell Barton [Mon, 7 Jan 2019 00:16:11 +0000 (11:16 +1100)]
Cleanup: tweak last commit

5 months agoFix generated toolbar keymap w/ annotation tool
Campbell Barton [Mon, 7 Jan 2019 00:00:46 +0000 (11:00 +1100)]
Fix generated toolbar keymap w/ annotation tool

5 months agoFix T59944: Template operator_mesh_uv.py fails
Sebastian Parborg [Sun, 6 Jan 2019 23:20:20 +0000 (10:20 +1100)]
Fix T59944: Template operator_mesh_uv.py fails

5 months agoBetter bevel normal hardening when some faces were smooth.
Howard Trickey [Sun, 6 Jan 2019 23:12:00 +0000 (18:12 -0500)]
Better bevel normal hardening when some faces were smooth.

Harden normals causes normal splitting, which will not give the
appearance expected due to autosmooth unless some edges are sharpened,
so this change fixes that. Also bevel tool will turn on autosmooth
if not already on if hardening normals.

5 months agoCleanup: add trailing commas to structs
Campbell Barton [Sun, 6 Jan 2019 13:58:10 +0000 (00:58 +1100)]
Cleanup: add trailing commas to structs

5 months agoCorrect error in recent button type check
Campbell Barton [Sun, 6 Jan 2019 22:12:14 +0000 (09:12 +1100)]
Correct error in recent button type check

5 months agoUI: Use grid-flow layout throughout Preferences
William Reynish [Sun, 6 Jan 2019 20:51:07 +0000 (21:51 +0100)]
UI: Use grid-flow layout throughout Preferences

Makes the entire Preferences UI nicely width responsive. Also, move
use_tabs_as_spaces option back to file path options, it was too lonely
in its own panel ;)

5 months agoFix typo.
Bastien Montagne [Sun, 6 Jan 2019 17:21:57 +0000 (18:21 +0100)]
Fix typo.

5 months agoGP: Fix missing initialization converting 2.7 files
Antonioya [Sun, 6 Jan 2019 16:22:03 +0000 (17:22 +0100)]
GP: Fix missing initialization converting 2.7 files

5 months agoFix T60213: crash loading .blend file with material override.
Brecht Van Lommel [Sun, 6 Jan 2019 14:22:47 +0000 (15:22 +0100)]
Fix T60213: crash loading .blend file with material override.

5 months agoUI: tweaks to user preferences layout.
Brecht Van Lommel [Sun, 6 Jan 2019 11:56:18 +0000 (12:56 +0100)]
UI: tweaks to user preferences layout.

* Expand more sub-panels by default.
* Move release confirms and numeric input settings to Input.
* Move 3D cursor settings to Editing.
* Move region overlap to Interface.

5 months agoCleanup: add trailing commas to structs
Campbell Barton [Sun, 6 Jan 2019 13:06:58 +0000 (00:06 +1100)]
Cleanup: add trailing commas to structs

Needed for clang formatting to workaround bug/limit, see: T53211

5 months agoobject.dimensions: add warning about multiple consecutive assignments.
Bastien Montagne [Sun, 6 Jan 2019 12:11:31 +0000 (13:11 +0100)]
object.dimensions: add warning about multiple consecutive assignments.

Since this is API-only prop now, it's worth warning about that
limitation.

Follow-up to comments in rB9c928bb93e04.

5 months agoFix T60187: Latest couple of builds fail to run, need libGLX.so.0
Sergey Sharybin [Sun, 6 Jan 2019 10:51:38 +0000 (11:51 +0100)]
Fix T60187: Latest couple of builds fail to run, need libGLX.so.0

5 months agoUI: tweak preferences
Campbell Barton [Sun, 6 Jan 2019 09:41:03 +0000 (20:41 +1100)]
UI: tweak preferences

- Move author to save&load
  (was incorrectly under text editor).
- Rename Memory -> Memory/Limits
  (some of the settings aren't obviously todo with memory).

5 months agoCleanup: style, line length
Campbell Barton [Sun, 6 Jan 2019 09:26:08 +0000 (20:26 +1100)]
Cleanup: style, line length

5 months agofix T59743: Collada exporter: Add option for exporting flat curves
Gaia Clary [Sat, 5 Jan 2019 20:36:28 +0000 (21:36 +0100)]
fix T59743: Collada exporter: Add option for exporting flat curves

The Collada exporter suppresses the export of flat animation curves
to optimize the animation (in fact to make the exported file smaller).

But sometimes it is important to also have the flat curves exported
because they may be needed to define an initial transformation to
a fixed location - like translating the weapon from the ground floor
to the back of the model in the report.

I added a new option "all keyed curves" which is disabled by default
but when enabled it also exports flat curves.

feedback is very welcome

5 months agoCorrect version patching of Preferences theme
Julian Eisel [Sat, 5 Jan 2019 18:43:09 +0000 (19:43 +0100)]
Correct version patching of Preferences theme

In a77b63c56943eb, the Preferences navigation region background was
made brighter. Recently stored userpref.blends (since b00963afc14978b,
so beta release included) would still use the slightly darker
background for the Preferences navigation region.
Now the version patch added for a77b63c56943eb also sets the new color
for those recent configs.

5 months agofix T60092 collada exporter: exporting a rig with one single bone fails
Gaia Clary [Sat, 5 Jan 2019 17:03:49 +0000 (18:03 +0100)]
fix T60092 collada exporter: exporting a rig with one single bone fails

The problem was that removing entries from a vetor while iterating
the vector was implemented badly. This caused the failure when only
one element was in vector.

5 months agoFix T60183: Images as Planes (addon) Attribute Error.
Bastien Montagne [Sat, 5 Jan 2019 15:33:38 +0000 (16:33 +0100)]
Fix T60183: Images as Planes (addon) Attribute Error.

Partially revert rB1b8c3774a86ebc04fceb9cd, there is no good reason to
make object.dimensions read-only, it works perfectly well from python
API! Only breaking case was that weird multi-editing UI feature, due to
how it sets things. But RNA setter itself works fine, and it's a handy
shortcut/helper for scripts.

Also when breaking API, it is good practivce to at least check official
add-ons...

5 months agoTheme: update
Campbell Barton [Sat, 5 Jan 2019 10:32:38 +0000 (21:32 +1100)]
Theme: update

5 months agoUI: length now scales proportionally w/ multi-but
Campbell Barton [Sat, 5 Jan 2019 09:09:25 +0000 (20:09 +1100)]
UI: length now scales proportionally w/ multi-but

Use for object dimensions.

5 months agoCleanup: 3d view panel median value storage
Campbell Barton [Sat, 5 Jan 2019 01:18:02 +0000 (12:18 +1100)]
Cleanup: 3d view panel median value storage

5 months agoCleanup: avoid function call for pointer compare
Campbell Barton [Sat, 5 Jan 2019 08:55:25 +0000 (19:55 +1100)]
Cleanup: avoid function call for pointer compare

5 months agoNLA: rewrite evaluation channel data structures.
Alexander Gavrilov [Sat, 15 Dec 2018 13:09:27 +0000 (16:09 +0300)]
NLA: rewrite evaluation channel data structures.

Implementing a new intelligent mixing mode that combines quaternions
via multiplication requires rewriting the NLA code to recombine array
properties from separate scalar channels during evaluation.

In addition, stable evaluation of NLA stack requires that any channel
that is touched by any of the actions in the stack should always be
set to a definite value by evaluation, even if no strip affects it
at this point of the timeline. The obvious choice for the fallback
is the default value of the property.

To make scanning all actions reasonably efficient, mapping paths to
channels should be done using hash tables.

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

5 months agoUI: Preferences Redesign Part 2
Severin [Fri, 4 Jan 2019 20:40:16 +0000 (21:40 +0100)]
UI: Preferences Redesign Part 2

(Part 1 was 00963afc14978b)

Does the following changes visible to users:
* Use panels and sub-panels for more structured & logical grouping
* Re-organized options more logically than before (see images in D4148)
* Use flow layout (single column by default).
* New layout uses horizontal margin if there's enough space.
* Change size of Preferences window to suit new layout.
* Move keymap related options from "Input" into own section.
* Own, left-bottom aligned region for Save Preferences button.
* Adjustments of names, tooltips & icons.
* Move buttons from header into the main region (except editor switch).
* Hide Preferences header when opened in temporary window.
* Use full area width for header.
* Don't use slider but regular number widget for UI scale.
* Gray out animation player path option if player isn't "Custom"

Internal changes:
* Rearrange RNA properties to match changed UI structure.
* Introduces new "EXECUTE" region type, see reasoning in D3982.
* Changes to panel layout and AZone code for dynamic panel region.
* Bumps subversion and does versioning for new regions.

RNA changes are documented in the release notes:
https://wiki.blender.org/wiki/Reference/Release_Notes/2.80/Python_API/Preferences_API

Design & implementation mostly done by @billreynish and myself.
I recommend checking out the screenshots posted by William:
https://developer.blender.org/D4148#93787

Reviewed By: brecht

Maniphest Tasks: T54115

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

5 months agoGP: Add Fill keyframe if active not equal to CFRA
Antonioya [Fri, 4 Jan 2019 18:35:42 +0000 (19:35 +0100)]
GP: Add Fill keyframe if active not equal to CFRA

When fill a stroke if the fill layer hasn't keyframe, the fill is wrong because previous fill shape hide area to fill.

Now, if the keyframe is missing in the active layer for the current frame, a new frame is added.

5 months agoFix T57890: freestyle rendering crash.
Brecht Van Lommel [Fri, 4 Jan 2019 16:35:07 +0000 (17:35 +0100)]
Fix T57890: freestyle rendering crash.

Depsgraph objects are deleted after conversion to Freestyle data structures,
so don't keep a pointer to their name strings.

5 months agoFix T60157: Applying subdivide GP modifier gets wrong fill
Antonioya [Fri, 4 Jan 2019 16:18:03 +0000 (17:18 +0100)]
Fix T60157: Applying subdivide GP modifier gets wrong fill

The problem was the triangulation cache was not initializated.

5 months agoFix T58669, T59772: freestyle + EEVEE render not working.
Brecht Van Lommel [Fri, 4 Jan 2019 16:06:50 +0000 (17:06 +0100)]
Fix T58669, T59772: freestyle + EEVEE render not working.

5 months agoFix T59546: Grease Pencil Edit: Rotation around individual origins error
Antonioya [Fri, 4 Jan 2019 16:01:39 +0000 (17:01 +0100)]
Fix T59546: Grease Pencil Edit: Rotation around individual origins error

Thanks to Habib Gahbiche (@zazizizou) for helping fixing this bug. See D4156.

5 months agoFix T58692: splash screen next not working when using BLENDER_USER_CONFIG.
Brecht Van Lommel [Fri, 4 Jan 2019 15:24:11 +0000 (16:24 +0100)]
Fix T58692: splash screen next not working when using BLENDER_USER_CONFIG.

5 months agoDepsgraph: Fix missing relation from node tree to light
Sergey Sharybin [Fri, 4 Jan 2019 15:17:53 +0000 (16:17 +0100)]
Depsgraph: Fix missing relation from node tree to light

Was only happening when lamp had driver on the Light datablock.

Reported by Dalai Felinto in T60137.

5 months agoFix T60124: Multires modifier not reading data from external files
Sergey Sharybin [Fri, 4 Jan 2019 14:57:44 +0000 (15:57 +0100)]
Fix T60124: Multires modifier not reading data from external files

5 months agoSilence warning
Dalai Felinto [Fri, 4 Jan 2019 14:57:17 +0000 (12:57 -0200)]
Silence warning