blender.git
8 months agoBevel: remove workspace text message when exiting bevel.
Howard Trickey [Fri, 15 Feb 2019 14:15:32 +0000 (09:15 -0500)]
Bevel: remove workspace text message when exiting bevel.

The message with shortcuts was hanging around after bevel
exited.

8 months agoBevel: fix twist on bevel of cylinder with >= 200 sides.
Howard Trickey [Fri, 15 Feb 2019 13:32:07 +0000 (08:32 -0500)]
Bevel: fix twist on bevel of cylinder with >= 200 sides.

This triggered an "almost parallel" case in setting the
offset meet points, which is OK but code needed improvement
put the meet point in a more accurate place.
This ia fix for part of the report T61214.

8 months agoDepsgraph: Show build time on --debug-depsgraph-time
Sergey Sharybin [Fri, 15 Feb 2019 11:27:36 +0000 (12:27 +0100)]
Depsgraph: Show build time on --debug-depsgraph-time

Previously was only shown on --debug-depsgraph-build which
had other unwanted noise.

8 months agoFix T61570: Monkey primitive fill color wrong
Antonioya [Fri, 15 Feb 2019 11:00:43 +0000 (12:00 +0100)]
Fix T61570: Monkey primitive fill color wrong

This was introduced by error in a previous commit.

8 months agoFix Spring characters being in the rest pose on file open
Sergey Sharybin [Fri, 15 Feb 2019 09:54:46 +0000 (10:54 +0100)]
Fix Spring characters being in the rest pose on file open

This partially reverts bf2c5217 and makes it so animation is evaluated
for datablocks which were never evaluated within the dependency graph.

Not ideal, but safest way currently.

Animation for already evaluated datablocks will only be evaluated on
manual edits, so the initial bugfix is still valid.

8 months agoCleanup: Argument wrapping
Sergey Sharybin [Fri, 15 Feb 2019 09:52:53 +0000 (10:52 +0100)]
Cleanup: Argument wrapping

8 months agoDepsgraph: Don't tag original IDs
Sergey Sharybin [Thu, 14 Feb 2019 11:20:51 +0000 (12:20 +0100)]
Depsgraph: Don't tag original IDs

This is unreliable for cases when multiple dependency graphs
are to be updated.

The only reason why it was attempted to be made is to deal
with cases when ID appears in the dependency graph for the
first time. But even then it should be smart enough bring
itself to an up-to-date state without any extra tricks.

8 months agoCleanup: Attempt to clarify some ID_RECALC flags
Sergey Sharybin [Thu, 14 Feb 2019 11:17:29 +0000 (12:17 +0100)]
Cleanup: Attempt to clarify some ID_RECALC flags

8 months agoCycles: Support multithreaded compilation of kernels
Brecht Van Lommel [Fri, 15 Feb 2019 07:18:38 +0000 (08:18 +0100)]
Cycles: Support multithreaded compilation of kernels

This patch implements a workaround to get the multithreaded compilation from D2231 working.
So far, it only works for Blender, not for Cycles Standalone. Also, I have only tested the Linux codepath in the helper function.
Depends on D2231.

Reviewers: brecht, dingto, sergey, juicyfruit, lukasstockner97

Reviewed By: brecht

Subscribers: Loner, jbakker, candreacchio, 3dLuver, LazyDodo, bliblubli

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

8 months agoFix DNA struct member versioning logic
Campbell Barton [Fri, 15 Feb 2019 07:09:02 +0000 (18:09 +1100)]
Fix DNA struct member versioning logic

Possible error changing names which are shared between structs.
While the problem doesn't occur at the moment, avoid future problems.

8 months agoCleanup: sync minor changes from D4342
Campbell Barton [Fri, 15 Feb 2019 06:20:11 +0000 (17:20 +1100)]
Cleanup: sync minor changes from D4342

Use naming conventions from the patch so they match when it's applied.

8 months agoUI: impossible to activate RMB menu on menu items
Campbell Barton [Fri, 15 Feb 2019 04:18:35 +0000 (15:18 +1100)]
UI: impossible to activate RMB menu on menu items

Right clicking on a menu item now closes it's sub-menus and opens
the button's context menu.

