blender.git
3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Tue, 19 Dec 2017 03:15:19 +0000 (14:15 +1100)]
Merge branch 'master' into blender2.8

3 years ago3D View: use shortest angle between quaternions
Campbell Barton [Tue, 19 Dec 2017 03:05:54 +0000 (14:05 +1100)]
3D View: use shortest angle between quaternions

Gave incorrect smoothview speed changing between some axis and
axis locking.

3 years agoMath Lib: signed versions of quaternion angle
Campbell Barton [Tue, 19 Dec 2017 02:59:18 +0000 (13:59 +1100)]
Math Lib: signed versions of quaternion angle

There was no simple way to get the shortest quaternion angle.

3 years agoManipulator: Support click only manipulator's
Campbell Barton [Tue, 19 Dec 2017 01:31:40 +0000 (12:31 +1100)]
Manipulator: Support click only manipulator's

Makes the 3D view navigation widget easier to use: dragging anywhere
in the rotation region now rotates without having to avoid the XYZ axis
hotspots which only activate on a single click.

Logic for drag detection is complicated by manipulators reliance
on keeping the modal operator running.
Currently this is wrapped in an ifdef,
we may want to implement it differently later.

3 years agoManipulaor: de-duplicate finish call
Campbell Barton [Mon, 18 Dec 2017 05:06:32 +0000 (16:06 +1100)]
Manipulaor: de-duplicate finish call

3 years agoForgotten on last commit
Germano [Tue, 19 Dec 2017 01:24:12 +0000 (23:24 -0200)]
Forgotten on last commit

3 years agoDraw Manager: draw_cache_imp_displist, always return IndexBuf even when there is...
Germano [Tue, 19 Dec 2017 01:17:55 +0000 (23:17 -0200)]
Draw Manager: draw_cache_imp_displist, always return IndexBuf even when there is no index

This prevents possible errors with materials and a crash with low resolution metaball.
Also a small cleanup was done in the code.

3 years agoFix T53474, bevel glitchy with big objects.
Howard Trickey [Mon, 18 Dec 2017 17:24:42 +0000 (12:24 -0500)]
Fix T53474, bevel glitchy with big objects.

A comparison should have not just have been against an epsilon,
but relative to the edge length involved.
Thanks to mano-wii for patch on which this is based.

3 years agoDepsgraph: Cleanup, line length
Sergey Sharybin [Mon, 18 Dec 2017 15:55:04 +0000 (16:55 +0100)]
Depsgraph: Cleanup, line length

3 years agoDepsgraph: Use named typedef for tag
Sergey Sharybin [Mon, 18 Dec 2017 15:53:12 +0000 (16:53 +0100)]
Depsgraph: Use named typedef for tag

3 years agoDepsgraph: Cleanup, typo in comment
Sergey Sharybin [Mon, 18 Dec 2017 15:52:33 +0000 (16:52 +0100)]
Depsgraph: Cleanup, typo in comment

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Mon, 18 Dec 2017 15:50:21 +0000 (16:50 +0100)]
Merge branch 'master' into blender2.8

3 years agoDepsgraph: Add facilities to store what ID recalc flag component corresponds to
Sergey Sharybin [Mon, 18 Dec 2017 15:46:32 +0000 (16:46 +0100)]
Depsgraph: Add facilities to store what ID recalc flag component corresponds to

The idea is to de-duplicate logic in DEG_id_tag_update() and flushing where we
need to translate depsgraph tag or component type to ID level recalc flag.

Currently unused, but is required for Blender 2.8.

3 years agoAdd dedicated named constant for no ID recalc flag
Sergey Sharybin [Mon, 18 Dec 2017 15:40:18 +0000 (16:40 +0100)]
Add dedicated named constant for no ID recalc flag

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Mon, 18 Dec 2017 15:36:23 +0000 (16:36 +0100)]
Merge branch 'master' into blender2.8

3 years agoDepsgraph: Synchronize flushing with 2.8 branch
Sergey Sharybin [Mon, 18 Dec 2017 15:33:12 +0000 (16:33 +0100)]
Depsgraph: Synchronize flushing with 2.8 branch

Not only this helps merges form master to the branch, but also:

