Commit Graph

66179 Commits

Author SHA1 Message Date
Campbell Barton
4b9d242be5 Merge branch 'master' into blender2.8 2018-11-22 15:16:45 +11:00
Campbell Barton
c66570f519 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.
2018-11-22 15:06:14 +11:00
Campbell Barton
1844ccd521 UI: disable screen edges for full-screen areas 2018-11-22 12:34:15 +11:00
Campbell Barton
3e625a7a06 UI: hide shortcut from gizmo tip when none found 2018-11-22 12:19:07 +11:00
Pablo Vazquez
fb8aa611d0 UI: String tweak for "UnLock" and Un-Mute in VSE 2018-11-22 02:02:11 +01:00
Campbell Barton
1a4595618c Fix factory-settings using stale preferences
We need to reload defaults on factory startup because the defaults
now have preferences that may have changed.
2018-11-22 10:51:27 +11:00
Bastien Montagne
ce137699f9 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!
2018-11-21 22:03:24 +01:00
Campbell Barton
7d985fcc1b 3D View: move x-ray toggle to operator
Allows binding to a key.
2018-11-22 06:44:32 +11:00
Brecht Van Lommel
0a3cf08364 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.
2018-11-21 19:31:20 +01:00
Campbell Barton
f5df1efa2f Cleanup: warnings 2018-11-22 05:26:18 +11:00
Antonioya
146f6cea55 GP: Set Vertex opacity default for templates 2018-11-21 19:19:10 +01:00
Pablo Vazquez
79ef6f30f0 UI: Use primary gizmo color for loopcut edge pre-select.
Instead of hardcoded pink.
2018-11-21 19:14:56 +01:00
mano-wii
2ab798feb0 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.
2018-11-21 14:38:56 -02:00
Antonioya
2261aed031 GP: Init new Eraser Hard 2018-11-21 18:04:08 +01:00
mano-wii
96e39af948 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.
2018-11-21 13:07:51 -02:00
Philipp Oeser
cec83e92e6 Fix T57884: Triangle count is incorrect when above around 2 billion
Maniphest Tasks: T57884

Differential Revision: https://developer.blender.org/D3962
2018-11-21 16:34:32 +01:00
Sergey Sharybin
d3e686d61e Depsgraph: Update comment 2018-11-21 16:29:22 +01:00
Sergey Sharybin
2a354dd4bd 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
2018-11-21 16:21:24 +01:00
Antonioya
693233b198 Fix T57975: Drawing with Onion Skin enabled crash Blender 2018-11-21 15:53:45 +01:00
Sergey Sharybin
5e4ed2793b 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.
2018-11-21 15:04:18 +01:00
Sergey Sharybin
b6693f1f54 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.
2018-11-21 14:52:42 +01:00
Alexander Gavrilov
539b465b32 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
2018-11-21 16:34:07 +03:00
Bastien Montagne
ed1ee89288 I18N: tweak some UI labels and tips. 2018-11-21 12:06:59 +01:00
Bastien Montagne
638622971b I18N defaults: enable tooltip translation.
That is minimal change for now, we may want to fully enable i18n by
default...
2018-11-21 12:05:56 +01:00
Antonioya
3a64d7ca48 GP: Remove Target Weight switch 2018-11-21 09:03:17 +01:00
Campbell Barton
7de712e1e5 Fix uv-sculpt use w/ tool-system 2018-11-21 17:56:10 +11:00
Campbell Barton
77a80d9f2f Gizmo: show dial handle for unconstrained extrude
Now only show an arrow when extrude was constrained on an axis.
2018-11-21 17:15:53 +11:00
Campbell Barton
1a551328b4 Gizmo: set operator options before execution
Avoid setting all operator options every redraw,
instead set them before invoking.
2018-11-21 16:00:00 +11:00
Campbell Barton
6b6105a87e Gizmo: run invoke_prepare even when the gizmo isn't modal
This is useful for setting up state for gizmos that run
operators too.
2018-11-21 15:35:29 +11:00
Campbell Barton
67c3791f63 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).
2018-11-21 13:07:36 +11:00
Campbell Barton
18593c7cd3 Cleanup: add reveal_hidden arg to jump-to API calls
Jumping to data shouldn't necessarily change hidden status
or visible layers.
2018-11-21 13:04:03 +11:00
Campbell Barton
a86a1292f3 Gizmo: workaround for extrude modifying normals for XYZ axis
This was done for the normal gizmo, but not the XYZ handles.
2018-11-21 12:58:06 +11:00
Campbell Barton
774471dd45 Fix custom matrix orientation being written to scene 2018-11-21 12:58:06 +11:00
Campbell Barton
ac5889a9ee Correct editbone root-select check
Mistake in recent commit.
2018-11-21 12:58:06 +11:00
Campbell Barton
63150511a2 Gizmo: use Y-axis for armature extrude on normal
For bones it's useful to extrude a bone aligned to the existing bone.
2018-11-21 12:14:28 +11:00
Campbell Barton
04d09014e9 Gizmo: set the extrude transform constraint matrix 2018-11-21 11:45:16 +11:00
Campbell Barton
5b45434be4 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.
2018-11-21 11:32:08 +11:00
Campbell Barton
91e8509467 Cleanup: use boolean array for mirror modifier 2018-11-21 10:30:51 +11:00
Campbell Barton
19875439b5 Modifier: Mirror learns to bisect on plane
D3966 by @kioku w/ edits.

This adds bisect and flip options to mirror modifier.
2018-11-21 10:01:04 +11:00
Campbell Barton
6aa7cea3c2 Cleanup: rename extrude gizmo 2018-11-21 09:25:55 +11:00
Campbell Barton
d3a75c48fd Cleanup: move extrude gizmo to transform module
Since this is no longer mesh only, move out of mesh,
rename next.
2018-11-21 09:20:19 +11:00
Campbell Barton
34b9bd3a9b Gizmo: initial extrude support for non mesh types 2018-11-21 09:09:34 +11:00
Campbell Barton
c17cc4c0d8 Fix extrude tool redo
Redo operator properties weren't being set.
2018-11-21 08:20:22 +11:00
Bastien Montagne
b7ee0912a7 Fix T57921: Crash when loading 2.7x .blend with scene without any render layer.
We need at least one view layer, always. :)
2018-11-20 21:50:46 +01:00
Campbell Barton
3a13b89296 Cleanup: unused args, indentation 2018-11-21 06:29:19 +11:00
Campbell Barton
176b0df920 Cleanup: gcc function type warning 2018-11-21 06:24:52 +11:00
Antonioya
a4a9123c33 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.
2018-11-20 20:05:37 +01:00
Antonioya
e63c947204 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.
2018-11-20 20:05:37 +01:00
Campbell Barton
140d383393 Fix T57935: Crash Alt clicking w/ poly build tool 2018-11-21 05:25:52 +11:00
Campbell Barton
5aa728ec7e Cleanup: style 2018-11-21 05:25:52 +11:00