6 months agoFix T61072: missing viewport update when setting render border in image editor.
Brecht Van Lommel [Thu, 31 Jan 2019 17:00:46 +0000 (18:00 +0100)]
Fix T61072: missing viewport update when setting render border in image editor.

6 months agoFix T61013: changing top/status bar editor type can be changed with shortcut.
Brecht Van Lommel [Thu, 31 Jan 2019 15:55:04 +0000 (16:55 +0100)]
Fix T61013: changing top/status bar editor type can be changed with shortcut.

6 months agoCleanup: avoid some unnecessary inverse matrix math.
Brecht Van Lommel [Thu, 31 Jan 2019 11:36:00 +0000 (12:36 +0100)]
Cleanup: avoid some unnecessary inverse matrix math.

6 months agoFix wrong sculpt constant detail description.
Brecht Van Lommel [Thu, 31 Jan 2019 14:55:33 +0000 (15:55 +0100)]
Fix wrong sculpt constant detail description.

6 months agoFix T60836: Stretch to flickers when vertex group is used
Sergey Sharybin [Thu, 31 Jan 2019 16:57:01 +0000 (17:57 +0100)]
Fix T60836: Stretch to flickers when vertex group is used

Missing relation to object transform. Needed to convert vertex
position from local target object space to a local space of the

6 months agoFix T61046: Object with cloth jumps around
Sergey Sharybin [Thu, 31 Jan 2019 16:38:01 +0000 (17:38 +0100)]
Fix T61046: Object with cloth jumps around

Was happening due to missing relation from geometry to
transform component. Did not happen in old dependency
graph because that one could never evaluate geometry
prior to transform.

6 months agoFix T61061: Scopes in image editor are not updating
Sergey Sharybin [Thu, 31 Jan 2019 16:15:24 +0000 (17:15 +0100)]
Fix T61061: Scopes in image editor are not updating

Scopes were moved to properties area, so need to adjust
the optimization part of tagging.

Ideally, tagging will always happen (and happen for free)
and then drawing code will update scopes when they are
actually displayed. But this is outside of the scope of
this fix since requires some design changes.

6 months agoFix T59339: Particle render without baking issues
Sergey Sharybin [Thu, 31 Jan 2019 15:53:19 +0000 (16:53 +0100)]
Fix T59339: Particle render without baking issues

The issue was caused by dependency graph resetting particles
when evaluating copy-on-write version of object. Solved by
only doing reset from dependency graph on user edits.

Other issue was caused by modifier itself trying to compare
topology and reset particles when number of vertices or faces
changed. This isn't reliable, since topology might change even
with same number of elements. But also, since copy-on-written
object initially always have those fields zero-ed the reset
was happening on every F12.

The latter issue is solved by moving reset from modifier stack
to places where we exit edit/paint modes which might be changing

There is still weird issue of particles generated at some
weird location after tapping tab twice, but this is not a new
issue in 2.8 branch and is to be looked separately.

6 months agoParticles: Fixes for synchronization to original
Sergey Sharybin [Thu, 31 Jan 2019 13:57:58 +0000 (14:57 +0100)]
Particles: Fixes for synchronization to original

Was missing synchronization of current frame to the original one,
which is one of the issues why point cache does not properly reset
on edits.

Also clear recalc flag on original particle system.

Ideally we need to get rid of recalc on a particle system, since
that is not really covered by tagging system of dependency graph.

6 months agoRemove direct shape key drivers evaluaiton in object update
Sergey Sharybin [Thu, 31 Jan 2019 12:02:09 +0000 (13:02 +0100)]
Remove direct shape key drivers evaluaiton in object update

This is now hanbdled by the nodes in dependency graph.

6 months agoDepsgraph: Comb code to a better state all over
Sergey Sharybin [Thu, 31 Jan 2019 11:56:40 +0000 (12:56 +0100)]
Depsgraph: Comb code to a better state all over

Some summary of changes:

- Don't use DEG prefix for types and enumerator values:
  the code is already inside DEG namespace.

