Commit Graph

4150 Commits

Author SHA1 Message Date
Campbell Barton
09aa799e53 PyAPI: Use annotations for RNA definitions
- Logical use of fields since they define type information.
- Avoids using ordered-dict metaclass.

Properties using regular assignments will print a warning and load,
however the order is undefined.
2018-07-11 22:18:09 +02:00
Pablo Vazquez
4880b71d54 UI: Flip Overlays/Shading position
This brings the Object Visibility dropdown closer to overlays which
also controls visibility of elements int he viewport, so it makes more
sense there. Also placing the Overlays settings closer to the viewport.
2018-07-11 20:10:27 +02:00
Campbell Barton
4b57bb0387 UI: overlay, remove redundant 'object' term 2018-07-11 19:01:10 +02:00
Pablo Vazquez
c643f02b07 UI: Fix Seams button drawing differently 2018-07-11 19:01:01 +02:00
Campbell Barton
4e9d039ef7 3D View: option not to draw center dots
While this is a fairly obscure option,
it means it's possible to disable all overlays except for any
overlays the users wants to see.
2018-07-11 18:55:54 +02:00
Pablo Vazquez
9bf1868eae UI: Rename Bone Select to Fade Geometry in Overlay popover
Part of design: T55863
2018-07-11 18:54:42 +02:00
Pablo Vazquez
960784e719 UI: Overlay panel fix for display_all 2018-07-11 18:46:08 +02:00
Pablo Vazquez
4299f62114 UI: Re-arrange Overlay popover for Mesh Edit Mode
Sub-panels for shading, measurement, normals, freestyle and developer.
Less-used sub-panels will be collapsed by default once their implementation
is complete (fixing spacing between sub-panels, adding the triangle to collapse, etc).

Also added missing check for overlays on/off on existing sub-panels.
2018-07-11 18:41:38 +02:00
Pablo Vazquez
ccfc66edec UI: Add missing Viewport Info to Overlay popover 2018-07-11 18:41:38 +02:00
Campbell Barton
8bab591758 UI: overlay panel minor tweak
Move face-orientation to less prominent location since its
more of a debugging option.
2018-07-11 17:22:57 +02:00
Campbell Barton
b1c2f4d468 Numeric Input: preference to default to advanced 2018-07-11 16:32:27 +02:00
Pablo Vazquez
7552972de0 UI: Remove duplicate Viewport Display panel from Scene properties
The Shadow and SSAO settings here are accessible from the Shading popover.
2018-07-11 16:07:40 +02:00
Pablo Vazquez
0ae440eba5 UI: Overlay popover - Wireframe slider style same as in shading popover
Avoids having to switch between two icons, which was misaligned anyway.
2018-07-11 16:07:40 +02:00
Pablo Vazquez
05b6b5d234 UI: Re-arrange Shading popover
* Unify X-Ray/Shadow toggle and factor, using the whole width gives you finer control
* Shadow settings next to intensity slider
* Cavity settings next to Ridge/Valley sliders
* Collapse Cavity settings when not used
* Make MatCap preview and browser dialog smaller. MatCaps are added by the user
so she is already familiar with how they look. No need to preview them that big
while browsing. To see the MatCaps in detail we have the User Preferences/Asset Manager.

Having popovers inside popovers triggers some minor glitches that will be addressed later.
(e.g. they open on mouse over and the popover arrow is not aligned)
2018-07-11 16:07:40 +02:00
Campbell Barton
117fd02477 UI: correct panel default-closed 2018-07-11 14:04:17 +02:00
Campbell Barton
7f77ee70f1 UI: minor tweaks to overlay panel
Position 'outline selected' more prominently,
gives more useful behavior when dragging over the left column.
2018-07-11 13:58:10 +02:00
Pablo Vazquez
55d44a3b6b UI: Move Object Type Visibility next to shading/overlay settings
Group Object Type Visibility with the viewport settings in the header.

The eye icon is a placeholder. A new icon is needed to better communicate
the user at a glance if all (or none) object types are enabled, or why certain types
are not visible/selectable in the viewport.

Part of design: T55863
2018-07-11 13:24:13 +02:00
Pablo Vazquez
160959152e UI: 3D Viewport Header - swap position of shading/snapping settings
When tweaking the shading/overlays settings through the popovers,
these get on the way of the content in the viewport. Making it hard to
see the result of our changes.

Unfortunately this breaks consistency with other headers where the snapping
tools are aligned to the right, but the benefits outweigh the costs.
2018-07-11 13:24:13 +02:00
Pablo Vazquez
78fc4b592a UI: Re-arrange Overlays popover
Organize content in categories/sub-panels.

The result is a more organized but slightly taller popover.
Once sub-panels are implemented code-wise, the alignment issues
(like panel label) and extra space between the content and panels
headers will be reduced. Together with the ability to have certain
less-used popovers collapsed by default, this will make the
popover more compact.

Part of design: T55863
2018-07-11 13:24:13 +02:00
Campbell Barton
1d83fe82bc Cleanup: simplify RNA names 2018-07-11 13:02:22 +02:00
Campbell Barton
c17611af95 Manipulator: changes for overlay options
There are now 3 categories in the overlay popover:

- Navigation
- Active (camera, lamp... etc)
- Tool (manipulator)

The user preference for mini axis now controls if the mini axis
displays minimal or a full-interactive widget.