- Allows us to production-check changes as soon as possible.
- Avoids some unnecessary editors update about ID changes.
- Adds small optimization on queue size by always keeping one of the pointers
  outside of the queue.

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Mon, 18 Dec 2017 15:19:12 +0000 (16:19 +0100)]
Merge branch 'master' into blender2.8

3 years agoDepsgraph: Add query API to traverse all dependent IDs of the given ID
Sergey Sharybin [Fri, 1 Dec 2017 10:35:36 +0000 (11:35 +0100)]
Depsgraph: Add query API to traverse all dependent IDs of the given ID

3 years agoDepsgraph: Replace iteration over ghash with iteration over flat array
Sergey Sharybin [Wed, 8 Nov 2017 13:48:25 +0000 (14:48 +0100)]
Depsgraph: Replace iteration over ghash with iteration over flat array

3 years agoDepsgraph: Introduce flat list of ID nodes
Sergey Sharybin [Wed, 8 Nov 2017 13:29:58 +0000 (14:29 +0100)]
Depsgraph: Introduce flat list of ID nodes

The idea is to allow iterating over ID nodes in exact order of their
construction, and in order which will not change dependent on memory
pointers or anything.

3 years agoFix bad merge happened at some point
Sergey Sharybin [Mon, 18 Dec 2017 15:04:06 +0000 (16:04 +0100)]
Fix bad merge happened at some point

3 years agoFix T53398: Surface deform modifier says that convex polygons are concave for big...
Sergey Sharybin [Mon, 18 Dec 2017 14:16:22 +0000 (15:16 +0100)]
Fix T53398: Surface deform modifier says that convex polygons are concave for big faces

Dot-product for angle check need either to be divided by vectors magnitude or be
calculated for normalized vectors.

3 years agoStatic Override: better handling in ID template.
Bastien Montagne [Mon, 18 Dec 2017 11:29:08 +0000 (12:29 +0100)]
Static Override: better handling in ID template.

Now we stick to a single button, when data is directly linked, clicking
on it will make a local copy, while shift-clicking on it will make a
static override.

When data is a static override, icon is the DATA_OVERRIDE one, and clicking
on the button will make it a fully borring local data-block.

3 years agoAdd override icon to such data-blocks in OUtliner.
Bastien Montagne [Mon, 18 Dec 2017 11:02:23 +0000 (12:02 +0100)]
Add override icon to such data-blocks in OUtliner.

3 years agoAdd macros to check whether an ID is a static override or has a template for it.
Bastien Montagne [Mon, 18 Dec 2017 11:01:50 +0000 (12:01 +0100)]
Add macros to check whether an ID is a static override or has a template for it.

3 years agoblender_icons_update script: run Blender in factory startup.
Bastien Montagne [Mon, 18 Dec 2017 09:47:02 +0000 (10:47 +0100)]
blender_icons_update script: run Blender in factory startup.

Can avoid some stupid issues with custom addons etc.

3 years agoAdd basic 'override' icon.
Bastien Montagne [Mon, 18 Dec 2017 09:44:20 +0000 (10:44 +0100)]
Add basic 'override' icon.

This is just the 'linked' icon with top-down arrow instead of left-right
one, if any graphist feels more inspired... ;)

Note that this is 'new inkscape' version of the svg file, hope
everything is alright (it does change all icons whe re-exporting :/ ).

3 years agoSerious cleanup/refactor/fixing of new RNA comparison code.
Bastien Montagne [Mon, 18 Dec 2017 09:13:43 +0000 (10:13 +0100)]
Serious cleanup/refactor/fixing of new RNA comparison code.

Code also handling auto-generation of static overrides.

Aside from some naming consistency cleanup, this commit:

* Is the first step addressing the 'operator' issue with static
overrides, by implementing a first version of the 'restore from
reference' behavior.

* Fixes several issues that were discovered on the way in enhanced
RNA comparision code, like the 'zero-length dynamic array' case, or some
infinite looping caused by some non-ID pointers (that for some
mysterious reasons did not show up previously...).

* Factorizes a bit said RNA comparison code (auto-static override
generation and comparison/check were essentially doing the same thing).