- Put code where it locally belongs to: avoid having one
  single header file with all sort of definitions in it.

- Take advantage of modern C++11 enabled by default.

6 months agoAdd C++ guards to some blenlib headers
Sergey Sharybin [Thu, 31 Jan 2019 13:22:46 +0000 (14:22 +0100)]
Add C++ guards to some blenlib headers

6 months agoFix T61030: Drivers for shape keys not evaluated in correct order
Sergey Sharybin [Thu, 31 Jan 2019 09:40:38 +0000 (10:40 +0100)]
Fix T61030: Drivers for shape keys not evaluated in correct order

Was happening when value of one shape key was driving property of
another shape key of same datablock.

Solved by making shape key blocks properties more granular.

6 months agoDepsgraph: Specify whether RNA path to be resolved as entry or exit
Sergey Sharybin [Thu, 31 Jan 2019 09:18:39 +0000 (10:18 +0100)]
Depsgraph: Specify whether RNA path to be resolved as entry or exit

Makes it more explicit whether RNA property is used as a source
dependency for something else, or whether some other dependency
is being hooked up to evaluate that property.

6 months agoCleanup: Spelling in comment
Sergey Sharybin [Thu, 31 Jan 2019 08:59:05 +0000 (09:59 +0100)]
Cleanup: Spelling in comment

6 months agoDepsgraph: Use more correct update source for an internal tags
Sergey Sharybin [Wed, 30 Jan 2019 10:23:44 +0000 (11:23 +0100)]
Depsgraph: Use more correct update source for an internal tags

Dependency graph will poke some IDs for recalc after finishing building.
Those shouldn't be considered as a user edit.

6 months agoDepsgraph: Use more clear name for enumerator
Sergey Sharybin [Wed, 30 Jan 2019 10:21:34 +0000 (11:21 +0100)]
Depsgraph: Use more clear name for enumerator

Matches enumerator items and type name.

6 months agoFix T61032: Switching to sculpt tab causes undo to set object mode
Campbell Barton [Thu, 31 Jan 2019 11:55:29 +0000 (22:55 +1100)]
Fix T61032: Switching to sculpt tab causes undo to set object mode

Workspace switching changed modes w/o the 3D view,
causing sculpt undo's poll function to fail.

Applied the same logic for texture paint too.

6 months agoFix T60996: Dyntopo flood fill fails due to missing ob->imat
Jacques Lucke [Thu, 31 Jan 2019 11:42:51 +0000 (12:42 +0100)]
Fix T60996: Dyntopo flood fill fails due to missing ob->imat

Reviewers: brecht

Differential Revision:

6 months agoFix: allow curve of driver to be evaluated individually
Jacques Lucke [Thu, 31 Jan 2019 11:17:43 +0000 (12:17 +0100)]
Fix: allow curve of driver to be evaluated individually

This is necessary when adding a new keyframe to a fcurve
that also has a driver.

Reviewers: brecht, campbellbarton

Differential Revision:

6 months agoFix T59495, T59992, T59904, T59178, T60598: broken keyframed value editing.
Brecht Van Lommel [Tue, 29 Jan 2019 10:59:17 +0000 (11:59 +0100)]
Fix T59495, T59992, T59904, T59178, T60598: broken keyframed value editing.

This removes a bunch of animation/driver evaluations and recalc flags that
should be redundant in the new depsgraph, and were incorrectly affecting
the evaluated scene in a permanent way.

Still two cases that could be removed if the depsgraph is improved, in
BKE_object_handle_data_update and BKE_cachefile_update_frame.

For physics subframe interpolation there are also still calls to
BKE_object_where_is_calc that should ideally be removed as well, though
they are not known to cause keyframing bugs.

Differential Revision:

6 months agoDepsgraph: remove features incompatible with new system.
Brecht Van Lommel [Mon, 28 Jan 2019 16:52:46 +0000 (17:52 +0100)]
Depsgraph: remove features incompatible with new system.

Some features are incompatible with multithreading and reliable evaluation
of dependencies. We are now removing them as part of a bigger cleanup to
fix bugs in keyframing and invalid animation evaluations.

