Commit Graph

11454 Commits

Author SHA1 Message Date
Campbell Barton
27cccaeccd UI: expand set origin in specials menu
Also remove menu, expand operator instead.
2018-11-29 12:24:20 +11:00
Campbell Barton
ce84d64546 UI: rename Center Points -> Origins
See: T56648
2018-11-29 08:19:57 +11:00
Antonioya
303b49ea37 Add Onion Skin support to Annotations
The old onion skinning used in 2.7x has been ported and converted to 2.8. Only basic features have been included. For more advanced onion skin features, use grease pencil objects.

Onion Skin is supported in View 3D and Sequencer.
2018-11-28 19:19:53 +01:00
Sergey Sharybin
565de7750b Use term Instancing in the interface
Currently only see this in object's properties, but might
be missing something.

Part of T56648.
2018-11-28 18:22:51 +01:00
Sergey Sharybin
7c7f3776dd Use collection and instance terminology in Python API
This follows naming convention agreed on in T56648.
2018-11-28 18:22:51 +01:00
Pablo Vazquez
e392e03354 UI: Layout tweaks to Studio Lights panel in Preferences.
Move Studio Lights panel first, and use single-column layout.
2018-11-28 16:24:55 +01:00
Clément Foucault
2d720f51cd Workbench: Change Studio lighting
This is in order to have more flexible ligthing presets in the future.
The diffuse lighting from hdris was nice but lacked the corresponding
specular information. This is an attempt to make it possible to customize
the lighting and have a cheap/easy/nice-looking pseudo-PBR workflow.

* Add cheap PBR to Workbench with fresnel and better roughness support.
  This improves the look of the metallic surfaces and is easier to control.
* Add ambient light to studio lights settings: just a constant color added
  to the shading.
* Add Smooth option to studio lights settings: This option fakes the
  effect of making the light bigger making the lighting smoother for this
  light. Smoother lights gets reflected like a background hdri.
* Change default light settings to include the smooth params.
* Remove specular highlights from flat shading. (could be added back but
  how do we make it good looking?)
* If specular lighting is disabled, use base color without using metallic.
* Include a lot of code simplification/cleanup/confusion fix.
2018-11-28 15:59:56 +01:00
Brecht Van Lommel
2bd62b076f Outliner/visibility: revert changes for now until we find better solutions.
See T57857 for discussion. This reverts:

"Outliner: Do not gray out empty collections"
4521d3e707.

"Remove eye column from the outliner"
fd16b35997.

Fix/workaround issues in pose and edit mode"
6d2e2e30d5.

"Per view-layer collection visibility"
4de6a210c6.
2018-11-28 14:34:13 +01:00
Brecht Van Lommel
dac747bd09 UI: rename settings back to preferences.
This distinguishes it better for the many other types of settings.

Ref T54115.
2018-11-28 13:58:35 +01:00
Campbell Barton
1a8d998868 Tool System: support for dynamic tooltips
Tools can define a function that generates the tooltip using a function,
this takes the tools keymap as an argument which can be used
to extract keys to include in the tip.
2018-11-28 23:53:27 +11:00
Brecht Van Lommel
edbf15d3c0 Defaults: left click select is now the default.
A few reasons motivating this change:
* It works well for all devices: mouse, trackpad, and tablet pens.
* For beginners or users coming from other software, it's easier to get
  started and avoids an initial stumbling block.
* Many users in 2.7 (about half?) were already using left click select, so
  combined with the above advantages it makes for a practical default.

Note that we continue to support right click select, as many experienced
Blender users (and developers) see efficiency advantages in this approach.