This is needed for adding them to the quick favourites menu.

Resolves T58729, T61015.

8 months agoFix T60905: Crash using smooth tool
Campbell Barton [Fri, 15 Feb 2019 02:32:31 +0000 (13:32 +1100)]
Fix T60905: Crash using smooth tool

Tools were relying on gizmos drawing to initialize their gizmos,
now tool gizmos are initialized immediately.

8 months agoFix T58090: Selected curve vertex should stand out
Campbell Barton [Fri, 15 Feb 2019 00:58:36 +0000 (11:58 +1100)]
Fix T58090: Selected curve vertex should stand out

D4002 by @slumber w/ edits.

Use text colors, blending to background if they don't contrast.

8 months agomakesdna: correct function docs
Campbell Barton [Thu, 14 Feb 2019 23:31:51 +0000 (10:31 +1100)]
makesdna: correct function docs

Also use doxy sections & remove parens from return values.

8 months agoctodata: make stripping the last byte optional
Campbell Barton [Thu, 14 Feb 2019 21:39:15 +0000 (08:39 +1100)]
ctodata: make stripping the last byte optional

8 months agoFix T61427: Bevel crash with patch miter.
Howard Trickey [Thu, 14 Feb 2019 22:21:50 +0000 (17:21 -0500)]
Fix T61427: Bevel crash with patch miter.

The adjustment phase had broken assumptions after adding miters,
and sent a null problem to eigen. Fixed code to check assumptions.

8 months agoFix outliner box select not working when using search filter.
Brecht Van Lommel [Thu, 14 Feb 2019 19:08:10 +0000 (20:08 +0100)]
Fix outliner box select not working when using search filter.

8 months agoMerge branch 'blender2.7'
Brecht Van Lommel [Thu, 14 Feb 2019 19:00:37 +0000 (20:00 +0100)]
Merge branch 'blender2.7'

8 months agoCleanup: fix compiler warnings.
Brecht Van Lommel [Thu, 14 Feb 2019 18:28:19 +0000 (19:28 +0100)]
Cleanup: fix compiler warnings.

8 months agoFix T61470: incorrect saturation clamping in recent bugfix.
Brecht Van Lommel [Thu, 14 Feb 2019 18:03:59 +0000 (19:03 +0100)]
Fix T61470: incorrect saturation clamping in recent bugfix.

We should clamp the result after multiplication.

8 months agoUI: reword error message when Python script fails.
Francesco Siddi [Thu, 14 Feb 2019 17:16:18 +0000 (18:16 +0100)]
UI: reword error message when Python script fails.

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

8 months agoFix Cycles Embree crash on macOS, due to too small thread stack size.
Brecht Van Lommel [Thu, 14 Feb 2019 13:37:57 +0000 (14:37 +0100)]
Fix Cycles Embree crash on macOS, due to too small thread stack size.

8 months agoFix Cycles build error with OpenImageIO 2.x.
Brecht Van Lommel [Thu, 14 Feb 2019 12:57:28 +0000 (13:57 +0100)]
Fix Cycles build error with OpenImageIO 2.x.

8 months agoGP: Cleanup some lowercase texts
Antonioya [Thu, 14 Feb 2019 15:51:50 +0000 (16:51 +0100)]
GP: Cleanup some lowercase texts

8 months agoGP: Don't activate Fill for new materials
Antonioya [Thu, 14 Feb 2019 15:42:07 +0000 (16:42 +0100)]
GP: Don't activate Fill for new materials

As the fill color alpha is set to zero, it's better keep fill option disabled.

8 months agoGP: Avoid eraser in empty frames and add warning.
Antonioya [Thu, 14 Feb 2019 15:36:40 +0000 (16:36 +0100)]
GP: Avoid eraser in empty frames and add warning.

Also capture event to avoid Move transform.

Note: Now it's using a report message. Maybe this can be removed, but without the message, the event is captured by move transform.

8 months agoGP: Do not draw in Locked or Invisible layers
Antonioya [Thu, 14 Feb 2019 15:12:11 +0000 (16:12 +0100)]
GP: Do not draw in Locked or Invisible layers