* Dupliframes have been removed. This was a hack added before there were
  more powerful features like the array modifier.
* Slow parent has been removed, never worked in 2.8. It was always
  unreliable for use in production due to depending on whatever frame was
  previously evaluated, which was not always the previous frame.
* Particle instanced objects used to have their transform evaluated at
  the particle time. Now it always gets the current time transform.
* Boids can no longer do predictive avoidance of force field objects,
  but still for other particles.

Differential Revision:

6 months agoFix T60432: Blender crashes when dragging objects from other scene from outliner.
Bastien Montagne [Thu, 31 Jan 2019 10:02:51 +0000 (11:02 +0100)]
Fix T60432: Blender crashes when dragging objects from other scene from outliner.

6 months agoSculpt: disable undo flag for sculpt mask lasso
Campbell Barton [Thu, 31 Jan 2019 07:48:59 +0000 (18:48 +1100)]
Sculpt: disable undo flag for sculpt mask lasso

While this is harmless, it did cause T55399 in the past.

Sculpt adds it's own undo steps, so don't request the operator type
to do it too.

This is consistent with other sculpt operators.

6 months agoFix T59293: Can't assign shortcut to undo history
Campbell Barton [Thu, 31 Jan 2019 06:27:46 +0000 (17:27 +1100)]
Fix T59293: Can't assign shortcut to undo history

6 months agoCleanup: use doxy comments, clarify some text
Campbell Barton [Thu, 31 Jan 2019 05:22:25 +0000 (16:22 +1100)]
Cleanup: use doxy comments, clarify some text

6 months agoFix edit-mesh undo using the current selection
Campbell Barton [Thu, 31 Jan 2019 05:02:23 +0000 (16:02 +1100)]
Fix edit-mesh undo using the current selection

Any meshes selected would be added to the mode when reading undo.

6 months agoCleanup: style, unused variable
Campbell Barton [Thu, 31 Jan 2019 04:54:37 +0000 (15:54 +1100)]
Cleanup: style, unused variable

6 months agoCleanup: remove EM_IGNORE_LAYER
Campbell Barton [Thu, 31 Jan 2019 04:36:24 +0000 (15:36 +1100)]
Cleanup: remove EM_IGNORE_LAYER

Call ED_object_editmode_enter_ex instead.

6 months agoFix T61047: Undo editmesh separate crashes
Campbell Barton [Thu, 31 Jan 2019 04:06:00 +0000 (15:06 +1100)]
Fix T61047: Undo editmesh separate crashes

Favour G_MAIN in functions that might free it.

6 months agoFix image paint undo memory leak
Campbell Barton [Thu, 31 Jan 2019 01:35:12 +0000 (12:35 +1100)]
Fix image paint undo memory leak

6 months agoFix T60660: Texture paint undo removes image
Campbell Barton [Thu, 31 Jan 2019 01:01:38 +0000 (12:01 +1100)]
Fix T60660: Texture paint undo removes image

6 months agoUndo System: add Main argument to encode/decode
Campbell Barton [Thu, 31 Jan 2019 00:34:57 +0000 (11:34 +1100)]
Undo System: add Main argument to encode/decode

Needed since we don't always have the context,
and avoids adding G_MAIN into undo callbacks.

6 months agoFix T61028: Crash when entering wireframe view
Clément Foucault [Thu, 31 Jan 2019 00:33:59 +0000 (01:33 +0100)]
Fix T61028: Crash when entering wireframe view

6 months agoCleanup: add trailing commas
Campbell Barton [Wed, 30 Jan 2019 21:28:56 +0000 (08:28 +1100)]
Cleanup: add trailing commas

Improve clang-format output.

6 months agoFix T60378: All armatures reset positions on linked collection when ctrl+z used on...
Bastien Montagne [Wed, 30 Jan 2019 19:32:28 +0000 (20:32 +0100)]
Fix T60378: All armatures reset positions on linked collection when ctrl+z used on anything.

