blender.git
13 months agoMerge branch 'blender2.8' into userpref_redesign
Julian Eisel [Thu, 22 Nov 2018 18:06:52 +0000 (19:06 +0100)]
Merge branch 'blender2.8' into userpref_redesign

13 months agoKeymaps: make click event detection use a larger distance threshold.
Brecht Van Lommel [Thu, 22 Nov 2018 13:28:59 +0000 (14:28 +0100)]
Keymaps: make click event detection use a larger distance threshold.

Previously this was hardcoded to 2 pixels, which is too low for tablets and
not taking into account DPI. Now we set it equal to the tweak threshold, so
you either always do click or drag.

The default distance of 10 pixels may be quite far for something to be
considered a click, and we'll need to see how well it works. But I find this
to help a lot when selecting vertices in quick succession.

Thanks to Julien for spotting this.

13 months agoFix T57578: Vertex Connect crash with less than two verts selected
Philipp Oeser [Thu, 22 Nov 2018 12:28:53 +0000 (13:28 +0100)]
Fix T57578: Vertex Connect crash with less than two verts selected

13 months agoGP: Cleanup old TODO comments
Antonioya [Thu, 22 Nov 2018 09:43:44 +0000 (10:43 +0100)]
GP: Cleanup old TODO comments

These ToDo were ported when 2.7x code was ported to 2.8, but now they are not needed.

13 months agoCleanup: keymap wrapper for tool-setting operator
Campbell Barton [Thu, 22 Nov 2018 05:58:09 +0000 (16:58 +1100)]
Cleanup: keymap wrapper for tool-setting operator

13 months agoKeymap: add popup keymap
Campbell Barton [Thu, 22 Nov 2018 05:52:57 +0000 (16:52 +1100)]
Keymap: add popup keymap

Allow manually mapping keys for the popup toolbar.

Useful for tools that don't have immediate access,
add transform, annotate & measure.

13 months agoCleanup: minor simplification of keyconfig merge
Campbell Barton [Thu, 22 Nov 2018 05:33:11 +0000 (16:33 +1100)]
Cleanup: minor simplification of keyconfig merge

13 months agoCorrect typo
Campbell Barton [Thu, 22 Nov 2018 05:17:09 +0000 (16:17 +1100)]
Correct typo

13 months agoIcons: use newly added icons
William Reynish [Thu, 22 Nov 2018 04:31:19 +0000 (15:31 +1100)]
Icons: use newly added icons

13 months agoIcons: binary data update from SVG
Campbell Barton [Thu, 22 Nov 2018 04:29:26 +0000 (15:29 +1100)]
Icons: binary data update from SVG

13 months agoIcons: updates by jendrzych
Campbell Barton [Thu, 22 Nov 2018 04:26:01 +0000 (15:26 +1100)]
Icons: updates by jendrzych

Changed to correct disclosure triangles everywhere,
added new icon for Output Properties,
added new icons for Image & Empty types in Add menu,
added icons for add-on types, plus other tweaks and adjustments.

13 months agoMerge branch 'master' into blender2.8
Campbell Barton [Thu, 22 Nov 2018 04:16:45 +0000 (15:16 +1100)]
Merge branch 'master' into blender2.8

13 months agoFix T57989: File loaded as startup
Campbell Barton [Thu, 22 Nov 2018 03:57:41 +0000 (14:57 +1100)]
Fix T57989: File loaded as startup

The file contents was used to check if the file was a startup file.

Now pass in an argument from startup loading code instead.

13 months agoUI: disable screen edges for full-screen areas
Campbell Barton [Thu, 22 Nov 2018 01:32:54 +0000 (12:32 +1100)]
UI: disable screen edges for full-screen areas

13 months agoUI: hide shortcut from gizmo tip when none found
Campbell Barton [Thu, 22 Nov 2018 01:18:23 +0000 (12:18 +1100)]
UI: hide shortcut from gizmo tip when none found

13 months agoUI: String tweak for "UnLock" and Un-Mute in VSE
Pablo Vazquez [Thu, 22 Nov 2018 01:02:03 +0000 (02:02 +0100)]
UI: String tweak for "UnLock" and Un-Mute in VSE

