2 years agoDepsgraph: Ensure solver cleanup order
Sergey Sharybin [Thu, 22 Nov 2018 14:52:17 +0000 (15:52 +0100)]
Depsgraph: Ensure solver cleanup order

Ensure that pose cleanup is never run before all IK solvers are finished.

2 years agoDepsgraph: Cleanup, line wrapping
Sergey Sharybin [Thu, 22 Nov 2018 14:50:42 +0000 (15:50 +0100)]
Depsgraph: Cleanup, line wrapping

2 years agoFix missing newline in error print
Sergey Sharybin [Thu, 22 Nov 2018 14:08:34 +0000 (15:08 +0100)]
Fix missing newline in error print

2 years agoDepsgraph: Cleanup, make it easier to create relations with flags
Sergey Sharybin [Thu, 22 Nov 2018 13:54:08 +0000 (14:54 +0100)]
Depsgraph: Cleanup, make it easier to create relations with flags

2 years agoEevee: Reflection Plane: Small UI fix and invert facing fading
Clément Foucault [Thu, 22 Nov 2018 15:14:56 +0000 (16:14 +0100)]
Eevee: Reflection Plane: Small UI fix and invert facing fading

2 years agoFix T57977: VSE: Markers lines get highlighted when using box select
Clément Foucault [Thu, 22 Nov 2018 15:13:18 +0000 (16:13 +0100)]
Fix T57977: VSE: Markers lines get highlighted when using box select

Was caused by a missing uniform.

2 years 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.

2 years 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

2 years 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.

2 years 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

2 years 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.

2 years 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

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

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

2 years 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

2 years 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.

2 years 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

2 years 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.

2 years 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

2 years 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

2 years 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

2 years 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!

2 years 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

2 years 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.

2 years 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

2 years 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

2 years 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.

2 years 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).

2 years 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.

2 years 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.

2 years 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.

2 years 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.

2 years 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.

2 years 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!

2 years 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

2 years 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

2 years 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.

2 years 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.

2 years 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.

2 years 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.

2 years 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.

2 years 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.

2 years 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.

2 years 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.

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

2 years 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

2 years 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.

2 years 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.

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

2 years 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.

2 years 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:

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

2 years 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

2 years 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

2 years 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

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

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

2 years 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.

2 years 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:

2 years 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

2 years 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

2 years 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.

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

2 years 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.

2 years 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

2 years 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.

2 years 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

2 years 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

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

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

2 years 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

2 years 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.

2 years 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.

2 years 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.

2 years 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).

2 years 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.

2 years 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.

2 years 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

2 years 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.

2 years 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.

2 years 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

2 years 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.

2 years 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

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

2 years 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).

2 years 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.

2 years 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

2 years 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.

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

2 years 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.

2 years 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

2 years 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.

2 years 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...

2 years 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. :)

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

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

2 years 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.

2 years 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.

2 years 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

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

2 years 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.

2 years 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:

Differential Revision:

2 years 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