Issue actually exists since ages, probably 2.7x update system forced all
armature proxies to be fully refreshed after an undo?

In any case, proxy_from should only be reset for 'local' proxies (i.e.
directly linked datablocks), not for linked proxies...

6 months agoMerge branch 'blender2.7'
Brecht Van Lommel [Wed, 30 Jan 2019 17:36:54 +0000 (18:36 +0100)]
Merge branch 'blender2.7'

6 months agoCleanup: use better names for depsgraph driver relations.
Brecht Van Lommel [Wed, 30 Jan 2019 12:31:44 +0000 (13:31 +0100)]
Cleanup: use better names for depsgraph driver relations.

Both the driven properties and driver targets were called targets, now make
a distinction.

6 months agoGP: Remove DEG_get_original_id() from draw manager
Antonioya [Wed, 30 Jan 2019 15:26:06 +0000 (16:26 +0100)]
GP: Remove DEG_get_original_id() from draw manager

Only keep this function when drawing to avoid COW overhead that reduce performance.

After some changes I did some time ago, the use of original ID was not required and this only added depsgraph overhead and problems.

This change solves the problems with updates in render mode.

Related to T57484 and the changes requested by Sergey.

6 months agoFix T61017: node_shader_utils did not handle diffuse_color correctly
Jacques Lucke [Wed, 30 Jan 2019 13:37:09 +0000 (14:37 +0100)]
Fix T61017: node_shader_utils did not handle diffuse_color correctly

6 months agoFix default material using zero alpha
Campbell Barton [Wed, 30 Jan 2019 12:53:40 +0000 (23:53 +1100)]
Fix default material using zero alpha

6 months agoFix (unreported) memleak when copying object and its material with GP settings.
Bastien Montagne [Wed, 30 Jan 2019 11:00:58 +0000 (12:00 +0100)]
Fix (unreported) memleak when copying object and its material with GP settings.

Like... seriously?

6 months agoFix T60957: ASSERT when reloading double-linked file.
Bastien Montagne [Wed, 30 Jan 2019 10:46:49 +0000 (11:46 +0100)]
Fix T60957: ASSERT when reloading double-linked file.

Kind of funny to see that this has been missing presumably since the
first version of library linking in Blender, and only gets noticed now.
Then again, that was not really a critical issue, iirc write code
ensures all libraries directly used get properly written, even if flags
are incorrect.

6 months agoCleanup: use proper bitflag operators.
Bastien Montagne [Wed, 30 Jan 2019 10:38:13 +0000 (11:38 +0100)]
Cleanup: use proper bitflag operators.

6 months agoCleanup: Unused function argument
Sergey Sharybin [Wed, 30 Jan 2019 10:02:06 +0000 (11:02 +0100)]
Cleanup: Unused function argument

6 months agoCycles: improved rounding of sample chunks for resumable renders
Sybren A. Stüvel [Tue, 29 Jan 2019 17:08:12 +0000 (18:08 +0100)]
Cycles: improved rounding of sample chunks for resumable renders

When using `--cycles-resumable-num-chunks N` to render a subset of the
samples, having N close to the total number of samples causes rounding

For example, a file configured for 250 samples and 150 chunks should
have 1.6666 sample per chunk. The old code rounded this to 2 samples per
chunk, which would result in too many samples being rendered. When
rendering a single chunk this doesn't matter much, but when larger chunk
ranges are rendered with `--cycles-resumable-start-chunk` and
`--cycles-resumable-end-chunk` the rounding errors start to add up.

By multiplying with the number of chunks to render first, and only round
to integers after that, this issue is solved. In the above example,
rendering 3 chunks will correctly render 5 samples rather than 6.

When the requested number of chunks is larger than the number of samples
there will be duplicate samples (that is, sample N appearing both in
chunk M and M+1). In this case a warning is printed to stderr.

This is needed for T50977 Progressive render: use non-uniform sample

Reviewed by: sergey

Differential Revision:

