Commit Graph

4873 Commits

Author SHA1 Message Date
Campbell Barton
1944bca49a Tool System: use tools for node editor 2018-11-27 18:43:08 +11:00
Campbell Barton
1f8360171c Keymap: share annotation tool keymaps between spaces
Not sharing caused duplication in the keymap and
required a factory class generator.

Simplify tool & keymap definitions by sharing them.

It's highly unlikely we will ever want these to use different keys
once they're set as the active tool.
2018-11-27 17:52:15 +11:00
Campbell Barton
09f97f937d Cleanup: move non-toolbar panels out of the toolbar 2018-11-27 15:25:52 +11:00
Pablo Vazquez
da46580026 UI: Fix Set Origin via Specials menu not prompting options. 2018-11-27 02:18:25 +01:00
Dalai Felinto
8e65e38649 Font textbox overflow: Different methods
Sometimes the text doesn't fit. What to do in this case?

* Overflow: The default behaviour still is to overflow the text.
* Truncated: If any text box is defined we can also not draw the text
  that goes outside the text boxes.
* Scale to Fit: For single-text box texts we can scale down the text until
  it fits.

To support textboxes we are bisecting the scale until we find a good
match. Right now the hardcoded iteration limit is 20, and the threshold 0.0001f.

An alternative in the future would be to tackle this by integrating existing
layout engines such as HarfBuzz.

Note: Scale to fit won't work for multiple text-boxes if any of them has
either width or height as zero.

Reviewers: campbellbarton
Differential Revision: https://developer.blender.org/D3874

Feature development sponsored by Viddyoze.
2018-11-26 21:47:33 -02:00
Brecht Van Lommel
d5778b5bc1 UI: rename "OpenGL" render engine to "Workbench".
Neither is very descriptive for its task, but at least workbench is more
future proof and distinguishes it from Eevee.
2018-11-26 19:05:37 +01:00
Brecht Van Lommel
d92e9a4a25 Fix broken face select in paint modes with RMB select. 2018-11-26 18:46:46 +01:00
Antonioya
99f7934e19 GP: New Blend Layers functionality
Now it's possible define the blend mode between layers including the option to clamp the layer using underlying layers.

Also a new Simplify option has been added to disable blend layers.
2018-11-26 18:12:39 +01:00
Lukas Stockner
c0816cd03b Workbench: Add Curvature overlay for better visibility of surface detail for e.g. sculpting
The approach is fairly simple, just apply an edge detection filter to the view normal and scale the brightness based on that.

The overlay is disabled at object boundaries to avoid dark lines around objects.

Generally, this implementation follows the proposal of @monio at https://blender.community/c/rightclickselect/J9bbbc.
The changes are:
- Dynamic filter radius (on high-DPI displays, a radius of two is used)
- Options to reduce the strength of both ridges and valleys
- Tweaked function for the strength reduction (the original method actually had a local maximum, resulting in a brighter line inside valleys)
- Multiplication for blending instead of overlay, which doesn't work reliably with scene-referred intensities
- Renamed to point out the distinction between it and the SSAO-based cavity overlay

Reviewers: jbakker

Reviewed By: jbakker

Subscribers: billreynish, manitwo, linko, monio

Differential Revision: https://developer.blender.org/D3617
2018-11-26 17:31:18 +01:00
Sergey Sharybin
9abcf56fa8 Enable OpenSubdiv modifier by default
This commit makes it so that subsurf/multires modifiers will respect
the WITH_OPENSUBDIV option. The WITH_OPENSUBDIV_MODIFIER option is
now gone.

For artists it mean that subsurf modifier will behave same as it is
planned for 2.80. Multires will now support sculpting, but it has some
known limitations. Those will be worked on before the final release.

If OpenSubdiv is disabled, no subsurf/multires functionality will
present.

For the details see:

  https://wiki.blender.org/wiki/Reference/Release_Notes/2.80/Modeling#Subsurf.2FMultires
2018-11-26 15:41:37 +01:00
Sergey Sharybin
bb52ef4ee9 Hide OpenSubdiv compute device
That is only used by GPU side of OpenSubdiv, which was not yet
brought back.
2018-11-26 14:21:58 +01:00
Alexander Gavrilov
fea3451cf2 Fix inverted texture paint overlay display icons. 2018-11-26 14:52:24 +03:00
Campbell Barton
7493848008 3D View: remove 3D cursor
Use 3D cursor from the scene (was previously used for local-view).
2018-11-26 14:02:09 +11:00
Brecht Van Lommel
b4e037fe14 Fix extended shading pie menu not having same order as before. 2018-11-26 01:01:00 +01:00
Campbell Barton
48b0695806 Cleanup: unused vars, imports 2018-11-26 09:27:25 +11:00
Brecht Van Lommel
43325e98da Tools: add Select tool, with transform tweak on drag and no click delay.
For users that want the 2.7 LMB keymap behavior, this provides a way of
working without tools interfering. For RMB select this operator is quite
redundant with the Cursor tool, we may have to find a solution for that.

Note that we also might later add transform tweak to the transform tools,
when nothing is selected. But this is important for existing users who
preferred the existing workflow.
2018-11-25 20:09:43 +01:00
Brecht Van Lommel
e840f0a90b Keymaps: add 3D view click empty space to deselect all.
The implementation of this operator was modified to be more efficient and
ensure the undo history has the exact operator used.
2018-11-25 20:07:47 +01:00
Julian Eisel
b00963afc1 UI: Initial User-Preferences redesign
Implements the first changes for T54115:

* Rename "User Preferences" window to "Settings" in the UI.
  We'll likely put workspace settings in there, separate from the global
  user settings. System settings should become separate from user
  settings in future to allow settings for specific hardware.