13 months agoUI: Fix Lock/Mute menu in VSE
Pablo Vazquez [Thu, 22 Nov 2018 00:59:49 +0000 (01:59 +0100)]
UI: Fix Lock/Mute menu in VSE

Thanks @tintwotin for reporting it!

13 months agoCleanup: utility function to avoid duplicate keys
Campbell Barton [Thu, 22 Nov 2018 00:54:17 +0000 (11:54 +1100)]
Cleanup: utility function to avoid duplicate keys

13 months agoTool System: auto-assign A-Z keys for toolbar popup
Campbell Barton [Thu, 22 Nov 2018 00:34:05 +0000 (11:34 +1100)]
Tool System: auto-assign A-Z keys for toolbar popup

Assign keys based on tool name when they're free, allows:
Space-T for Transform, Space-A for Annotate.

13 months agoFix toolbar popup keymap not allowing 'A' key
Campbell Barton [Thu, 22 Nov 2018 00:33:10 +0000 (11:33 +1100)]
Fix toolbar popup keymap not allowing 'A' key

13 months agoTool System: Updates for keymap stored as string
Campbell Barton [Thu, 22 Nov 2018 00:13:22 +0000 (11:13 +1100)]
Tool System: Updates for keymap stored as string

13 months agoFix factory-settings using stale preferences
Campbell Barton [Wed, 21 Nov 2018 23:51:27 +0000 (10:51 +1100)]
Fix factory-settings using stale preferences

We need to reload defaults on factory startup because the defaults
now have preferences that may have changed.

13 months agoTool System: store keymap name in tool instead of the keymap
Campbell Barton [Wed, 21 Nov 2018 23:23:40 +0000 (10:23 +1100)]
Tool System: store keymap name in tool instead of the keymap

Resetting keymaps caused them to become invalid (crashing on access).

13 months agoKeymap: always show pie menu w/ tab-pie-menu pref
Campbell Barton [Wed, 21 Nov 2018 22:09:42 +0000 (09:09 +1100)]
Keymap: always show pie menu w/ tab-pie-menu pref

Wasn't working well with armatures used ctrl-tab
to switch to pose mode, making tab always switch to pose mode
w/ this preference enabled.

Now always show pie-menu.

13 months agoKeymap: Use Z to toggle wire instead of xray
Campbell Barton [Wed, 21 Nov 2018 22:01:00 +0000 (09:01 +1100)]
Keymap: Use Z to toggle wire instead of xray

This now works like 2.7x more or less exactly,
x-ray is enabled by default for wire so unless users change this,
it will enable x-ray too.

13 months agoKeymap: 3D view pref for tab to show pie menu
Campbell Barton [Wed, 21 Nov 2018 21:12:39 +0000 (08:12 +1100)]
Keymap: 3D view pref for tab to show pie menu

This behaves like the 2.7x pie menu add-on,
for users who prefer single-key access to all modes.

13 months agoUI: Add Image and Clip space panels category.
Bastien Montagne [Wed, 21 Nov 2018 21:02:01 +0000 (22:02 +0100)]
UI: Add Image and Clip space panels category.

Pretty much all were missing those here... Put all in same category for
image, tried to sort them logically for Clip, since we already had at
least two (stabilization and 'misc')... sigh.

Another topic for UI team to work on I guess.

13 months agoUI: First batch of fixing missing categories for panels.
Bastien Montagne [Wed, 21 Nov 2018 20:41:00 +0000 (21:41 +0100)]
UI: First batch of fixing missing categories for panels.

13 months agoCleanup: Move debug warning message about panels missing category from drawing code...
Bastien Montagne [Wed, 21 Nov 2018 20:39:19 +0000 (21:39 +0100)]
Cleanup: Move debug warning message about panels missing category from drawing code to registering code.

In drawing it was pretty stupid (since we did not know *which* panels were
affected), and really, really annoyingly noisy!

13 months agoUI: hide keymap preferences when filter is used
Campbell Barton [Wed, 21 Nov 2018 20:52:34 +0000 (07:52 +1100)]
UI: hide keymap preferences when filter is used