6 months agoFix T60974: Dyntopo crash on undo after object deleted
Campbell Barton [Wed, 30 Jan 2019 09:44:15 +0000 (20:44 +1100)]
Fix T60974: Dyntopo crash on undo after object deleted

Add the ability for undo steps to request memfile undo step added after
them, useful for mode switching, where we need the data to exist for
undo to enter the mode.

6 months agoVersioning: add renaming utility function
Campbell Barton [Tue, 29 Jan 2019 22:36:38 +0000 (09:36 +1100)]
Versioning: add renaming utility function

Avoids accidents creating duplicate names.

Also ensure screens are sorted on rename.

6 months agoCleanup: line length
Campbell Barton [Tue, 29 Jan 2019 22:03:37 +0000 (09:03 +1100)]
Cleanup: line length

6 months agoPartial fix for T60982: Editable anim settings in linked action.
Bastien Montagne [Tue, 29 Jan 2019 20:47:15 +0000 (21:47 +0100)]
Partial fix for T60982: Editable anim settings in linked action.

This is only partially working, because some bAnimListElem items do not
have any ID pointer set (for wome mysterious reason...), notably the
'group' ones.

Will re-assign to @aligorith for that, this code is rather complicated
and hard to follow (with all those macros ;) ).

6 months agoCleanup: typo in comment.
Bastien Montagne [Tue, 29 Jan 2019 20:46:59 +0000 (21:46 +0100)]
Cleanup: typo in comment.

6 months agoWorkbench: Make Material transparency part of the rgba color picker
Clément Foucault [Tue, 29 Jan 2019 19:33:51 +0000 (20:33 +0100)]
Workbench: Make Material transparency part of the rgba color picker

It is only used for solid mode for now but could be used by eevee in the

6 months agoWorkbench: Opti: Only request OIT buffers if needed
Clément Foucault [Tue, 29 Jan 2019 18:57:12 +0000 (19:57 +0100)]
Workbench: Opti: Only request OIT buffers if needed

6 months agoWorkbench: Support transparency from object color alpha
Clément Foucault [Tue, 29 Jan 2019 18:56:22 +0000 (19:56 +0100)]
Workbench: Support transparency from object color alpha

Support the alpha channel use of the object color in solid mode.

The Transparency effect is still using the Xray algorithm and not
true Alpha blending.

6 months agoUI: Add Dynamic Topology toggle entry to Sculpt menu
Pablo Vazquez [Tue, 29 Jan 2019 17:58:34 +0000 (18:58 +0100)]
UI: Add Dynamic Topology toggle entry to Sculpt menu

Helps to find the shortcut (Ctrl+D) which wasn't exposed anywhere else than in search.

6 months agoFix: Add units to text offset_x and offset_y properties
Joel Godin [Tue, 29 Jan 2019 17:31:39 +0000 (18:31 +0100)]
Fix: Add units to text offset_x and offset_y properties

Differential Revision:

6 months agoFix T60067: some modifiers don't use shape keys correctly
Jacques Lucke [Tue, 29 Jan 2019 16:57:21 +0000 (17:57 +0100)]
Fix T60067: some modifiers don't use shape keys correctly

6 months agoCycles: delay CUDA and OpenCL initialization to avoid driver crashes.
Brecht Van Lommel [Tue, 29 Jan 2019 15:39:30 +0000 (16:39 +0100)]
Cycles: delay CUDA and OpenCL initialization to avoid driver crashes.

We've had many reported crashes on Windows where we suspect there is a
corrupted OpenCL driver. The purpose here is to keep Blender generally
usable in such cases.

Now it always shows None / CUDA / OpenCL in the preferences, and only when
selecting one will it reveal if there are any GPUs available. This should
avoid crashes when opening the preferences or on startup.

Differential Revision:

6 months agoAdd missing Shader FX remapping to library query
Sergey Sharybin [Tue, 29 Jan 2019 14:41:00 +0000 (15:41 +0100)]
Add missing Shader FX remapping to library query

6 months agoWorkbench: Add "Shadow" factor to Xray
Clément Foucault [Tue, 29 Jan 2019 02:46:57 +0000 (03:46 +0100)]
Workbench: Add "Shadow" factor to Xray