The option to switch is in the first time setup splash screen, and in the
user preferences.
2018-11-28 11:36:13 +01:00
Campbell Barton
7ecdcfe173 Cleanup: quiet keymap float compare warning 2018-11-28 17:50:44 +11:00
Campbell Barton
c527c78174 Cleanup: remove missing operator from UI 2018-11-28 17:48:26 +11:00
Campbell Barton
b1d67e6aab Tool System: add node links cut tool 2018-11-28 17:37:40 +11:00
Dalai Felinto
4de6a210c6 Per view-layer collection visibility
We still control this in the viewport collections visibility menu. But
now we are actually changing the visibility of the collections, not of
the objects.

If a collection is indirectly invisible (because one of its parents are
invisible) we gray it out.

Also if you click directly in the collection names, it "isolates" the
collection by hiding all collections, and showing the direct parents and
all the children of the selected collection.

Development Note:

Right now I'm excluding the hidden collections from the depsgraph.
Thus the need for tagging relations to update.

If this proves to be too slow, we can change.
2018-11-28 02:33:04 -02:00
Campbell Barton
4c6e7ef11f Missing from last commit 2018-11-28 11:27:06 +11:00
Campbell Barton
1b870bce85 Tool System: remove custom tool registration
API is not ready for beta (likely to change).
2018-11-28 10:40:02 +11:00
Campbell Barton
3f33b4573d Keymap: Change default spacebar action to play
This has been a contentious topic: Artists at the Blender-Studio prefer
this behavior, while the user community overwhelmingly prefers 2.7x
operator search. Previously this defaulted to accessing tools
(eg: Space-T activates transform.. Space-R rotate etc) which I still
believe is a better long term default - otherwise we don't have
efficient tool switching for a system we intend to make more use of,
nevertheless as far as I can tell users haven't been keen on adopting
this so far. Show the preference on the setup screen since many users
don't animate and will may want to quickly search or switch tools.
2018-11-28 08:00:04 +11:00
Pablo Vazquez
0217af2f99 UI: Bring back User Preferences entry in Editors list.
It's nonstandard and kind of weird, but it's nice when making keymaps, themes, quickly test things without spawning a new window.
2018-11-27 14:19:06 +01:00
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
Campbell Barton
b201196c2e Keymap: restore 3D view center w/ cursor (Shift-C)
Pablo Vazquez requests this back, an quick way to reset the cursor.
2018-11-27 13:26:39 +11:00
Campbell Barton
a2a0ad74c3 Keymap: 3D view center to cursor operator
Addition to Alt-MMB-Drag orbit,
Alt-MMB-Click centers the view on the mouse.
2018-11-27 13:26:39 +11:00
Campbell Barton
1752d9f3f9 Keymap: add preference for spacebar to run operator search 2018-11-27 13:14:09 +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
Brecht Van Lommel
cacff6ad27 Keymaps: for LMB keymap, add ctrl+LMB to select bones in weight paint mode. 2018-11-26 16:28:10 +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
Brecht Van Lommel
e7662ea257 Keymaps: keep Select Box as default tool. 2018-11-26 13:53:09 +01:00
Brecht Van Lommel
18103c9ec2 UI: expand tooltips for left/right click select. 2018-11-26 13:29:12 +01:00
Alexander Gavrilov
fea3451cf2 Fix inverted texture paint overlay display icons. 2018-11-26 14:52:24 +03:00
Campbell Barton
10bded145d Keymap: use 'W' key for select toolbar shortcut 2018-11-26 16:10:00 +11:00
Campbell Barton
c906cdc197 Cleanup: remove unused code & add comments 2018-11-26 16:07:03 +11: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
24c383cfc4 Fix some errors in the Blender Light theme. 2018-11-25 20:37:54 +01: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
5e5db7db89 UI: Disable font shadow in tabs
This was used to fake a 3D look, however that doesn't work well with the new,
flat style. It just made text appear blurry.
2018-11-25 18:35:48 +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
f48a089db8 Addons: enable GLTF 2.0 addon by default. 2018-11-24 23:59:25 +01:00
Brecht Van Lommel
a2e209f20a Merge branch 'master' into blender2.8 2018-11-24 23:44:17 +01:00