13 months agoKeymap: correct error in grease pencil change
Campbell Barton [Wed, 21 Nov 2018 20:48:05 +0000 (07:48 +1100)]
Keymap: correct error in grease pencil change

13 months agoKeymap: remove annotation keymap editmode toggle
Campbell Barton [Wed, 21 Nov 2018 19:51:47 +0000 (06:51 +1100)]
Keymap: remove annotation keymap editmode toggle

This is now used for grease pencil objects.

13 months agoKeymap: Adjust shading key bindings
Campbell Barton [Wed, 21 Nov 2018 19:44:42 +0000 (06:44 +1100)]
Keymap: Adjust shading key bindings

- 'Z' now toggles xray
  (convenient, 2.7x-like binding to show occluded).
- 'D' shows the draw-type pie-menu.

13 months agoKeymap: remove D-Key shortcuts for annotations
Campbell Barton [Wed, 21 Nov 2018 18:56:04 +0000 (05:56 +1100)]
Keymap: remove D-Key shortcuts for annotations

Use tools for annotations instead.

13 months ago3D View: move x-ray toggle to operator
Campbell Barton [Wed, 21 Nov 2018 19:44:09 +0000 (06:44 +1100)]
3D View: move x-ray toggle to operator

Allows binding to a key.

13 months agoKeymap: use Ctrl-Tab to toggle fcurve/graph editor
Campbell Barton [Wed, 21 Nov 2018 18:56:04 +0000 (05:56 +1100)]
Keymap: use Ctrl-Tab to toggle fcurve/graph editor

Suggested by Pablo Vazquez.

13 months agoKeymaps: take into account DPI for tweak/drag/pie thresholds.
Brecht Van Lommel [Wed, 21 Nov 2018 18:25:13 +0000 (19:25 +0100)]
Keymaps: take into account DPI for tweak/drag/pie thresholds.

The intention is to fix a too low default threshold on high DPI screen.
Users with high DPI screens that have increased the threshold to fix this
or liked the lower threshold will need to lower it again.

This is still somewhat of a guess, ideally this would be based on the
physical distance travalled, and maybe different per type of input device.
However we do not have access to this information, and hope this gives a
better default.

13 months agoKeymaps: a few small improvements.
Brecht Van Lommel [Wed, 21 Nov 2018 17:03:56 +0000 (18:03 +0100)]
Keymaps: a few small improvements.

* Annotation tools now have Alt+LMB as for erase, like sculpt.
* In the LMB keymap, Shift+RMB drag now transforms 3D cursor for easy snapping.
* Curve edit mode draw is now only availble as tool, solves 3D cursor conflict.

13 months agoPython API Docs: better titles.
Brecht Van Lommel [Wed, 21 Nov 2018 16:21:28 +0000 (17:21 +0100)]
Python API Docs: better titles.

The HTML title did not make it clear that these are docs for the API rather
than a general Blender documentation. Some of the page titles were also too
long and redundant.

13 months agoCleanup: warnings
Campbell Barton [Wed, 21 Nov 2018 18:25:51 +0000 (05:25 +1100)]
Cleanup: warnings

13 months agoGP: Set Vertex opacity default for templates
Antonioya [Wed, 21 Nov 2018 18:18:41 +0000 (19:18 +0100)]
GP: Set Vertex opacity default for templates

13 months agoUI: Use primary gizmo color for loopcut edge pre-select.
Pablo Vazquez [Wed, 21 Nov 2018 18:14:56 +0000 (19:14 +0100)]
UI: Use primary gizmo color for loopcut edge pre-select.

Instead of hardcoded pink.

13 months agotransform_snap_object: Use the texture space bound box to test the need to snap to...
mano-wii [Wed, 21 Nov 2018 16:37:56 +0000 (14:37 -0200)]
transform_snap_object: Use the texture space bound box to test the need to snap to meshes in edit mode.

Before a value for bound box was stored in a local cache.

13 months agoGP: Init new Eraser Hard
Antonioya [Wed, 21 Nov 2018 17:03:38 +0000 (18:03 +0100)]
GP: Init new Eraser Hard

13 months agotransform_snap_object: Fix snap to curves.
mano-wii [Wed, 21 Nov 2018 15:06:29 +0000 (13:06 -0200)]
transform_snap_object: Fix snap to curves.