This just maintain more parity accross the 2 visuals. Note that this is not
"real shadowing" just the facing factor shadowing.

6 months agoWorkbench: Add transparency support for materials
Clément Foucault [Tue, 29 Jan 2019 02:06:59 +0000 (03:06 +0100)]
Workbench: Add transparency support for materials

This adds the posibility of having certain materials transparent in solid
mode. The option is (for now) per material only and thus only shows in
material color mode.

This uses the same rendering technique as Xray mode.

Note that objects are not considered transparent for selection with this.

6 months agoObject Mode: Fix reading past buffer end when drawing camera
Clément Foucault [Tue, 29 Jan 2019 01:41:16 +0000 (02:41 +0100)]
Object Mode: Fix reading past buffer end when drawing camera

6 months agoWorkbench: Depth Of Field: Improve noise and Large radius
Clément Foucault [Mon, 28 Jan 2019 17:49:00 +0000 (18:49 +0100)]
Workbench: Depth Of Field: Improve noise and Large radius

- Add noise to remove undersampling artifact
- Create 2 mipmaps to the scene color buffer in order to have bigger blurs
- Replace blur2 with a 3x3 median filter that doesn't dilate the highlights
- Use temporal accumulation to remove noise

For some reason all of this exacerbate some bleeding issues happening on
far foreground elements from near foreground elements. The actual problem
was already happening before but was not really noticeable. It needs some
more work to be fixed.

6 months agoFix duplicate brushes from recent startup files
Campbell Barton [Tue, 29 Jan 2019 12:43:11 +0000 (23:43 +1100)]
Fix duplicate brushes from recent startup files

Default versioning caused duplicates when the startup was re-saved.

See c305759762aa3

6 months agoFix T60226: Inset not working well on very small faces
Jacques Lucke [Tue, 29 Jan 2019 12:39:21 +0000 (13:39 +0100)]
Fix T60226: Inset not working well on very small faces

The inset operator uses 0.01 as default for the inset.
When the face is very small than this default is very confusing (see T60226).

The simplest fix seems to be to just use 0 as default.
This is similar to the extrude operator which uses 0 as default as well.

Reviewers: brecht, campbellbarton

Differential Revision:

6 months agoBevel - better corner shapes for inner arc miters.
Howard Trickey [Tue, 29 Jan 2019 12:21:59 +0000 (07:21 -0500)]
Bevel - better corner shapes for inner arc miters.

The subdivision method for getting corner shapes has a fullness
parameter which had been set by eye before. This change uses fullness
as found by offline search process to best match the superellipsoid
octant in the cube corner case (except cube corner case is still handled
by other code). This somewhat improves the look of cube corners with
inner arc miters, however.

6 months agoRevert "3D Text: avoid checking null character's text on path"
Campbell Barton [Tue, 29 Jan 2019 11:50:55 +0000 (22:50 +1100)]
Revert "3D Text: avoid checking null character's text on path"

This reverts commit 8a379e3460048906306042145052d5d7f3bb859c.

Caused T58284

6 months agoRevert "3D Text: avoid checking null character's text on path"
Campbell Barton [Tue, 29 Jan 2019 11:50:55 +0000 (22:50 +1100)]
Revert "3D Text: avoid checking null character's text on path"

This reverts commit 8a379e3460048906306042145052d5d7f3bb859c.

Caused T58284

6 months agoFix T59924: Blender 2.8 particle system error
Sergey Sharybin [Tue, 29 Jan 2019 09:16:16 +0000 (10:16 +0100)]
Fix T59924: Blender 2.8 particle system error

Was missing relation from particle keyed targets to the
particle system, which caused some race conditions.

6 months agoDRW: support clipping for all lamp types
Campbell Barton [Tue, 29 Jan 2019 08:57:35 +0000 (19:57 +1100)]
DRW: support clipping for all lamp types

6 months agoFix CLOG_STR_AT_SEVERITY macro
Campbell Barton [Tue, 29 Jan 2019 06:28:44 +0000 (17:28 +1100)]