3 years agoRNA: add new property falg for pointers (and collection), 'NO_OWNERSHIP'.
Bastien Montagne [Mon, 18 Dec 2017 09:08:22 +0000 (10:08 +0100)]
RNA: add new property falg for pointers (and collection), 'NO_OWNERSHIP'.

This flag means that the pointer does not 'own' the data it references.
This is the case of nearly all ID RNA pointers (NodeTrees will probably
again be some nasty exception here :( ), but also several other cases.

That kind of information is mandatory for complex processing over whole
data-blocks done in RNA, like some static override tasks (advanced
comparison...).

3 years agoFix T53577: Rake sculpt/paint wrong on first step
Campbell Barton [Mon, 18 Dec 2017 03:35:15 +0000 (14:35 +1100)]
Fix T53577: Rake sculpt/paint wrong on first step

3 years agoFix triangles indexbuf of Curve Displists was being discarded incorrectly
Germano [Sun, 17 Dec 2017 00:22:21 +0000 (22:22 -0200)]
Fix triangles indexbuf of Curve Displists was being discarded incorrectly

They were discarded when shaded surfaces were requested thus bringing glitches to the outline of the selected Displists Objects

3 years agoFix triangles of the Displists were being drawn in the opposite direction
Germano [Sat, 16 Dec 2017 23:58:16 +0000 (21:58 -0200)]
Fix triangles of the Displists were being drawn in the opposite direction

3 years agoCMake: bump minimum version to 3.5
Campbell Barton [Sat, 16 Dec 2017 14:04:05 +0000 (01:04 +1100)]
CMake: bump minimum version to 3.5

3 years agoManipulator: change cursor for navigation axis
Campbell Barton [Sat, 16 Dec 2017 08:28:07 +0000 (19:28 +1100)]
Manipulator: change cursor for navigation axis

Wasn't easy to see

3 years agoManipulator: draw 2d manipulators over view border
Campbell Barton [Sat, 16 Dec 2017 07:55:42 +0000 (18:55 +1100)]
Manipulator: draw 2d manipulators over view border

Needed so passepartout doesn't cover 2d manipulators.

3 years agoApp Template: use manipulator flag
Campbell Barton [Sat, 16 Dec 2017 07:32:12 +0000 (18:32 +1100)]
App Template: use manipulator flag

So templates can enable manipulators.
Also remove invalid enum set.

3 years agoManipulator: view3d navigation buttons
Campbell Barton [Fri, 15 Dec 2017 16:57:20 +0000 (03:57 +1100)]
Manipulator: view3d navigation buttons

Added for Blender101 template.
Disabled by default, enable as a preference.

Exposes rotate, pan, zoom, persp-ortho & camera toggle.

3 years agoManipulator: support single press button actions
Campbell Barton [Fri, 15 Dec 2017 16:55:20 +0000 (03:55 +1100)]
Manipulator: support single press button actions

While not the main purpose of manipulators, it's handy to be able
to use operators without modal callbacks sometimes.

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Fri, 15 Dec 2017 16:55:23 +0000 (17:55 +0100)]
Merge branch 'master' into blender2.8

3 years agoDepsgraph: Cleanup, remove unused function
Sergey Sharybin [Fri, 15 Dec 2017 16:47:15 +0000 (17:47 +0100)]
Depsgraph: Cleanup, remove unused function

3 years agoDepsgraph: Cleanup, make naming more understandable
Sergey Sharybin [Fri, 15 Dec 2017 16:46:30 +0000 (17:46 +0100)]
Depsgraph: Cleanup, make naming more understandable

3 years agoDepsgraph: Use array instead of set for node factory
Sergey Sharybin [Fri, 15 Dec 2017 16:42:07 +0000 (17:42 +0100)]
Depsgraph: Use array instead of set for node factory

Avoids extra time spent on hashing and such.

Old comment is kind of weird, because types we can totally make a sequent
integer values.

3 years agoDepsgraph: Add named constant with number of node types
Sergey Sharybin [Fri, 15 Dec 2017 16:39:01 +0000 (17:39 +0100)]
Depsgraph: Add named constant with number of node types