Use `BKE_curve_texspace_get` instead `BKE_curve_boundbox_get`.
The snap to curve, even out of edit mode, is not done on the displist. So test a boundbox that covers the points seens in edit mode.

13 months agoFix T57884: Triangle count is incorrect when above around 2 billion
Philipp Oeser [Mon, 19 Nov 2018 14:24:32 +0000 (15:24 +0100)]
Fix T57884: Triangle count is incorrect when above around 2 billion

Maniphest Tasks: T57884

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

13 months agoDepsgraph: Update comment
Sergey Sharybin [Wed, 21 Nov 2018 15:29:22 +0000 (16:29 +0100)]
Depsgraph: Update comment

13 months agoDepsgraph: Allow flush of CoW tag from Action
Sergey Sharybin [Wed, 21 Nov 2018 15:12:42 +0000 (16:12 +0100)]
Depsgraph: Allow flush of CoW tag from Action

This way we guarantee that action tagged for CoW will ensure
order of updates with objects which are using it.

Fixes T57870: Scaling keyframes in Graph Editor causes crash
Fixes T57971: Moving keys in the Dopesheet crashes with Segfault 11
Fixes T57530: Moving keys on a rig, Crash
Fixee T57491: Crash when trying to move keyframe in dope sheet

13 months agoFix T57975: Drawing with Onion Skin enabled crash Blender
Antonioya [Wed, 21 Nov 2018 14:53:17 +0000 (15:53 +0100)]
Fix T57975: Drawing with Onion Skin enabled crash Blender

13 months agoDepsgraph: Move boundbox sync to the post-geometry evaluation
Sergey Sharybin [Wed, 21 Nov 2018 14:02:36 +0000 (15:02 +0100)]
Depsgraph: Move boundbox sync to the post-geometry evaluation

Boundbox does not depend on transform and only need geometry
component.

This change solves possible race condition accessing geometry
data and allocating/assigning pointers.

Based on disacussion in IRC with @mano-wii and @brecht.

13 months agoDepsgraph: Cleanup, use more clear name
Sergey Sharybin [Wed, 21 Nov 2018 13:52:42 +0000 (14:52 +0100)]
Depsgraph: Cleanup, use more clear name

Five years later since the original commit, is probably not so bad
timing on calling things by their clear name.

13 months agoImplement basic global tablet pressure curve options.
Alexander Gavrilov [Tue, 20 Nov 2018 12:35:59 +0000 (15:35 +0300)]
Implement basic global tablet pressure curve options.

Grease Pencil already implements support for full-featured
per-brush pressure curves, but it is useful to have some
basic global settings that affect all brushes and tools.

This adds two simple options:

- Raw pressure required to achieve full brush intensity.
- Softness control, using a gamma curve internally.

The most important one is the max pressure setting, because it is
critical for ergonomics, but the Linux Wacom driver lacks it.

The softness option internally converts to gamma = 4^-softness.

Reviewers: brecht, campbellbarton

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

13 months agoFix T57811: Render crashes in certain scenes when AO Bounces are used
Sergey Sharybin [Wed, 21 Nov 2018 13:17:26 +0000 (14:17 +0100)]
Fix T57811: Render crashes in certain scenes when AO Bounces are used

13 months agoImage Empties: always show in orthographic view by default
Jacques Lucke [Wed, 21 Nov 2018 12:52:12 +0000 (13:52 +0100)]
Image Empties: always show in orthographic view by default

13 months agoCycles: Cleanup, use utility function
Sergey Sharybin [Wed, 21 Nov 2018 12:51:18 +0000 (13:51 +0100)]
Cycles: Cleanup, use utility function

Replaces inlined platform-specific code.

13 months agoCycles: Cleanup, reduce indentation level
Sergey Sharybin [Wed, 21 Nov 2018 11:23:54 +0000 (12:23 +0100)]
Cycles: Cleanup, reduce indentation level

13 months agoI18N: tweak some UI labels and tips.
Bastien Montagne [Wed, 21 Nov 2018 11:06:59 +0000 (12:06 +0100)]
I18N: tweak some UI labels and tips.