* Add sidebar region for navigation (scrolls independently).
  Addresses space problems, so we can add more categories as needed now.
* Increase size of Settings window to compensate new navigation bar.
* Group sections into User Preferences and System.
  Icons for section groups by Andrzej Ambroz. Thanks!
* Bumps subversion for file compatibility.

Screenshot: https://developer.blender.org/F5715337

I also added categories for future work, but commented them out.
We may also want to redesign contents of each section now.

Reviewers: brecht, campbellbarton
Differential Revision: https://developer.blender.org/D3088
Design Task: https://developer.blender.org/T54115
2018-11-25 17:08:58 +01:00
Dalai Felinto
4c3ed98ca2 Local View
Bring back per-viewport localview. This is based on Blender 2.79.
We have a limit of 16 different local view viewports.

We are using both the numpad /, as well as the regular /.

Missing features:
* Hack to make sure lights are always visible.
* Make rendered mode with external engines to support this as well
  (probably just need to support this in the RNA iterators).
* Support over 16 viewports by taking existing viewports out of local view.

The code can use a cleanup pass in the future to unify the test to see
if an object is visible (or we can use TESTBASE in more places).
2018-11-25 09:50:34 -02:00
Brecht Van Lommel
a2e209f20a Merge branch 'master' into blender2.8 2018-11-24 23:44:17 +01:00
Brecht Van Lommel
33750e8abb Fix T58006: smart UV project island margin should not use length units.
This distance is in UV space, not world space.
2018-11-24 23:43:03 +01:00
Campbell Barton
31e3b7790a Keymap: preference for extended shading menu
This brings back the option to have x-ray & overlay toggle.
2018-11-24 11:24:34 +11:00
Brecht Van Lommel
7b0f638ff6 UI: swap wireframe/solid order in pie to match order in header. 2018-11-23 12:37:43 +01:00
Campbell Barton
a6eb9a3e21 Tool System: uv lasso/box select options
These tools now support (new, add, subtract),
(xor, and) could be supported but are complicated by UV's sticky
selection modes.
2018-11-23 17:52:52 +11:00
Campbell Barton
1fcb3e791f Cleanup: single quote enums 2018-11-23 13:55:33 +11:00
Campbell Barton
d56c0a0a6a Cleanup: rename bone-select to xray
This shows bones in font and uses the xray toggle binding.
Also 'bone select' isn't very meaningful on it's own.
2018-11-23 13:48:21 +11:00
Pablo Vazquez
3fdcd2293e UI: Don't promt when deleting via Object Context Menu.
Suggested in the UI paper-cut thread at devtalk.blender.org by ThinkingPolygons
2018-11-23 03:47:32 +01:00
Pablo Vazquez
1540a1ddd1 UI: Icons in context menu for copy/paste 2018-11-23 03:47:32 +01:00
Campbell Barton
1ffb2bf917 Pose: make pose-bone xray usable in wpaint mode
Update UI, draw-manager and operator to support with pose-bone-xray
when in weight paint mode.
2018-11-23 13:19:22 +11:00
Campbell Barton
4022a16fbe Keymap: adjustments to shading keys
- Z shows pie menu (removed wire/xray toggles).
- Alt-Z toggles x-ray.
- Shift-Z toggles wireframe.
- Shift-Alt-Z toggles overlays.

Note that toggle overlays had no binding for 2.7x,
this is likely not a heavily used option and could even be left out.
2018-11-23 11:39:44 +11:00
Pablo Vazquez
62592ae987 UI: Object Context Menu tweaks.
* Move type-specific options first.
Allows to get quicker access to settings like Shading Smooth/Flat
by pressing W -> S/F, or camera or light settings.

* Lights: Rename Strength to Energy
* Lights: Show Energy when using EEVEE
2018-11-22 19:02:51 +01:00
Clément Foucault
3d77517ad5 Eevee: Reflection Plane: Small UI fix and invert facing fading 2018-11-22 16:15:14 +01:00
Campbell Barton
ea2d0f9a7a Correct typo 2018-11-22 16:17:09 +11:00
William Reynish
dcf4bf8db9 Icons: use newly added icons 2018-11-22 15:31:19 +11:00
Pablo Vazquez
fb8aa611d0 UI: String tweak for "UnLock" and Un-Mute in VSE 2018-11-22 02:02:11 +01:00
Pablo Vazquez
644e66caca UI: Fix Lock/Mute menu in VSE
Thanks @tintwotin for reporting it!
2018-11-22 02:02:11 +01:00
Campbell Barton
3b7daa5bf4 Tool System: Updates for keymap stored as string 2018-11-22 11:13:53 +11:00
Campbell Barton
f44a8bd257 Tool System: store keymap name in tool instead of the keymap
Resetting keymaps caused them to become invalid (crashing on access).
2018-11-22 10:25:24 +11:00
Bastien Montagne
77764ab22c 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.
2018-11-21 22:03:24 +01:00
Bastien Montagne
b508de3d3c UI: First batch of fixing missing categories for panels. 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
Campbell Barton
f5df1efa2f Cleanup: warnings 2018-11-22 05:26:18 +11: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
Jacques Lucke
b93c81e002 Image Empties: always show in orthographic view by default 2018-11-21 13:52:12 +01:00
Bastien Montagne
5892f0fd0c 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.
2018-11-21 12:04:09 +01:00
Antonioya
e85aa8b8da GP: Change cursor for primitves 2018-11-21 10:52:46 +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
Pablo Vazquez
b6918eaf23 UI: Horizontal/Vertical split options in Area menu. 2018-11-21 01:33:41 +01:00
Pablo Vazquez
d433e9de5c UI: Icon and separator for Add Node (Search). 2018-11-21 01:25:44 +01:00