3 years agoDepsgraph: Don't use negative enum value
Sergey Sharybin [Fri, 15 Dec 2017 16:38:12 +0000 (17:38 +0100)]
Depsgraph: Don't use negative enum value

Not sure why it sohuld be negative, we shouldn't be using any explicit value
comparison.

3 years agoFix failing assert when reading workspace list from workspaces.blend
Julian Eisel [Fri, 15 Dec 2017 16:24:10 +0000 (17:24 +0100)]
Fix failing assert when reading workspace list from workspaces.blend

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Fri, 15 Dec 2017 16:24:28 +0000 (17:24 +0100)]
Merge branch 'master' into blender2.8

3 years agoDepsgraph Cleanup, spelling
Sergey Sharybin [Fri, 15 Dec 2017 14:14:00 +0000 (15:14 +0100)]
Depsgraph Cleanup, spelling

3 years agoDepsgraph: Simplify logic around special case for node tree update
Sergey Sharybin [Fri, 15 Dec 2017 14:10:11 +0000 (15:10 +0100)]
Depsgraph: Simplify logic around special case for node tree update

3 years agoDepsgraph: Cleanup, extra whitespace
Sergey Sharybin [Fri, 15 Dec 2017 14:01:21 +0000 (15:01 +0100)]
Depsgraph: Cleanup, extra whitespace

3 years agoDepsgraph: Cleanup, use names for particle system tag flags
Sergey Sharybin [Fri, 15 Dec 2017 13:58:42 +0000 (14:58 +0100)]
Depsgraph: Cleanup, use names for particle system tag flags

3 years agoDepsgraph: Remove special exception logic from ID node tagging
Sergey Sharybin [Fri, 15 Dec 2017 13:49:11 +0000 (14:49 +0100)]
Depsgraph: Remove special exception logic from ID node tagging

This is something what we should be limiting as much as possible, it is
enough already to have special mapping cases in depsgreaph_depsgraph_tag.

3 years agomath utils: Add utilities to scan bit and clear it
Sergey Sharybin [Fri, 15 Dec 2017 15:41:31 +0000 (16:41 +0100)]
math utils: Add utilities to scan bit and clear it

3 years agoMath utils: Go away form naive code for highest_order_bit_uint
Sergey Sharybin [Fri, 15 Dec 2017 15:28:53 +0000 (16:28 +0100)]
Math utils: Go away form naive code for highest_order_bit_uint

3 years agoMath utils: Add bit scan operations
Sergey Sharybin [Fri, 15 Dec 2017 15:22:54 +0000 (16:22 +0100)]
Math utils: Add bit scan operations

3 years agoMath utils: Make it more clear what the functions are returning
Sergey Sharybin [Fri, 15 Dec 2017 15:17:37 +0000 (16:17 +0100)]
Math utils: Make it more clear what the functions are returning

3 years agoMath utils: Cleanup, use _uint suffix for function which operates on uint
Sergey Sharybin [Fri, 15 Dec 2017 15:16:22 +0000 (16:16 +0100)]
Math utils: Cleanup, use _uint suffix for function which operates on uint

3 years agoFix missing refresh of editors when changing workspace view-layer
Julian Eisel [Fri, 15 Dec 2017 14:46:42 +0000 (15:46 +0100)]
Fix missing refresh of editors when changing workspace view-layer

Needs to use new messaging system.

3 years agoDepsgraph: Fix assignment to wrong flags
Sergey Sharybin [Fri, 15 Dec 2017 13:42:42 +0000 (14:42 +0100)]
Depsgraph: Fix assignment to wrong flags

3 years agoTracking: Cleanup, fix typo in variable name
Sebastian Koenig [Fri, 15 Dec 2017 12:53:44 +0000 (13:53 +0100)]
Tracking: Cleanup, fix typo in variable name

3 years agoTracking: Pass all markers to autotrack at once
Sergey Sharybin [Fri, 15 Dec 2017 11:51:53 +0000 (12:51 +0100)]
Tracking: Pass all markers to autotrack at once

This solves delay before tracking actually starts.

The issue is reported by Sebastian over IRC, thanks!