It's weird to draw in a layer where the stroke cannot be seen or is not saved.

8 months agoCleanup: replace Main ID's foreach functions by macros.
Bastien Montagne [Thu, 14 Feb 2019 15:24:49 +0000 (16:24 +0100)]
Cleanup: replace Main ID's foreach functions by macros.

Am really no a big fan of using macros for that kind of things, but
meh... C solution to do that with functions (using callbacks) is
even worse. :(

8 months agoFix Object > Animation > Bake Action
Dalai Felinto [Thu, 14 Feb 2019 13:51:14 +0000 (13:51 +0000)]
Fix Object > Animation > Bake Action

8 months agoFix T61536: can't snap vertex to another vertex in edit mode using curves
Sebastian Parborg [Thu, 14 Feb 2019 13:49:47 +0000 (14:49 +0100)]
Fix T61536: can't snap vertex to another vertex in edit mode using curves

Previously, the curve self snapping would only snap to points that were
earlier in the curve structure. This was because of a simple coding
snafu of using break when meaning to use continue.

8 months agoFix T61520: Incorrect assignment of layers to compositor nodes in 2.8 when reading...
Philipp Oeser [Thu, 14 Feb 2019 09:48:56 +0000 (10:48 +0100)]
Fix T61520: Incorrect assignment of layers to compositor nodes in 2.8 when reading 2.79 .blend

Reviewers: brecht

Maniphest Tasks: T61520

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

8 months agoFix T56665: Assert when selecting object
Campbell Barton [Thu, 14 Feb 2019 12:32:53 +0000 (23:32 +1100)]
Fix T56665: Assert when selecting object

Selecting object w/ a different mode missed refreshing the screen
areas current tool.

8 months agoUI: add symmetrize to armature menu
Campbell Barton [Thu, 14 Feb 2019 07:32:04 +0000 (18:32 +1100)]
UI: add symmetrize to armature menu

Was lost on menu reorganization,
minor tweaks to make it match the context menu.

8 months agoFix T61472: Hide Unselected fails w/ no selection
Campbell Barton [Thu, 14 Feb 2019 06:50:41 +0000 (17:50 +1100)]
Fix T61472: Hide Unselected fails w/ no selection

Also skip mesh recalculation when no hide/reveal is performed.

8 months agoFix T61353: Crash converting a curve to a mesh
Campbell Barton [Thu, 14 Feb 2019 06:21:55 +0000 (17:21 +1100)]
Fix T61353: Crash converting a curve to a mesh

This was caused by curves pointing to each other
creating a cyclic dependency.

While the dependency graph detects this, generating a mesh for render
recursively generates data which cashes in this case.

Add in a check to detect cyclic links.

Note, this bug exists in 2.7x too - but only crashes on render
since 2.7x didn't use 'for_render' when converting data.

8 months agoDRW: de-duplicate vertex & weight paint engines
Campbell Barton [Thu, 14 Feb 2019 02:59:30 +0000 (13:59 +1100)]
DRW: de-duplicate vertex & weight paint engines

These were almost exact duplicates, use one engine for drawing both
kinds of vertex color.

8 months agoDRW: use light wire for weight paint mode
Campbell Barton [Thu, 14 Feb 2019 02:39:18 +0000 (13:39 +1100)]
DRW: use light wire for weight paint mode

Black wire can be hard to see against dark blue,
especially when shading is enabled.

Use light grey, matches 2.7x.

8 months agoDRW: Increase weight paint wire depth bias
Campbell Barton [Thu, 14 Feb 2019 02:50:15 +0000 (13:50 +1100)]
DRW: Increase weight paint wire depth bias

By default wire would z-fight against the surface.
Increase the bias, also don't adjust the 'w' component
since it causes bias that depends on the view direction.

8 months agoCleanup: vertex painting variable use
Campbell Barton [Thu, 14 Feb 2019 02:06:03 +0000 (13:06 +1100)]
Cleanup: vertex painting variable use

Assign to local variables when setting up passes,
avoids mix-up between similarly named struct members.

8 months agoFix vertex/weight paint showing edge selection
Campbell Barton [Thu, 14 Feb 2019 01:40:21 +0000 (12:40 +1100)]
Fix vertex/weight paint showing edge selection

When vertex/face selection are disabled - show all wire
ignoring selection & hidden state.

8 months agoFix T61360: Weight paint tools ignore face select
Campbell Barton [Thu, 14 Feb 2019 00:47:23 +0000 (11:47 +1100)]
Fix T61360: Weight paint tools ignore face select

Face selection was added in weight paint mode since 2.7x,
however tools hadn't been updated.

8 months agoFix T61497: Old keymap causes error on startup
Campbell Barton [Thu, 14 Feb 2019 00:11:53 +0000 (11:11 +1100)]
Fix T61497: Old keymap causes error on startup

When a keymap has an error loading, don't make it active
since it will be partially loaded and not usable.

8 months agoDNA: add in-place stripping utility
Campbell Barton [Wed, 13 Feb 2019 22:59:46 +0000 (09:59 +1100)]
DNA: add in-place stripping utility

Minor change from D4342

8 months agoKeymap: preference for alternate tap action for some pie menus
Campbell Barton [Wed, 13 Feb 2019 22:38:05 +0000 (09:38 +1100)]
Keymap: preference for alternate tap action for some pie menus

This allows secondary keys on tap.
Currently Z-key to toggle wireframe and tilde for navigation.

This is currently experimental, if users like this the preference
can be kept and used where appropriate.

8 months agoKeymap: Alt-N to flip normals
Campbell Barton [Wed, 13 Feb 2019 21:33:32 +0000 (08:33 +1100)]
Keymap: Alt-N to flip normals

Add shortcut since this has been removed from the context menu,
now it's in the mesh normals menu which isn't so convenient to access.

Shift-N is already used to recalculate normals,
this fits the convention of Alt removing/reversing.

8 months agoCleanup: indentation
Campbell Barton [Wed, 13 Feb 2019 21:43:44 +0000 (08:43 +1100)]
Cleanup: indentation

8 months agofix build on xcode with openmp
Arto Kitula [Wed, 13 Feb 2019 20:34:40 +0000 (22:34 +0200)]
fix build on xcode with openmp

8 months agoFix T61477: freestyle not updating in animation render (again).
Brecht Van Lommel [Wed, 13 Feb 2019 19:04:25 +0000 (20:04 +0100)]
Fix T61477: freestyle not updating in animation render (again).

Must use the right function to get animation updates now.

8 months agoMerge branch 'blender2.7'
Brecht Van Lommel [Wed, 13 Feb 2019 18:02:43 +0000 (19:02 +0100)]
Merge branch 'blender2.7'

8 months agoFix T61505, T61280, bugs in button drag toggle after recent changes.
Brecht Van Lommel [Wed, 13 Feb 2019 17:56:46 +0000 (18:56 +0100)]
Fix T61505, T61280, bugs in button drag toggle after recent changes.

8 months agoFix T59062: Keyframed node properties stay linked after shading network duplication.
Bastien Montagne [Wed, 13 Feb 2019 16:19:18 +0000 (17:19 +0100)]
Fix T59062: Keyframed node properties stay linked after shading network duplication.

There is no reason not to duplicate Actions too here, especially when
Materials' Actions are pretty much impossible to edit from current UI
(afaik, DopeSheet editor does not has any way to change them?).

8 months agoFix T61470: inconsistent HSV node results with saturation > 1.0.
Brecht Van Lommel [Wed, 13 Feb 2019 15:58:54 +0000 (16:58 +0100)]
Fix T61470: inconsistent HSV node results with saturation > 1.0.

Values outside the 0..1 range produce negative colors, so now clamp to that
range everywhere. Also fixes improper handling of hue > 2.0 in some places.

8 months agoGP: Cleanup Paint Poll method
Antonioya [Wed, 13 Feb 2019 15:48:16 +0000 (16:48 +0100)]
GP: Cleanup Paint Poll method

The poll was checking things related to all annotations, but now the check must be only for grease pencil objects and 3D view.

8 months agoFix T61446: (second part) Some items in editor and mode selectors are not translatable.
Bastien Montagne [Wed, 13 Feb 2019 15:32:58 +0000 (16:32 +0100)]
Fix T61446: (second part) Some items in editor and mode selectors are not translatable.

That one is utterly ugly fix really, but unfortunately a proper one
would require some changes to our RNA (or more precisely, pyrna) code,
so that when we subscript a dynamically generated RNA collection, the
item is somehow duplicated (and probably 'assigned' to its py object?),
before the temp RNA array memory is freed...

8 months agoFix NodeTree types UI messages not being properly tagged for translation.
Bastien Montagne [Wed, 13 Feb 2019 15:18:19 +0000 (16:18 +0100)]
Fix NodeTree types UI messages not being properly tagged for translation.

Probably fix first part of T61446.

8 months agoFix T61515: Crash when unloading a scene with pynodes and idprop of type id.
Bastien Montagne [Wed, 13 Feb 2019 15:10:46 +0000 (16:10 +0100)]
Fix T61515: Crash when unloading a scene with pynodes and idprop of type id.

Usual legacy/history crap in NodeTree code... Datablocks's specific
freeing code should never, ever do refcounting management, this is
handled by higher-level code from BKE_library area.

8 months agoFix T61502: Cycles wrong other object texture coordinates in OSL.
Brecht Van Lommel [Wed, 13 Feb 2019 14:01:54 +0000 (15:01 +0100)]
Fix T61502: Cycles wrong other object texture coordinates in OSL.

The row/column major matrix conversion was done twice.

8 months agoFix T61506: Wrong user counting with ID properties in pynodes.
Bastien Montagne [Wed, 13 Feb 2019 13:58:38 +0000 (14:58 +0100)]
Fix T61506: Wrong user counting with ID properties in pynodes.

Nuke away old nodeCopyNode(), much better to use new BKE_node_copy_ex(),
which behaves as expected for the various optional flags that can be passed.

This also removes the need to handle ID refcounting in calling code
(ugly!) and allows us to remove an even uglier name from our codebase! :D

Note that this fixes three related issues actually, that bug was also
affecting copy/paste of nodes, and 'Separate with copy' operator (the
latter being actually fully wrong, since it was not refcounting
anything, not even node->id pointer...).

8 months agoMerge branch 'blender2.7'
Brecht Van Lommel [Wed, 13 Feb 2019 13:34:26 +0000 (14:34 +0100)]
Merge branch 'blender2.7'

8 months agoFix missing Cycles cryptomatte metadata in renders.
Brecht Van Lommel [Wed, 13 Feb 2019 13:33:29 +0000 (14:33 +0100)]
Fix missing Cycles cryptomatte metadata in renders.

8 months agoCleanup: do not cleanup runtime data twice during ID copying...
Bastien Montagne [Wed, 13 Feb 2019 13:29:27 +0000 (14:29 +0100)]
Cleanup: do not cleanup runtime data twice during ID copying...

More or less same code was being executed twice during ID copying.

Makes no sense to add yet another switch-by-ID-type to handle
specificaly runtime data during ID copying, we already have
BKE_xxx_copy_data() functions for that.

8 months agoFix T61457, T61489, T61482: build errors and memory warning in Cycles.
Brecht Van Lommel [Tue, 12 Feb 2019 16:10:31 +0000 (17:10 +0100)]
Fix T61457, T61489, T61482: build errors and memory warning in Cycles.

For OIIO 2.x we must use unique_ptr. This also required updating the
guarded allocator for std::move to work. Since C++11 construct/destroy
have a default implementation that also works this case, so we just
leave it out.

8 months agoFix T61499: Missing Camera settings in props except Depth of Field
Philipp Oeser [Wed, 13 Feb 2019 09:15:40 +0000 (10:15 +0100)]
Fix T61499: Missing Camera settings in props except Depth of Field

rB55c281415b67 removed 'BLENDER_RENDER' as a COMPAT_ENGINE but the
cycles addon checks for this in its get_panels() function.

Adding this back for now.

Reviewers: brecht, billreynish

Maniphest Tasks: T61499

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

8 months agoFix T61487: quick favorites crash outside of open preferences window
Philipp Oeser [Wed, 13 Feb 2019 10:02:47 +0000 (11:02 +0100)]
Fix T61487: quick favorites crash outside of open preferences window

8 months agoFix crash removing drivers
Sergey Sharybin [Wed, 13 Feb 2019 09:41:36 +0000 (10:41 +0100)]
Fix crash removing drivers

Was a use-after-free during relations update.

Now we do similar dependency graph tags, but without any
extra animation update logic, which was accessing various
pointers.

Was found when looking into a file from T56635.

8 months agoGP: Remove debug print
Antonioya [Wed, 13 Feb 2019 09:00:02 +0000 (10:00 +0100)]
GP: Remove debug print

8 months agoCleanup: unused DNA struct members
Campbell Barton [Wed, 13 Feb 2019 08:12:43 +0000 (19:12 +1100)]
Cleanup: unused DNA struct members

- Timeline theme.
- 3D view runtime variables.
- Exclude EditLatt from SDNA.

8 months agoFix T61411: Camera clip overlay enabled by expanding UI
Philipp Oeser [Wed, 13 Feb 2019 05:39:03 +0000 (16:39 +1100)]
Fix T61411: Camera clip overlay enabled by expanding UI

8 months agoCleanup: rename variable name for DNA utils
Campbell Barton [Wed, 13 Feb 2019 00:09:07 +0000 (11:09 +1100)]
Cleanup: rename variable name for DNA utils

Rename 'elem_dna' to 'elem_full' to signify it has array/pointer chars.

8 months agoCleanup: unused variable
Campbell Barton [Wed, 13 Feb 2019 00:08:38 +0000 (11:08 +1100)]
Cleanup: unused variable

8 months agoCleanup: style, duplicate includes
Campbell Barton [Wed, 13 Feb 2019 00:00:07 +0000 (11:00 +1100)]
Cleanup: style, duplicate includes

8 months agoI18N Messages: fix confusion with Light meanings.
Bastien Montagne [Tue, 12 Feb 2019 21:13:42 +0000 (22:13 +0100)]
I18N Messages: fix confusion with Light meanings.

Using ID_LIGHT or ID_ID for "Lamp" meaning, "Light" without context
being for 'not heavy'.

That rename of data-block was not really nice on that side of things :/

Related to T43295.

8 months agoCleanup: rename `BLT_I18NCONTEXT_ID_LAMP` -> `BLT_I18NCONTEXT_ID_LIGHT`.
Bastien Montagne [Tue, 12 Feb 2019 20:51:51 +0000 (21:51 +0100)]
Cleanup: rename `BLT_I18NCONTEXT_ID_LAMP` -> `BLT_I18NCONTEXT_ID_LIGHT`.

8 months agoFix T51771: UI Messages: Reserve 'Normal' to its geometric meaning.
Bastien Montagne [Tue, 12 Feb 2019 20:28:04 +0000 (21:28 +0100)]
Fix T51771: UI Messages: Reserve 'Normal' to its geometric meaning.

Using 'Regular' instead for the common meaning, this avoids having to
add some i18n context disambiguation...

8 months agoFix T61469: wrong object statistics when using instances.
Brecht Van Lommel [Tue, 12 Feb 2019 18:17:14 +0000 (19:17 +0100)]
Fix T61469: wrong object statistics when using instances.

The new code already loops over all instances, don't need to be counted again.

8 months agoFix T61453: crash rendering after selecting particle settings datablock.
Brecht Van Lommel [Tue, 12 Feb 2019 17:59:45 +0000 (18:59 +0100)]
Fix T61453: crash rendering after selecting particle settings datablock.

8 months agoGP: Move to new layer did not work with autolock
Antonioya [Tue, 12 Feb 2019 17:14:36 +0000 (18:14 +0100)]
GP: Move to new layer did not work with autolock

When the autolock layer option was enabled, the move to new layer operator was not working as expected.

8 months agoEdit Mode: Fix element selection on some old AMD GPUs
mano-wii [Tue, 12 Feb 2019 16:12:31 +0000 (14:12 -0200)]
Edit Mode: Fix element selection on some old AMD GPUs

Tested on an `AMD Radeon HD 7570M`.
It seems that a VBO containing only `unsigned bytes` or `unsigned shorts` can't be read correctly in a shader.
Strange that if the index buffer repeats the drawing of the vertices (as was done before rBa04dd15193e6) the problem disappears.
The disadvantage of this solution is that the memory size for a selection VBO increases by about 4 times.
But the loss in optimization is negligible.

Thanks to @fclem for pointing out the possible source of the problem and reviewing the fix.

8 months agoFix "typo" in show_object_viewport* RNA_def_property_update
Dalai Felinto [Tue, 12 Feb 2019 16:27:30 +0000 (14:27 -0200)]
Fix "typo" in show_object_viewport* RNA_def_property_update

8 months agoFix T60999: Duplifaced objects are not drawn in edit mode
Sergey Sharybin [Tue, 12 Feb 2019 16:04:59 +0000 (17:04 +0100)]
Fix T60999: Duplifaced objects are not drawn in edit mode

Seems to be rather trivial change to use proper cage mesh nowadays.

8 months agoFix T61462: Missing update when toggling GP layer visibility in the Outliner
Antonioya [Tue, 12 Feb 2019 16:01:09 +0000 (17:01 +0100)]
Fix T61462: Missing update when toggling GP layer visibility in the Outliner

8 months agoUse direct access to evaluated mesh from instancing
Sergey Sharybin [Tue, 12 Feb 2019 15:00:46 +0000 (16:00 +0100)]
Use direct access to evaluated mesh from instancing

It is supposed to be already evaluated. If for some reason it's not
doing such direct evaluation will not be reliable anyway (indirect
dependencies for example).

This fixes an assert part of T61431.

8 months agoDepsgraph: Special relation for instances and metaballs
Sergey Sharybin [Tue, 12 Feb 2019 14:58:45 +0000 (15:58 +0100)]
Depsgraph: Special relation for instances and metaballs

Ensures that object which is set for instance-vert or instance-face
is evaluated prior to metaball. This is because metaball will request
list of instances during evaluation.

This should fix issue reported T61431 in release build. The assert is
still there and is to be addressed separately.

8 months agoCleanup: Make parent relations a bit cleaner
Sergey Sharybin [Tue, 12 Feb 2019 14:37:57 +0000 (15:37 +0100)]
Cleanup: Make parent relations a bit cleaner

Mainly getting rid of old and somewhat misleading and unclear
comments.

8 months agoFix T61458: GP Ctrl + F doesn't do anything
Antonioya [Tue, 12 Feb 2019 15:38:02 +0000 (16:38 +0100)]
Fix T61458: GP Ctrl + F doesn't do anything

This keymap was used in the old grease pencil and now must be removed.

The keymaps for brush are:

F: Change Radius
Shift + F: Change strength

Ctrl+F -> Removed.

8 months agoFix T61428: Node editor's 'Interface' panel shows in all tabs
Philipp Oeser [Tue, 12 Feb 2019 14:35:13 +0000 (15:35 +0100)]
Fix T61428: Node editor's 'Interface' panel shows in all tabs

Reviewers: brecht

Maniphest Tasks: T61428

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

8 months agoModifiers: Make Difference default operation for boolean modifier.
Bastien Montagne [Tue, 12 Feb 2019 12:51:33 +0000 (13:51 +0100)]
Modifiers: Make Difference default operation for boolean modifier.

Make Difference a default value for boolean modifier operation property.

Currently operation property of the boolean modifier is set to Intersect, which is the least frequently used boolean operation of the three available. It is also goes out of sync with Intersect (Boolean) tool, where Difference is a default operation.

Reviewers: mont29, brecht, sergey

Reviewed By: mont29, brecht, sergey

Subscribers: mont29, brecht, campbellbarton, sergey, billreynish

Tags: #modifiers

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

8 months agoFix T61455: Import any add-on broken
Philipp Oeser [Tue, 12 Feb 2019 12:32:39 +0000 (13:32 +0100)]
Fix T61455: Import any add-on broken

recent split userpref.py out of wm.py (rB9ec944bbab7a) forgot to move
'module_filesystem_remove' there as well...

8 months agoFix T61430: invoke_popup() does not respect ui scale
Jacques Lucke [Tue, 12 Feb 2019 12:30:24 +0000 (13:30 +0100)]
Fix T61430: invoke_popup() does not respect ui scale

Reviewers: brecht

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

8 months agoDepsgraph: Run rigid body after modifiers are ready
Sergey Sharybin [Tue, 12 Feb 2019 11:32:03 +0000 (12:32 +0100)]
Depsgraph: Run rigid body after modifiers are ready

This makes it so modifiers are using object transform prior
to the rigid body simulation, and then result of modifier
stack is fed to the solver.

Solves dependency cycle which was happening when object's
modifier was dependent on the modifier transform.

While now it is not possible to change simulation, things
are somewhat more clear and reliable in other ways.
For example previously, solver was using derives mesh from
a previous step in time, which causes unfixable simulation
issues (with intersections and such)

Fixex T57589: 2.79 Rigid Body Sim. Does Not Behave The Same In 2.8
Fixex T61256: Compositing scenes causes crash, but rendering separately does not
Fixes T61262: Armature and rigid body crash
Fixes T61346: Rigid body with modifiers incorrect work

8 months agoWeight modifiers: Remove weird looking dependency
Sergey Sharybin [Tue, 12 Feb 2019 11:04:48 +0000 (12:04 +0100)]
Weight modifiers: Remove weird looking dependency

Modifiers are part of geometry component, no way they can
be dependent on the geometry component of the same object.

8 months agoDepsgraph: Add utility function for transform dependency
Sergey Sharybin [Tue, 12 Feb 2019 11:01:17 +0000 (12:01 +0100)]
Depsgraph: Add utility function for transform  dependency

This is what modifiers are to use to indicate that they depend
on a transformation of the object itself.

Currently should be no functional changes, but in the future
this will allow to easily change transform operation depending
on whether there is a simulation associated with the object.

8 months agoFix fur on Spring characters
Sergey Sharybin [Tue, 12 Feb 2019 09:55:15 +0000 (10:55 +0100)]
Fix fur on Spring characters

There is an issue of hair being completely messed up when
switching to a simulation view layer for Autumn.

Restoring back the code which was re-setting particles on
file load. This will re-set unbacked particles on file load
but this appears to be happening in 2.7 as well.

Can not reproduce bugs which were fixed in this area recently,
so maybe it's finally tackled (fingers crossed!).

8 months agoCleanup: move utility functions into dna_utils
Campbell Barton [Tue, 12 Feb 2019 06:56:35 +0000 (17:56 +1100)]
Cleanup: move utility functions into dna_utils

Rename old/new to src/dst since renaming happens in both directions
when versioning.

8 months agomakesdna: add shared utility module
Campbell Barton [Tue, 12 Feb 2019 06:03:16 +0000 (17:03 +1100)]
makesdna: add shared utility module

Currently only a single function was duplicated which isn't so bad,
this change is to allow DNA versioning code to be shared between
dna_genfile.c and makesdna.c.

8 months agomakesdna: use memarena for string allocations
Campbell Barton [Tue, 12 Feb 2019 05:47:39 +0000 (16:47 +1100)]
makesdna: use memarena for string allocations

Include it since versioning code will need to perform
small string allocations too, which doesn't fit will into
the currently used fixed size buffers.

8 months agoBLI_memarena: remove use of BLI_linklist
Campbell Barton [Tue, 12 Feb 2019 05:21:27 +0000 (16:21 +1100)]
BLI_memarena: remove use of BLI_linklist

Preprare for using memarena w/ makesdna, BLI_linklist depends on
BLI_mempool. Since linked list use in here is simple, do it inline.

8 months agoCleanup: use printf define in makesdna
Campbell Barton [Mon, 11 Feb 2019 23:10:04 +0000 (10:10 +1100)]
Cleanup: use printf define in makesdna

8 months agoDNA: support versioning structs & struct members
Campbell Barton [Mon, 11 Feb 2019 22:29:18 +0000 (09:29 +1100)]
DNA: support versioning structs & struct members

This is only to be used rarely because it's not forwards compatible.

Replace version patching of old 2.80 DNA with a more generic API.