13 months agoI18N defaults: enable tooltip translation.
Bastien Montagne [Wed, 21 Nov 2018 11:05:56 +0000 (12:05 +0100)]
I18N defaults: enable tooltip translation.

That is minimal change for now, we may want to fully enable i18n by
default...

13 months agoUI: small clean-up of I18N UI in userpref.
Bastien Montagne [Wed, 21 Nov 2018 11:04:09 +0000 (12:04 +0100)]
UI: small clean-up of I18N UI in userpref.

Mainly do not hide i18n options anymore, this is against our rules, just
disable them instead.

13 months agoCycles: Cleanup, comments and dead code
Sergey Sharybin [Wed, 21 Nov 2018 10:33:11 +0000 (11:33 +0100)]
Cycles: Cleanup, comments and dead code

13 months agoCycles: Cleanup, CUDA code path is not possible inside AVX2
Sergey Sharybin [Wed, 21 Nov 2018 10:28:49 +0000 (11:28 +0100)]
Cycles: Cleanup, CUDA code path is not possible inside AVX2

13 months agoGP: Change cursor for primitves
Antonioya [Wed, 21 Nov 2018 09:52:46 +0000 (10:52 +0100)]
GP: Change cursor for primitves

13 months agoGP: Remove Target Weight switch
Antonioya [Wed, 21 Nov 2018 08:03:17 +0000 (09:03 +0100)]
GP: Remove Target Weight switch

13 months agoFix uv-sculpt use w/ tool-system
Campbell Barton [Wed, 21 Nov 2018 06:56:10 +0000 (17:56 +1100)]
Fix uv-sculpt use w/ tool-system

13 months agoGizmo: show dial handle for unconstrained extrude
Campbell Barton [Wed, 21 Nov 2018 06:15:53 +0000 (17:15 +1100)]
Gizmo: show dial handle for unconstrained extrude

Now only show an arrow when extrude was constrained on an axis.

13 months agoGizmo: set operator options before execution
Campbell Barton [Wed, 21 Nov 2018 05:00:00 +0000 (16:00 +1100)]
Gizmo: set operator options before execution

Avoid setting all operator options every redraw,
instead set them before invoking.

13 months agoGizmo: run invoke_prepare even when the gizmo isn't modal
Campbell Barton [Wed, 21 Nov 2018 04:35:29 +0000 (15:35 +1100)]
Gizmo: run invoke_prepare even when the gizmo isn't modal

This is useful for setting up state for gizmos that run
operators too.

13 months agoObject: minor changes to jump-to API
Campbell Barton [Wed, 21 Nov 2018 02:06:25 +0000 (13:06 +1100)]
Object: minor changes to jump-to API

- Always select the jump-to object, even if it's active.
- Remove check for invalid object data
  (these cases will fail much earlier).

13 months agoCleanup: add reveal_hidden arg to jump-to API calls
Campbell Barton [Wed, 21 Nov 2018 02:04:03 +0000 (13:04 +1100)]
Cleanup: add reveal_hidden arg to jump-to API calls

Jumping to data shouldn't necessarily change hidden status
or visible layers.

13 months agoGizmo: workaround for extrude modifying normals for XYZ axis
Campbell Barton [Wed, 21 Nov 2018 01:39:05 +0000 (12:39 +1100)]
Gizmo: workaround for extrude modifying normals for XYZ axis

This was done for the normal gizmo, but not the XYZ handles.

13 months agoFix custom matrix orientation being written to scene
Campbell Barton [Wed, 21 Nov 2018 01:47:25 +0000 (12:47 +1100)]
Fix custom matrix orientation being written to scene

13 months agoCorrect editbone root-select check
Campbell Barton [Wed, 21 Nov 2018 01:57:08 +0000 (12:57 +1100)]
Correct editbone root-select check

Mistake in recent commit.

13 months agoGizmo: use Y-axis for armature extrude on normal
Campbell Barton [Wed, 21 Nov 2018 01:12:20 +0000 (12:12 +1100)]
Gizmo: use Y-axis for armature extrude on normal

For bones it's useful to extrude a bone aligned to the existing bone.