3 years agoLibmv: Add C-API function to set all markers within AutoTrack structure
Sergey Sharybin [Fri, 15 Dec 2017 11:51:17 +0000 (12:51 +0100)]
Libmv: Add C-API function to set all markers within AutoTrack structure

3 years agoTracking: Cleanup, make autotrack context creation code more granular
Sergey Sharybin [Fri, 15 Dec 2017 11:35:41 +0000 (12:35 +0100)]
Tracking: Cleanup, make autotrack context creation code more granular

3 years agoTracking: Cleanup, use more const qualifiers when appropriate
Sergey Sharybin [Fri, 15 Dec 2017 11:23:35 +0000 (12:23 +0100)]
Tracking: Cleanup, use more const qualifiers when appropriate

3 years agoDepsgraph: cleanup DEGOIterObjectData > DEGObjectIterData
Dalai Felinto [Fri, 15 Dec 2017 10:11:19 +0000 (08:11 -0200)]
Depsgraph: cleanup DEGOIterObjectData > DEGObjectIterData

3 years agoDepsgraph: Make DEG_OBJECT_ITER more granular
Dalai Felinto [Fri, 15 Dec 2017 09:51:16 +0000 (07:51 -0200)]
Depsgraph: Make DEG_OBJECT_ITER more granular

It is not nice to assume we always want visible or directly linked objects.
So we make it as granular as we can.

3 years agoDepsgraph / Render / Collection: Tag groups for rendering
Dalai Felinto [Fri, 15 Dec 2017 10:33:25 +0000 (08:33 -0200)]
Depsgraph / Render / Collection: Tag groups for rendering

We need to tag groups before and after rendering, so the group collections
viewport and render visibility are taken into account.

Note: This is a workaround, that will be removed once the render engine have
its own depsgraph, instead of re-using the viewport depsgraph.

3 years agoGroup collection viewport/render options and remove collection visibility
Dalai Felinto [Thu, 14 Dec 2017 13:46:49 +0000 (11:46 -0200)]
Group collection viewport/render options and remove collection visibility

Users can change the group collection visibility in the outliner
when looking at groups.

Regular collections on the other hand don't have any special visibility control,
if you need a collection to be invisible during render, either don't link it
into the view layer used for F12, or disable it.

This includes:
* Updated unittests - update your lib/tests/layers folder.
* Subversion bump - branches be aware of that.

Note:
Although we are using eval_ctx to determine the visibility of a group collection
when rendering, the depsgraph is still using the same depsgraph for the viewport
and the render engine, so at the moment the render visibility is ignored.

Following next is a workaround for this separately to tag the groups before and
after rendering to tackle that.

3 years agoDraw manager: Cleanup, unused variable
Sergey Sharybin [Fri, 15 Dec 2017 09:54:00 +0000 (10:54 +0100)]
Draw manager:  Cleanup, unused variable

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Fri, 15 Dec 2017 09:45:20 +0000 (10:45 +0100)]
Merge branch 'master' into blender2.8

3 years agoFix dupli-frames (and other duplis)
Dalai Felinto [Fri, 15 Dec 2017 09:05:50 +0000 (07:05 -0200)]
Fix dupli-frames (and other duplis)

Even non-group dupli objects need to get the overrides from somewhere.
Getting them from dupli_parent.

3 years agoMove ID recalc flags into dedicated field in ID
Sergey Sharybin [Fri, 15 Dec 2017 08:43:18 +0000 (09:43 +0100)]
Move ID recalc flags into dedicated field in ID

Currently this is a no-visible-changes change, but the idea is to use this
dedicated flag to tell which exact components of ID changed, make it more
granular than just OBJECT and OBJECT_DATA. Allow setting this field based
on what components new dependency graph flushed on evaluation.

3 years agoFix RNA crash for objects without collection properties
Dalai Felinto [Thu, 14 Dec 2017 22:17:00 +0000 (20:17 -0200)]
Fix RNA crash for objects without collection properties

This would happen if you tried to access the collection property for an object
that has not being evaluated by the depsgraph.

3 years agoDraw Manager: Texture space support for Curve and Metaball objects
Germano [Thu, 14 Dec 2017 19:53:27 +0000 (17:53 -0200)]
Draw Manager: Texture space support for Curve and Metaball objects