Part of design: T55863
2018-07-11 10:49:18 +02:00
Pablo Vazquez
0953e8af98 UI: Single-column for object type visibility 2018-07-10 20:25:50 +02:00
Campbell Barton
8a3366a494 3D View: option to hide object overlays
This hides extra wires and details you may want to disable,
name may be changed.
2018-07-10 18:31:52 +02:00
Pablo Vazquez
245d0d6bb7 UI: Textures - Move Colors panel below texture-specific panels 2018-07-10 18:22:22 +02:00
Pablo Vazquez
debfbdc279 UI: Single-column and sub-panels for Image Texture properties 2018-07-10 18:22:22 +02:00
Clément Foucault
1a43e08187 Eevee: LightCache: Initial Implementation
This separate probe rendering from viewport rendering, making possible to
run the baking in another thread (non blocking and faster).

The baked lighting is saved in the blend file. Nothing needs to be
recomputed on load.

There is a few missing bits / bugs:
- Cache cannot be saved to disk as a separate file, it is saved in the DNA
  for now making file larger and memory usage higher.
- Auto update only cubemaps does update the grids (bug).
- Probes cannot be updated individually (considered as dynamic).
- Light Cache cannot be (re)generated during render.
2018-07-10 15:31:34 +02:00
Campbell Barton
b23404d701 3D View: overlay option to show bones
Allows drawing motion paths without the bones.
2018-07-10 14:10:12 +02:00
Campbell Barton
358e1181b5 Keymap: remove Shift-B in camera view
We already have Ctrl-B for setting the border,
no need for two keys to do the same thing.
2018-07-10 10:58:20 +02:00
Campbell Barton
1b55943888 UI: add colon to prefs headings 2018-07-10 09:56:57 +02:00
845899d373 UI: tweak image menu layout to match file menu more. 2018-07-09 23:31:44 +02:00
Campbell Barton
cf9f0b35be UI: add search to popup toolbar
Add for convenience only.
2018-07-09 17:37:15 +02:00
Campbell Barton
be8855a2ef UI: move visibility panel into the side bar 2018-07-09 17:00:09 +02:00
Campbell Barton
f7bce99e4d Keymap: support for reading/writing keymaps as data
Instead of running code to create a keymap, store them as data.
This allows for keymaps to share content as well as running
transformations at load time.
2018-07-07 19:53:02 +02:00
Campbell Barton
0f1000ce0b Cleanup: pep8, style 2018-07-07 09:02:34 +02:00
Campbell Barton
80a31d30a4 Merge branch 'master' into blender2.8 2018-07-07 08:53:00 +02:00
Campbell Barton
252207cc7a Cleanup: redundant poll checks 2018-07-07 08:36:17 +02:00
a6340a5068 Viewport: in Lookdev shading, disable scene lights and world by default.
Now we light with just a user defined HDRI by default, which is useful
for material setup and texture painting and lighting without having to
set up any scene lights.

Previously it would use the scene world without lights by default, which
in some files is just black.
2018-07-06 20:22:03 +02:00
74fd17e9d7 UI/Python: rename Lamps to Lights, to follow more standard terminology.
Internally it's still mostly named lamps, though some modules like Cycles
were already calling them lights.
2018-07-06 20:06:09 +02:00
Pablo Vazquez
d360eced65 UI: Single-column for 3D Cursor panel in 3D View 2018-07-06 18:29:57 +02:00
Vuk Gardašević
4674cffe29 UI: 3D View, View panel: single-column, flow and subpanel
See D3525
2018-07-06 18:23:15 +02:00
Campbell Barton
a48b52d546 3D View: support object type visibility/selection
Trying to have a single option for this is too likely to be
insufficient in some cases.

Instead, support object type visibility & selectability per view-port.
2018-07-06 17:53:40 +02:00
b0c32818ba UI: small layout fixes for RMB context menus. 2018-07-06 14:32:25 +02:00
Campbell Barton
3e0920c61a Fix view pie menu 2018-07-06 11:17:50 +02:00
Campbell Barton
ed2204933a Fix typo in empty image drawing 2018-07-06 10:01:05 +02:00
Campbell Barton
72e04f9890 Draw Manager: simplify object mask usage
Remove flag defines, use object types directly.
2018-07-05 20:43:50 +02:00
dbdafe1209 Shaders: add target setting to material output node.
This makes it possible to have a single shading nodetree that contains
separate Cycles and Eevee shaders. By default the target is set to All
so shaders are shared.
2018-07-05 18:43:48 +02:00
Campbell Barton
997b73c1db 3D View: split view-numpad into two operators
Naming operator based on keys it used was strange,
split into view-axis and view-camera.
2018-07-05 17:08:13 +02:00
Jeroen Bakker
404bacc639 Refactored into a single option
Technical all options are still there for finetuning.
2018-07-05 16:57:22 +02:00
Jeroen Bakker
4dfcc6c25a Overlay: enable/disable drawing of specific object types.
This patch will allow users to customize what object types will be drawn by the object mode overlay.
It supports: Empties, Lamps, Cameras, Speakers, Armatures and Lightprobes.

It currently does not support Physics objects due to the overlap it has with other objects types.

Also be aware that in pose mode the armature is drawn, but not by the object mode overlay

Reviewers: campbellbarton

Tags: #bf_blender_2.8

Differential Revision: https://developer.blender.org/D3524
2018-07-05 16:57:22 +02:00
Jeroen Bakker
c1678a3723 Revert "Overlay: enable/disable drawing of specific object types."
This reverts commit f7ec70895c78900db8e7db88d3713ebb9aa62730.
2018-07-05 16:51:49 +02:00