13 months agoGizmo: set the extrude transform constraint matrix
Campbell Barton [Wed, 21 Nov 2018 00:42:56 +0000 (11:42 +1100)]
Gizmo: set the extrude transform constraint matrix

13 months agoUI: Horizontal/Vertical split options in Area menu.
Pablo Vazquez [Wed, 21 Nov 2018 00:33:33 +0000 (01:33 +0100)]
UI: Horizontal/Vertical split options in Area menu.

13 months agoTransform: use root/tip for bone normal orientation
Campbell Barton [Wed, 21 Nov 2018 00:31:37 +0000 (11:31 +1100)]
Transform: use root/tip for bone normal orientation

When there are no fully selected bones,
use the normal of bones which only have the root/tip selected as a
fallback.

Without this, the extrude gizmo isn't very useful
since extrude is often used with only the tip selected.

13 months agoUI: Icon and separator for Add Node (Search).
Pablo Vazquez [Wed, 21 Nov 2018 00:25:44 +0000 (01:25 +0100)]
UI: Icon and separator for Add Node (Search).

13 months agoUI Theme: Minor improvements on contrast and consistency.
Pablo Vazquez [Tue, 20 Nov 2018 23:31:28 +0000 (00:31 +0100)]
UI Theme: Minor improvements on contrast and consistency.

* 3D Viewport grid adjustment to work with both bright/dark viewports (e.g. 2D Animation)
* Match header/grid of NLA with Dopesheet/Graph Editor.
* Avoid pure whites in unselected/inactive text.
* Darken the scrollbar numbers.

13 months agoCleanup: use boolean array for mirror modifier
Campbell Barton [Tue, 20 Nov 2018 23:27:19 +0000 (10:27 +1100)]
Cleanup: use boolean array for mirror modifier

13 months agoModifier: Mirror learns to bisect on plane
Campbell Barton [Tue, 20 Nov 2018 23:01:04 +0000 (10:01 +1100)]
Modifier: Mirror learns to bisect on plane

D3966 by @kioku w/ edits.

This adds bisect and flip options to mirror modifier.

13 months agoCleanup: rename extrude gizmo
Campbell Barton [Tue, 20 Nov 2018 22:25:55 +0000 (09:25 +1100)]
Cleanup: rename extrude gizmo

13 months agoCleanup: move extrude gizmo to transform module
Campbell Barton [Tue, 20 Nov 2018 22:20:19 +0000 (09:20 +1100)]
Cleanup: move extrude gizmo to transform module

Since this is no longer mesh only, move out of mesh,
rename next.

13 months agoGizmo: initial extrude support for non mesh types
Campbell Barton [Tue, 20 Nov 2018 22:09:34 +0000 (09:09 +1100)]
Gizmo: initial extrude support for non mesh types

13 months agoFix extrude tool redo
Campbell Barton [Tue, 20 Nov 2018 21:08:53 +0000 (08:08 +1100)]
Fix extrude tool redo

Redo operator properties weren't being set.

13 months agoFix T57892: Align Objects in Blender 2.8 Alpha 2 last Builds.
Bastien Montagne [Tue, 20 Nov 2018 21:14:00 +0000 (22:14 +0100)]
Fix T57892: Align Objects in Blender 2.8 Alpha 2 last Builds.

Needed some update for API changes...

13 months agoFix T57921: Crash when loading 2.7x .blend with scene without any render layer.
Bastien Montagne [Tue, 20 Nov 2018 20:49:49 +0000 (21:49 +0100)]
Fix T57921: Crash when loading 2.7x .blend with scene without any render layer.

We need at least one view layer, always. :)

13 months agoCleanup: unused args, indentation
Campbell Barton [Tue, 20 Nov 2018 19:21:58 +0000 (06:21 +1100)]
Cleanup: unused args, indentation

13 months agoCleanup: gcc function type warning
Campbell Barton [Tue, 20 Nov 2018 18:32:23 +0000 (05:32 +1100)]
Cleanup: gcc function type warning

13 months agoGP: Refactor target weight paint
Antonioya [Tue, 20 Nov 2018 19:05:13 +0000 (20:05 +0100)]
GP: Refactor target weight paint

Now, the target weight is defined as the final maximum value with a new property and all fields have be moved to brush struct.