3 years agoFix broken collada from recent merge rBb83b6afe5572ae29b4ad105dd8001c3343e2205b.
Bastien Montagne [Thu, 14 Dec 2017 19:25:26 +0000 (20:25 +0100)]
Fix broken collada from recent merge rBb83b6afe5572ae29b4ad105dd8001c3343e2205b.

Please make minimal checks on what you do when merging!

3 years agoDraw Manager: Edit Curve Mode: Fix "Not freed memory blocks"
Germano [Thu, 14 Dec 2017 17:16:09 +0000 (15:16 -0200)]
Draw Manager: Edit Curve Mode: Fix "Not freed memory blocks"

`e_data.overlay_vert_sh` was not being freed when quitting blender.

3 years agoDraw Manager: Recalculate batch of Curves, Surfaces and Texts when a property is...
Germano [Thu, 14 Dec 2017 16:44:20 +0000 (14:44 -0200)]
Draw Manager: Recalculate batch of Curves, Surfaces and Texts when a property is changed

3 years agoFix crash with DispLists without vertices
Germano [Thu, 14 Dec 2017 16:31:08 +0000 (14:31 -0200)]
Fix crash with DispLists without vertices

Wee must return VertBuffers even when its size is zero

3 years agoDNA: Add dedicated recalc flag to ID
Sergey Sharybin [Thu, 14 Dec 2017 14:12:05 +0000 (15:12 +0100)]
DNA: Add dedicated recalc flag to ID

Currently unused, but this is where LIB_TAG_ID_RECALC* flags will go.

Also modified other DNA to make pointer property being followed by pointer.
Makes it easier to keep track of alignment and extend nested structures without
ruining anything.

3 years agoEevee: Support for objects of type Curve, Surface and Text
Germano [Thu, 14 Dec 2017 14:22:55 +0000 (12:22 -0200)]
Eevee: Support for objects of type Curve, Surface and Text

3 years agoSupport for Batchs split by material for objects of type Curve, Surface, and Text
Germano [Thu, 14 Dec 2017 14:21:38 +0000 (12:21 -0200)]
Support for Batchs split by material for objects of type Curve, Surface, and Text

**ToDo:**
- add vertbuff for UV (what can be adapted from `dl_surf_to_renderdata`)

3 years agoDepsgraph: Cleanup, use more explicit way to fill in a structure
Sergey Sharybin [Thu, 14 Dec 2017 10:09:18 +0000 (11:09 +0100)]
Depsgraph: Cleanup, use more explicit way to fill in a structure

The possible issue with just listing arguments is that it might not be clear
what particular value is used for. For example, is it a scene itself, or is
it a parent scene?

Not as if it's not very clear now, but better be explicit for the future,
and me reading code in 10 years.

3 years agoMerge branch 'master' into blender2.8
Campbell Barton [Thu, 14 Dec 2017 01:51:26 +0000 (12:51 +1100)]
Merge branch 'master' into blender2.8

3 years agoFix missing update for particles w/ fluids
Campbell Barton [Thu, 14 Dec 2017 01:06:36 +0000 (12:06 +1100)]
Fix missing update for particles w/ fluids

D2955 by @GonVas

3 years agoFix T53322: Collada export crash w/ shape keys
Campbell Barton [Wed, 13 Dec 2017 23:41:39 +0000 (10:41 +1100)]
Fix T53322: Collada export crash w/ shape keys

D2958 by @cmbasnett

3 years agoObject selection: Fixing cases where old selection flag was used
Dalai Felinto [Wed, 13 Dec 2017 18:24:37 +0000 (16:24 -0200)]
Object selection: Fixing cases where old selection flag was used

Basically these operators (select grouped object hooks and object select mode/less)
were not working in 2.8.

3 years agoOutliner: Fix selection drawing
Dalai Felinto [Wed, 13 Dec 2017 18:23:56 +0000 (16:23 -0200)]
Outliner: Fix selection drawing

Outliner was using the old selection flag to show selected objects.
So if you selected an object in the outliner it would keep "selected"
(drawn in yellow) even after you selected another object.