Part of D4277 by @sobakasu

6 months agoFix duplicate brushes being added to startup
Campbell Barton [Tue, 29 Jan 2019 05:19:28 +0000 (16:19 +1100)]
Fix duplicate brushes being added to startup

All builtin templates have this brush.

6 months agoFix T60809: Crash undoing object rename in edit-mode
Campbell Barton [Tue, 29 Jan 2019 03:31:00 +0000 (14:31 +1100)]
Fix T60809: Crash undoing object rename in edit-mode

Currently names are used for edit-mode undo-steps,
any changes to Main ID names cause lookup failure (crashing).

This commit ensures any undo steps that use ID lookups have the same
mem-file undo state loaded that was used to encode the steps.

Renaming also has an undo push added (last commit).

6 months agoLibrary: tag memfile undo for writing after rename
Campbell Barton [Tue, 29 Jan 2019 03:28:55 +0000 (14:28 +1100)]
Library: tag memfile undo for writing after rename

Needed for T60809 fix.

6 months agoCleanup: Remove unused MTex.texflag
Campbell Barton [Mon, 28 Jan 2019 21:52:56 +0000 (08:52 +1100)]
Cleanup: Remove unused MTex.texflag

6 months agoCleanup: remove immediate mode TODO
Campbell Barton [Mon, 28 Jan 2019 21:40:46 +0000 (08:40 +1100)]
Cleanup: remove immediate mode TODO

We've managed without these functions and can add them if needed,
this TODO isn't helping.

6 months agoCleanup: replace attrib w/ attr
Campbell Barton [Mon, 28 Jan 2019 20:46:25 +0000 (07:46 +1100)]
Cleanup: replace attrib w/ attr

Also rename GPUVertexAttribs to GPUVertAttrLayers,
avoids confusion with GPUVertAttr which isn't closely related.

6 months agoMerge branch 'blender2.7'
Bastien Montagne [Mon, 28 Jan 2019 21:27:45 +0000 (22:27 +0100)]
Merge branch 'blender2.7'


6 months agoFix T60896: Missing update for Auto Texture Space.
Bastien Montagne [Mon, 28 Jan 2019 21:25:26 +0000 (22:25 +0100)]
Fix T60896: Missing update for Auto Texture Space.

6 months agoOutliner: Enable new faster 'Delete Hierarchy' code by default.
Bastien Montagne [Mon, 28 Jan 2019 20:57:56 +0000 (21:57 +0100)]
Outliner: Enable new faster 'Delete Hierarchy' code by default.

Some more tests showed no issue, so now feeling reasonably confident.

Old, 'safer' one remains available through setting debug value to 666,
for a few more weeks.

6 months agoFix several missing cases of copy func for modifiers.
Bastien Montagne [Mon, 28 Jan 2019 20:48:09 +0000 (21:48 +0100)]
Fix several missing cases of copy func for modifiers.

Any time a modifier data has non-ID pointer, it should have own copy
function (and also take care of proper init/reset in its init callback).

6 months agoFix T60840: Serious memleak in solidify modifier.
Bastien Montagne [Mon, 28 Jan 2019 20:46:05 +0000 (21:46 +0100)]
Fix T60840: Serious memleak in solidify modifier.

Another one painful to pin down, due to misleading info in report, and
more than anything else, waaayyyyy too complex example file!

6 months agoFix T60944: Add Tablet eraser support to annotations usin pen
Antonioya [Mon, 28 Jan 2019 16:46:11 +0000 (17:46 +0100)]
Fix T60944: Add Tablet eraser support to annotations usin pen

6 months agoFix T60566: Warnings in rigid body and certain conrfiguration
Sergey Sharybin [Mon, 28 Jan 2019 15:38:12 +0000 (16:38 +0100)]
Fix T60566: Warnings in rigid body and certain conrfiguration

Was visible when constraint object is not directly visible via
view layers, need to indirectly pull it into the graph.