13 months agoGP: Refactor drawing engine to single VBO
Antonioya [Tue, 20 Nov 2018 18:26:16 +0000 (19:26 +0100)]
GP: Refactor drawing engine to single VBO

This is part of T57829.

Reduce the number of batches used to only one by shader type.  This reduces GPU overhead and increase a lot the FPS. As the number of batches is small, the time to allocate and free memory was reduced in 90% or more.

Also the code has been simplified and all batch management has been removed because this is not necessary. Now, all shading groups are created after all vertex buffer data for all strokes has been created using DRW_shgroup_call_range_add().

All batch cache data has been moved to the Object runtime struct and not as before where some parts (derived data) were saved inside GPD datablock.

For particles, now the code is faster and cleaner and gets better FPS.

Thanks to ClĂ©ment Foucault for his help and advices to improve speed.

13 months agoFix T57935: Crash Alt clicking w/ poly build tool
Campbell Barton [Tue, 20 Nov 2018 18:21:18 +0000 (05:21 +1100)]
Fix T57935: Crash Alt clicking w/ poly build tool

13 months agoCleanup: style
Campbell Barton [Tue, 20 Nov 2018 18:25:42 +0000 (05:25 +1100)]
Cleanup: style

13 months agoGP: New option to paint a predefined weight
Antonioya [Tue, 20 Nov 2018 17:11:42 +0000 (18:11 +0100)]
GP: New option to paint a predefined weight

Enabling this option, the weight is set to the predefined value and not the result of the sum of the paint actions.

13 months agoUI: Color Ramp: Add menu and functions to distribute color stops
Charlie Jolly [Mon, 19 Nov 2018 16:15:05 +0000 (16:15 +0000)]
UI: Color Ramp: Add menu and functions to distribute color stops

Suggestion from Right-Click Select: https://blender.community/c/rightclickselect/Npcbbc/color-ramp-flags-auto-distribution-function

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

13 months agoMerge branch 'master' into blender2.8
Bastien Montagne [Tue, 20 Nov 2018 17:01:13 +0000 (18:01 +0100)]
Merge branch 'master' into blender2.8

13 months agoFix T57923: Freeze in mesh vnors computation code with some degenerated geometry.
Bastien Montagne [Tue, 20 Nov 2018 16:54:48 +0000 (17:54 +0100)]
Fix T57923: Freeze in mesh vnors computation code with some degenerated geometry.

Second part of the fix: do not try at all to compute normals in degenerated
geometry. Just loss of time and potential issues later with weird
invalid computed values.

13 months agoFix T57923: Freeze in mesh vnors computation code with some degenerated geometry.
Bastien Montagne [Tue, 20 Nov 2018 16:52:21 +0000 (17:52 +0100)]
Fix T57923: Freeze in mesh vnors computation code with some degenerated geometry.

Fix first part of it, the freeze itself being caused by float NAN values
never comparing equal to anything, not even themselves.

13 months agoGP: Reorganize Reproject options
Antonioya [Tue, 20 Nov 2018 15:29:33 +0000 (16:29 +0100)]
GP: Reorganize Reproject options

The options depend of drawing mode and this was very strange. Now, the options are listed in the menu.

13 months agoGP: Set Gizmo orientation for edit mode
Antonioya [Tue, 20 Nov 2018 15:03:38 +0000 (16:03 +0100)]
GP: Set Gizmo orientation for edit mode

13 months agoSpeedup rigs with multiple objects deformed by bbones
Sergey Sharybin [Tue, 20 Nov 2018 14:42:37 +0000 (15:42 +0100)]
Speedup rigs with multiple objects deformed by bbones

Previously each of the objects which has armature modifier will
request deformation matricies from bbones. Thing is, all those
deformations are the same and do not depend on object which is
being modified. What's even worse is that this calculation is
not cheap.

This change makes it so bbones deformation is calculated once
and stored in the armature object. After this armature modifiers
simply use it.

With a rigs we've got here dependency graph evaluation time
goes down from 0.02 sec to 0.012 sec.

Possible further optimization is to make bbone deformation
calculated at the time when bone is calculated. This will avoid
an extra threaded loop over all bones.