3 years agoDepsgraph: it is still possible to have non-object to use OB_RECALC_DATA tag
Sergey Sharybin [Wed, 13 Dec 2017 15:39:03 +0000 (16:39 +0100)]
Depsgraph: it is still possible to have non-object to use OB_RECALC_DATA tag

Those flags are to be redone...

3 years agoComment out and tag unused bit as unused
Sergey Sharybin [Wed, 13 Dec 2017 15:34:13 +0000 (16:34 +0100)]
Comment out and tag unused bit as unused

3 years agoDepsgraph: Move data update tag to object->data itself
Sergey Sharybin [Wed, 13 Dec 2017 15:32:08 +0000 (16:32 +0100)]
Depsgraph: Move data update tag to object->data itself

3 years agoDepsgraph / Object update: Query data update flag from data itself
Sergey Sharybin [Wed, 13 Dec 2017 15:25:01 +0000 (16:25 +0100)]
Depsgraph / Object update: Query data update flag from data itself

3 years agoRNA: Query is_updated flag from object data ID's rather than from object itself
Sergey Sharybin [Wed, 13 Dec 2017 15:22:35 +0000 (16:22 +0100)]
RNA: Query is_updated flag from object data ID's rather than from object itself

3 years agoMasks: Remove unused function
Sergey Sharybin [Wed, 13 Dec 2017 15:14:08 +0000 (16:14 +0100)]
Masks: Remove unused function

It was used by old dependency graph. New one does things differently.

3 years agoComment out and tag unused bit as unused
Sergey Sharybin [Wed, 13 Dec 2017 15:05:20 +0000 (16:05 +0100)]
Comment out and tag unused bit as unused

3 years agoDepsgraph / Du[plication: Remove workaround flag from ID
Sergey Sharybin [Wed, 13 Dec 2017 14:56:18 +0000 (15:56 +0100)]
Depsgraph / Du[plication: Remove workaround flag from ID

Animation does no longer tag IDs as updated, so flag is not
needed anymore.

3 years agoDepsgraph / Animation: Rmove direct ID tagging from animation code
Sergey Sharybin [Wed, 13 Dec 2017 14:53:04 +0000 (15:53 +0100)]
Depsgraph / Animation: Rmove direct ID tagging from animation code

New dependency graph is supposed to have relation from animation node to
the node which corresponds to a property which is modified by that curve.
This means it is up to dependency graph to flush recalc flags, and no
manual control is needed in the animation code.

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Wed, 13 Dec 2017 14:07:42 +0000 (15:07 +0100)]
Merge branch 'master' into blender2.8

3 years agoFix T53550: E hotkey not working after the color-band picker commit
Ray Molenkamp [Wed, 13 Dec 2017 13:59:44 +0000 (06:59 -0700)]
Fix T53550: E hotkey not working after the color-band picker commit

Related to D2886, the color-band picker was lacking a poll function.

3 years agoDepsgraph: Cleanup, use less explicit checks of LIB_TAG_ID_RECALC_DATA
Sergey Sharybin [Wed, 13 Dec 2017 13:39:56 +0000 (14:39 +0100)]
Depsgraph: Cleanup, use less explicit checks of LIB_TAG_ID_RECALC_DATA

This is a part of ongoing work in Blender 2.8, where we need to replace

  `object->id.tag & LIB_TAG_ID_RECALC_DATA`

with

  `object->data->id.tag & LIB_TAG_ID_RECALC`

Should be no user measurable difference.

3 years agoMerge branch 'master' into blender2.8
Sergey Sharybin [Wed, 13 Dec 2017 13:24:44 +0000 (14:24 +0100)]
Merge branch 'master' into blender2.8

3 years agoFix T51461: Outliner: Problems removing multiple collections in sequence
Danrae Pray [Wed, 13 Dec 2017 11:49:34 +0000 (09:49 -0200)]
Fix T51461: Outliner: Problems removing multiple collections in sequence

We now select the LayerCollection at index 0 for the active ViewLayer after a
collection deletion operation.

Added some functions to query outliner tree data & get LayerCollection
by index using a similar approach as we do for SceneCollection indexing.

With warning and style cleanups by Dalai Felinto.

Reviewers: dfelinto

Tags: #bf_blender_2.8

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