Brecht Van Lommel [Fri, 21 Dec 2018 16:05:56 +0000 (17:05 +0100)]
Merge branch 'blender2.7'
Brecht Van Lommel [Fri, 21 Dec 2018 16:02:04 +0000 (17:02 +0100)]
Cleanup: fix ATTR_FALLTHROUGH warnings.
Ref D3960.
Brecht Van Lommel [Fri, 21 Dec 2018 15:53:33 +0000 (16:53 +0100)]
Fix T59708: decimate modifier does not show face count before decimation.
Sergey Sharybin [Fri, 21 Dec 2018 15:50:59 +0000 (16:50 +0100)]
Fix T59691: Crash when deleting data-block video or audio in a video editor
Sergey Sharybin [Fri, 21 Dec 2018 15:49:55 +0000 (16:49 +0100)]
Cleanup: Indentation
Brecht Van Lommel [Fri, 21 Dec 2018 10:43:28 +0000 (11:43 +0100)]
Fix T59668: UV unwrap pinning bugs.
With multi object editing it creates the charts twice, which broke some
logic in the unwrapper.
Clément Foucault [Fri, 21 Dec 2018 14:59:13 +0000 (15:59 +0100)]
Workbench: Fix crash when using more than one metaball
Was caused by recent change in logic
Clément Foucault [Fri, 21 Dec 2018 14:43:50 +0000 (15:43 +0100)]
Fix T59608: Curves invisible in object mode
Brecht Van Lommel [Tue, 18 Dec 2018 17:18:00 +0000 (18:18 +0100)]
Fix inconsistent/broken Cycles object visibility for instances.
Object visibility is now handled by the depsgraph iterator, but this API
was incomplete as it made no distinction for visibility of the object itself,
particles and generated instances.
The depsgraph iterator API now includes information about which part of the
object is visible, and this is used by Cycles to replace the old custom logic.
Cycles and EEVEE visibility should now be consistent, which unfortunately does
means some subtle compatibility breakage for both.
Fixes T58956, T58202, T59284.
Differential Revision: https://developer.blender.org/D4109
Brecht Van Lommel [Fri, 21 Dec 2018 14:36:22 +0000 (15:36 +0100)]
Merge branch 'blender2.7' into master.
Sergey Sharybin [Fri, 21 Dec 2018 13:24:16 +0000 (14:24 +0100)]
Fix T57907: Crash with hair when switching between object and edit mode
Was only visible after going in and out (with some strokes inbetween)
hair edit mode. The edit structure was never freed during Blender
session for some reason. Now we free those when leaving particle
edit mode.
Sergey Sharybin [Fri, 21 Dec 2018 13:23:06 +0000 (14:23 +0100)]
Fix T59687: Crash when rendering animation
The issue was caused by shape keys datablock from evaluated mesh
being added to the main database.
This commit makes it so shape keys are not copied for the mesh
used as cage.
Brecht Van Lommel [Thu, 20 Dec 2018 13:45:55 +0000 (14:45 +0100)]
Update for moving blender2.8 to master.
Brecht Van Lommel [Fri, 21 Dec 2018 11:12:32 +0000 (12:12 +0100)]
Update .arcconfig for moving master to blender2.7 branch.
Brecht Van Lommel [Thu, 20 Dec 2018 13:42:01 +0000 (14:42 +0100)]
Update for moving master to blender2.7 branch.
Campbell Barton [Fri, 21 Dec 2018 10:29:04 +0000 (21:29 +1100)]
Correct orientation pie menu
Missing from recent orientation update.
Antonioya [Fri, 21 Dec 2018 10:26:58 +0000 (11:26 +0100)]
GP: Cleanup weird thickness scale
This code used old factor, but now this only adds complexity and makes code hard to understand.
Dalai Felinto [Tue, 18 Dec 2018 22:36:57 +0000 (20:36 -0200)]
Fix T57816: Crash when deleting recently orphaned collection
We were never removing the parent collection from a collection upon removal
of the parent.
Reviewers: mont29
Differential Revision: https://developer.blender.org/D4099
Alexander Gavrilov [Fri, 21 Dec 2018 09:09:49 +0000 (12:09 +0300)]
Fix T59673: wrong B-Bone handle references when duplicating bones.
Also fix and improve symmetrize behavior.
Campbell Barton [Fri, 21 Dec 2018 08:17:30 +0000 (19:17 +1100)]
Fix T59709: Light target gizmo scaling
Gizmo was scaling w/ object.
Antonioya [Fri, 21 Dec 2018 07:44:38 +0000 (08:44 +0100)]
GP: Move calculated center only for selected strokes
Antonioya [Fri, 21 Dec 2018 07:43:00 +0000 (08:43 +0100)]
GP: Cleanup API removing extra ID parameter
Campbell Barton [Fri, 21 Dec 2018 07:16:41 +0000 (18:16 +1100)]
Fix bug selecting verts in mixed edge/vert mode
Own regression from 2.7x when adding multi-object select support.
Campbell Barton [Fri, 21 Dec 2018 01:47:44 +0000 (12:47 +1100)]
RNA: naming, user-preferences -> preferences
Campbell Barton [Fri, 21 Dec 2018 00:40:47 +0000 (11:40 +1100)]
3D View: add object color drawing option
Has some advantages over existing options.
- Using material links color to rendering with no way to vary colors
if objects share a material.
- Random gives no control, objects may randomly have the same color,
duplicating an object often changes it's color.
Campbell Barton [Fri, 21 Dec 2018 00:38:38 +0000 (11:38 +1100)]
Cleanup: unused arg
Campbell Barton [Thu, 20 Dec 2018 23:46:26 +0000 (10:46 +1100)]
Cleanup: macro hygiene, line length
Clément Foucault [Thu, 20 Dec 2018 22:42:21 +0000 (23:42 +0100)]
Mesh Batch Cache: Fix missing flag for looptris indexbuf generation
Fix T59637: Crash report - Overlays -> Face Orientation causes crash
Clément Foucault [Thu, 20 Dec 2018 22:23:59 +0000 (23:23 +0100)]
Workbench: Fix wrong TEXTURE_DRAWING_ENABLED check and rework drawing logic
This makes the code easier to follow. Batches are now assumed to be not
NULL as the request system garatees it.
Campbell Barton [Thu, 20 Dec 2018 22:08:21 +0000 (09:08 +1100)]
UI: use smaller widget for expanding hidden region
The '+' widget to show a hidden region came too close to overlapping
the viewport navigation gizmo and text editor text.
Reduce size and use an arrow icon.
D4110 by @gnastacast
Campbell Barton [Thu, 20 Dec 2018 21:33:36 +0000 (08:33 +1100)]
Library: correct BKE_id_to_unique_string_key fix
Antonioya [Thu, 20 Dec 2018 20:25:29 +0000 (21:25 +0100)]
GP: Use only selected points to calc transform center
Antonioya [Thu, 20 Dec 2018 18:32:22 +0000 (19:32 +0100)]
GP: Enable center for Local Origins only
This produces very interesting effects when move using proportional editing.
Antonioya [Thu, 20 Dec 2018 18:15:01 +0000 (19:15 +0100)]
GP: Undo center calculation
This is breaking the transformation with falloff enabled.
Antonioya [Thu, 20 Dec 2018 16:35:59 +0000 (17:35 +0100)]
GP: Change default parameters for convert curves.
Now the link strokes is disabled by default.
Also some minor changes to adapt to new GP object.
Antonioya [Thu, 20 Dec 2018 16:14:03 +0000 (17:14 +0100)]
Fix T59648: Linking material to greasepencil object causes crash
Antonioya [Thu, 20 Dec 2018 15:52:03 +0000 (16:52 +0100)]
GP: Changes in API to make internal update
Now, the internal data is recalculated when add or remove a point.
The change in the API affect to stroke.points.add() that now requires a datablock parameter. This parameter is required to identify the datablock affected.
For example: stroke.points.add(gpencil, 1) instead of stroke.points.add(1)
This is the second try to fix T59600
Sergey Sharybin [Thu, 20 Dec 2018 15:48:41 +0000 (16:48 +0100)]
Merge branch 'master' into blender2.8
Sergey Sharybin [Thu, 20 Dec 2018 15:45:38 +0000 (16:45 +0100)]
Cycles: Fixes for recent curve robustness
The key indices were wrong: need to offset curve key index
by first curve key index. Also corrected calculation of the
interpolation step.
Annoyingly, can not reproduce this on a simple file, need
production rig. For the possible future look the following
file from Spring was used: 03_005_A.lighting.debug.blend
Jacques Lucke [Thu, 20 Dec 2018 12:39:02 +0000 (13:39 +0100)]
Fix T59672: UVs are not updating when changed in panel
Reviewers: brecht
Differential Revision: https://developer.blender.org/D4111
Antonioya [Thu, 20 Dec 2018 11:35:06 +0000 (12:35 +0100)]
Revert "GP: New Python update API functions (WIP)"
This reverts commit
e79f401ffa7d5354dde01073bbb4b7dd742fd32b.
The new API were against general design rules.
Jacques Lucke [Thu, 20 Dec 2018 12:36:25 +0000 (13:36 +0100)]
Fix T59674: context menu for channels not found
Sebastian Parborg [Thu, 20 Dec 2018 11:48:32 +0000 (12:48 +0100)]
Fix T59083: normal transform orientation ignores absolute grid snap.
Absolute grid snap now takes into account the transform local axis.
Differential Revision: https://developer.blender.org/D4069
Sebastian Koenig [Thu, 20 Dec 2018 10:27:51 +0000 (11:27 +0100)]
Fix for camera background images options not showing when using stereoscopy.
Differential Revision: https://developer.blender.org/D4098
Antonioya [Thu, 20 Dec 2018 11:35:06 +0000 (12:35 +0100)]
GP: New Python update API functions (WIP)
For strokes:
myframe.strokes.update(mystroke)
For datablock:
gpencil = bpy.data.grease_pencil['gpencil']
gpencil.update()
Still need a manual refresh of viewport.
Jacques Lucke [Thu, 20 Dec 2018 10:17:45 +0000 (11:17 +0100)]
Fix T57777: Decimate modifier face count does not work
Reviewers: brecht
Differential Revision: https://developer.blender.org/D4106
Jacques Lucke [Thu, 20 Dec 2018 09:58:50 +0000 (10:58 +0100)]
Fix T57045: Unhandled degenerate case in bevel code
Reviewers: howardt
Differential Revision: https://developer.blender.org/D4104
Jacques Lucke [Thu, 20 Dec 2018 09:55:30 +0000 (10:55 +0100)]
Fix T58404: Node/Socket grabbing with Lasso tool
Reviewers: brecht
Differential Revision: https://developer.blender.org/D4108
Campbell Barton [Thu, 20 Dec 2018 07:18:42 +0000 (18:18 +1100)]
Correct own error in
1ce9a142b6abd
Enum for scene orientations included default.
Campbell Barton [Thu, 20 Dec 2018 06:53:12 +0000 (17:53 +1100)]
Merge branch 'master' into blender2.8
Campbell Barton [Thu, 20 Dec 2018 06:50:36 +0000 (17:50 +1100)]
Fix T59074: BMesh intersect hangs
This is a degenerate intersection, exit early instead of hanging.
Campbell Barton [Thu, 20 Dec 2018 06:30:04 +0000 (17:30 +1100)]
Cleanup: naming
Campbell Barton [Thu, 20 Dec 2018 05:41:40 +0000 (16:41 +1100)]
Correct error in last commit
Campbell Barton [Thu, 20 Dec 2018 04:26:27 +0000 (15:26 +1100)]
Fix context menu w/o an active object
Also remove special case when no items are selected,
since this only has one or two menu items, one being the add menu
which can be better accessed from the header or add shortcut.
If the no-selection case is to have it's own alternate menu - it should
be more complete before enabling.
Campbell Barton [Thu, 20 Dec 2018 03:59:36 +0000 (14:59 +1100)]
Keymap: use action-tweak for node re-route
Avoids same kinds of conflicts as link-cut w/ box select.
Campbell Barton [Thu, 20 Dec 2018 03:26:50 +0000 (14:26 +1100)]
Tool System: default node editor to select tool
With box select you can't cut-links with RMB select.
Campbell Barton [Thu, 20 Dec 2018 03:00:56 +0000 (14:00 +1100)]
Fix T59300: Box select fails in node-editor
Campbell Barton [Thu, 20 Dec 2018 02:46:56 +0000 (13:46 +1100)]
UI: correct error in recent UI cleanup
Campbell Barton [Thu, 20 Dec 2018 02:01:40 +0000 (13:01 +1100)]
Cleanup: style
Campbell Barton [Thu, 20 Dec 2018 01:24:37 +0000 (12:24 +1100)]
Merge branch 'master' into blender2.8
Campbell Barton [Thu, 20 Dec 2018 01:19:42 +0000 (12:19 +1100)]
PyAPI: don't truncate enums in exception messages
Not necessary and confusing when only some of the items are displayed.
See: T59044
Campbell Barton [Thu, 20 Dec 2018 01:02:21 +0000 (12:02 +1100)]
Cleanup: remove intermediate menu drawing function
Campbell Barton [Thu, 20 Dec 2018 01:00:20 +0000 (12:00 +1100)]
Fix T58937: Appended menus to VIEW3D_MT_editor_menus are not displayed
Campbell Barton [Thu, 20 Dec 2018 00:59:31 +0000 (11:59 +1100)]
UI: add UILayout.direction
Read only attribute, needed for introspection.
Campbell Barton [Thu, 20 Dec 2018 00:33:08 +0000 (11:33 +1100)]
UI: add method to draw menu contents
This supports expanding menu contents into an existing layout.
Needed to fix T58937.
Campbell Barton [Wed, 19 Dec 2018 22:31:56 +0000 (09:31 +1100)]
Fix possible key collision w/ BKE_id_to_unique_string_key
BKE_id_full_name_get doesn't ensure unique output, use a simple
method to create a unique key, guaranteed not to collide.
Campbell Barton [Wed, 19 Dec 2018 21:56:58 +0000 (08:56 +1100)]
Fix T59626: Outliner rename overlaps icons
Fix for T59219 was using low alpha-light grey for text background
so editing text would always be slightly brighter then the existing
background.
This causes outliner rename to have low alpha making text overlap
icons.
Use solid color to avoid issues with overlapping UI
elements in the future.
Antonioya [Wed, 19 Dec 2018 21:56:29 +0000 (22:56 +0100)]
Fix T59579: Grease Pencil copy buffer loses material information
Clément Foucault [Wed, 19 Dec 2018 13:07:44 +0000 (14:07 +0100)]
Mesh Batch Cache: Fix uninitialized loop variable
Campbell Barton [Wed, 19 Dec 2018 21:13:28 +0000 (08:13 +1100)]
Fix crash clicking on trackball widget
Missing check in newly added gizmo orientations.
Campbell Barton [Wed, 19 Dec 2018 21:01:39 +0000 (08:01 +1100)]
Cleanup: argument wrapping indentation
Campbell Barton [Wed, 19 Dec 2018 20:43:50 +0000 (07:43 +1100)]
UI: expose gizmo orientation as a single enum
Avoids awkward logic from the popover,
by faking an extra item in the enum.
Sebastian Parborg [Wed, 19 Dec 2018 19:51:28 +0000 (06:51 +1100)]
Fix T59391: Crash snapping to active
Sebastian Parborg [Wed, 19 Dec 2018 19:32:51 +0000 (06:32 +1100)]
Fix T59387: Axis target crash
Antonioya [Wed, 19 Dec 2018 18:50:07 +0000 (19:50 +0100)]
GP: Fix error drawing on Camera view for Surface/Stroke
This bug was introduced fixing task T59595
Charlie Jolly [Wed, 19 Dec 2018 17:39:37 +0000 (17:39 +0000)]
GP: Primitive: Add MMB to confirm
Based on GP team feedback
mano-wii [Wed, 19 Dec 2018 15:24:56 +0000 (13:24 -0200)]
Fix (unreported): Wireframe fails in the sculpt mode on some AMD GPUs.
Antonioya [Wed, 19 Dec 2018 16:07:12 +0000 (17:07 +0100)]
Fix T59595: Grease Pencil and CameraView
The perspective effect deformed the stroke. Now when you are in camera view and the lock axis is not enabled, the stroke is reprojected flat over the view to remove any deformation.
Also fixed reproject operator to use the origin set in topbar and not cursor 3D always.
Bastien Montagne [Wed, 19 Dec 2018 15:59:24 +0000 (16:59 +0100)]
Fix T59574: Prop_search fails to set objects from scene.
Another case where editstr from search button would be used, when we
actually have desired pointer itself already available in button.
Am growing tired of doing bandaids fixes on that search menu stuff,
whole thing would require some real re-coding imho, to get rid of that
tantacular dependency over string 'identifier' only (when we should also
have access to at the very least, the active index, and also probably
active data pointer itself...).
And/or clearly separate string identifier from 'UI' string shown to user.
Jacques Lucke [Wed, 19 Dec 2018 16:00:20 +0000 (17:00 +0100)]
Fix T58376: incorrect tooltip in subsurf modifier
Jacques Lucke [Wed, 19 Dec 2018 14:53:29 +0000 (15:53 +0100)]
Fix T59273: Text object disappears when Fill Mode is set to None
Reviewers: fclem
Differential Revision: https://developer.blender.org/D4103
Sergey Sharybin [Wed, 19 Dec 2018 14:36:09 +0000 (15:36 +0100)]
Fixes for particle system and physics
- Silence harmless error print about relation.
Object with particle system which doesn't use physics will
not have point cache component.
- Tag relations for update when particle system physics type
change.
This ensures correct state of point cache component.
This is all part of T59258.
Sergey Sharybin [Wed, 19 Dec 2018 13:59:23 +0000 (14:59 +0100)]
Fix T58739: Camera Location, keyframe Bug
This was originally caused by fix for T53788. Not sure why extra
`where_is` is needed there, the object is supposed to be evaluated
already.
Alexander Gavrilov [Sat, 15 Dec 2018 08:47:24 +0000 (11:47 +0300)]
BLI_bitmap: add functions operating on the whole bitmask.
There is no point having operations that iterate over the whole
bit array as macros, so convert BLI_BITMAP_SET_ALL to a function.
Also, add more utilities for copying and manipulating masks.
Reviewers: brecht, campbellbarton
Differential Revision: https://developer.blender.org/D4101
Charlie Jolly [Wed, 19 Dec 2018 12:18:16 +0000 (12:18 +0000)]
GP: Primitive: Fix jitter
Missing vector calculation.
Charlie Jolly [Wed, 19 Dec 2018 10:17:14 +0000 (10:17 +0000)]
GP: Primitive: Add RMB behaviour to Grab/Move
Sergey Sharybin [Wed, 19 Dec 2018 11:58:22 +0000 (12:58 +0100)]
Merge branch 'master' into blender2.8
Sergey Sharybin [Wed, 19 Dec 2018 11:47:25 +0000 (12:47 +0100)]
Build info: Ensure hash length is same across all platforms and has no conflicts
The original issue was that different platforms will use different
hash lengths, just because defaults on Git client were different.
Now we use explicit length for the hash, and length is the same as
is used for short hashes in Linux -- apparently they started to have
collisions with length of 11.
Campbell Barton [Wed, 19 Dec 2018 11:36:33 +0000 (22:36 +1100)]
UI: move gizmo orientation settings into popover
Instead of link toggle with enum, use a single popover that contains
both settings. The code for this isn't nice - needing 3x panels for now.
See D4075
Philipp Oeser [Wed, 19 Dec 2018 11:38:31 +0000 (12:38 +0100)]
Merge branch 'master' into blender2.8
Philipp Oeser [Wed, 19 Dec 2018 10:46:42 +0000 (11:46 +0100)]
Fix Proportional Edit Projected 2D method skiped center calculation
rBa520e7c85c83 defined T_OVERRIDE_CENTER(1 << 25)
which was already in use T_PROP_PROJECTED(1 << 25)
thus skipping center calculation
Fixes T58882, T59518
Reviewers: campbellbarton, brecht
Maniphest Tasks: T58882, T59518
Differential Revision: https://developer.blender.org/D4100
Clément Foucault [Wed, 19 Dec 2018 11:32:04 +0000 (12:32 +0100)]
Fix T59578: enabling "vertex group weights" in edit mode results in crash
Alexander Gavrilov [Sat, 15 Dec 2018 19:37:12 +0000 (22:37 +0300)]
RNA: support setting default values for custom properties.
NLA requires a usable default value for all properties that
are to be animated via it, without any exceptions. This is
the real cause of T36496: using the default of 0 for a scale
related custom property obviously doesn't work.
Thus, to really fix this it is necessary to support configurable
default values for custom properties, which are very frequently
used in rigs for auxiliary settings. For common use it is enough
to support this for scalar float and integer properties.
The default can be set via the custom property configuration
popup, or a right click menu option. In addition, to help in
updating old rigs, an operator that saves current values as
defaults for all object and bone properties is added.
Reviewers: campbellbarton, brecht
Differential Revision: https://developer.blender.org/D4084
Sergey Sharybin [Wed, 19 Dec 2018 10:20:32 +0000 (11:20 +0100)]
Fix T59237: Instancing on a path doesn't do anything
This commit makes it so curve path parent solving accepts an explicit
arguments for both time and curve speed flag, making it so we don't
have to mock around with scene's frame.
One unfortunate issue still is that if the instancing object is used
for something else, we might be running into a threading conflict.
Possible solution would be to create a temp copy of an object, but
then it will be an issue of preventing drivers from modifying other
datablocks.
At least the original issue is fixed now, and things behave same as
in older Blender version. Additionally, the global variable which
was defining curve speed flag behavior is gone now!
Philipp Oeser [Tue, 18 Dec 2018 10:19:57 +0000 (11:19 +0100)]
Fix T59500: Weight Smoothing Not Working
Reviewers: brecht, dfelinto
Maniphest Tasks: T59500
Differential Revision: https://developer.blender.org/D4094
Campbell Barton [Wed, 19 Dec 2018 10:49:04 +0000 (21:49 +1100)]
UI: show panel type in Python tooltips
Handy when editing UI scripts.
Campbell Barton [Wed, 19 Dec 2018 10:40:06 +0000 (21:40 +1100)]
RNA: convenience method for orientation name & icon
Avoids RNA introspection at draw time
which is relatively slow (approx 5x).
Campbell Barton [Wed, 19 Dec 2018 09:51:04 +0000 (20:51 +1100)]
Gizmo: optional custom orientations for transform
This aims to resolve a conflict where some users want to keep keyboard
axis setting global, even when the orientation is set to something else.
Move/rotate/scale can optionally each have a separate orientation.
Some UI changes will be made next.
Campbell Barton [Wed, 19 Dec 2018 09:44:14 +0000 (20:44 +1100)]
Transform: use the scenes transform orientation
- Use the user orientation when pressing XYZ keys,
second press switches to global.
- Pressing again switches to global, or local
if you're have global orientation set.
The option for gizmos to have their own orientations will be added,
see: D4075
Antonioya [Wed, 19 Dec 2018 08:13:44 +0000 (09:13 +0100)]
GP: Update Gizmo position when select