6 months agoFix T60599: Multires crash after doing dyntopo sculpt
Sergey Sharybin [Mon, 28 Jan 2019 15:14:30 +0000 (16:14 +0100)]
Fix T60599: Multires crash after doing dyntopo sculpt

6 months agoFix T59963: Can't manipulate hair keys with G, R, S or mirror transforms
Sergey Sharybin [Mon, 28 Jan 2019 14:45:34 +0000 (15:45 +0100)]
Fix T59963: Can't manipulate hair keys with G, R, S or mirror transforms

Need to pass proper evaluated mesh to calculate hair matrix.

6 months agoDRW: support clipping for object & lamp centers
Campbell Barton [Mon, 28 Jan 2019 13:13:42 +0000 (00:13 +1100)]
DRW: support clipping for object & lamp centers

6 months agomakesrna: write files w/ spaces instead of tabs
Campbell Barton [Mon, 28 Jan 2019 12:06:37 +0000 (23:06 +1100)]
makesrna: write files w/ spaces instead of tabs

We're preparing to move to spaces, having literal tabs in strings
complicates conversion a little, move makesrna to spaces now.

6 months agoFix blenderplayer build after OpenMP changes.
Brecht Van Lommel [Mon, 28 Jan 2019 12:04:20 +0000 (13:04 +0100)]
Fix blenderplayer build after OpenMP changes.

6 months agoMake scene statistics to respect locked interface
Sergey Sharybin [Mon, 28 Jan 2019 11:47:39 +0000 (12:47 +0100)]
Make scene statistics to respect locked interface

Interface is being locked when some destructive operations
are called from non-main thread.

This was causing crash with particles in T60065.

6 months agoMerge branch 'blender2.7'
Campbell Barton [Mon, 28 Jan 2019 11:27:00 +0000 (22:27 +1100)]
Merge branch 'blender2.7'

6 months agoFix T60127: Particles texture mapping coordinates objects
Sergey Sharybin [Mon, 28 Jan 2019 11:17:54 +0000 (12:17 +0100)]
Fix T60127: Particles texture mapping coordinates objects

Part of the issue was a missing relation. Other part wes
aboud object's inverse matrix never being updated.

6 months agoCleanup: unused struct declarations
Campbell Barton [Mon, 28 Jan 2019 11:15:46 +0000 (22:15 +1100)]
Cleanup: unused struct declarations

6 months agoCleanup: sort forward declarations of enum & struct
Campbell Barton [Mon, 28 Jan 2019 11:08:29 +0000 (22:08 +1100)]
Cleanup: sort forward declarations of enum & struct

Done using:

6 months agoMerge branch 'blender2.7'
Brecht Van Lommel [Mon, 28 Jan 2019 11:05:51 +0000 (12:05 +0100)]
Merge branch 'blender2.7'

6 months agoCleanup: unused struct declarations
Campbell Barton [Mon, 28 Jan 2019 11:06:53 +0000 (22:06 +1100)]
Cleanup: unused struct declarations

6 months agoOSL: remove fresnel template that was not public domain.
Brecht Van Lommel [Mon, 28 Jan 2019 10:51:24 +0000 (11:51 +0100)]
OSL: remove fresnel template that was not public domain.

Convention is to only have public domain code templates. Also fixes wrong
license header in Cycles.

6 months agoFix T57069: macOS window contents scaling bug.
Brecht Van Lommel [Mon, 28 Jan 2019 10:58:00 +0000 (11:58 +0100)]
Fix T57069: macOS window contents scaling bug.

The cause of this is unclear, but delaying querying the native pixel size
appears to help in the one case I could reproduce.

6 months agoCleanup: sort forward declarations of enum & struct
Campbell Barton [Mon, 28 Jan 2019 10:08:24 +0000 (21:08 +1100)]
Cleanup: sort forward declarations of enum & struct

Done using:

6 months agoFix: use correct units for some bone properties
Scott Spadea [Mon, 28 Jan 2019 10:01:46 +0000 (11:01 +0100)]
Fix: use correct units for some bone properties

Differential Revision: