Commit Graph

77864 Commits

Author SHA1 Message Date
Hans Goudey
a71d3bd2df UI: Don't show modifier operation reports on button press
The reports should only show when using shortcuts.
2020-06-29 15:06:13 -04:00
Hans Goudey
1fa40c9f8a UI: Add shortcuts for modifier panels
The shortcuts act on the modifier with its panel under the mouse.
The following shortcuts are enabled by default:
  - Remove modifier: X, Delete
  - Apply modifier: Ctrl A
  - Duplicate modifier: Shift D
More shortcuts can be added in the keymap.

Each panel can now store a custom data RNA pointer, and a new
function is added to get the custom data for the panel under the
cursor. This custom data could be used to refactor the "List Panel
System" to generalize it and integrate it further with RNA.

The same functionality will be added  in further commits where it
applies to constraints, grease pencil modifiers, and effects.

Differential Revision: https://developer.blender.org/D8031
2020-06-29 15:00:25 -04:00
Hans Goudey
4f8a881715 Fix T78444: Duplicate "From Radius" in Cast Modifier UI
This button was meant to be "Use Transform"
2020-06-29 14:41:46 -04:00
Pablo Dobarro
5d31ef0820 Remove Threaded Sculpt option
Threaded Sculpt is now always enabled by default. If it causes
performance problems compared single threaded sculpt it should be
considered a bug.

Reviewed By: sergey

Maniphest Tasks: T77638

Differential Revision: https://developer.blender.org/D7960
2020-06-29 18:20:09 +02:00
Jacques Lucke
3aced11d79 Nodes: rename node_socket.c to node_socket.cc
I have to add some C++ code in callbacks for socket types
for the new particle system.
2020-06-29 17:36:21 +02:00
Julian Eisel
bcf49d13e5 Fix compile error on Apple Clang
Needs to compile with `CMAKE_OSX_DEPLOYMENT_TARGET` of 10.14 at least to
have `std::optional<>::value()` available. So we have to increase the
minimum required compiler version, but that requires more changes. Just
fix the build error for now.
2020-06-29 17:28:37 +02:00
Julian Eisel
937d89afba UI: Show library status icons in search menus, rather than letter prefix
Rather than a `L` (linked), `O` (overridden) or `M` (missing) prefix for the
name, show the existing library status icons. See D7999 for screenshots.

Note that when using preview icons, or if the search menu contains items with
own icons (e.g. brush icons), we still fallback to the prefix solution.

Zero or fake user is still indicated with a prefix.

Differential Revision: https://developer.blender.org/D7999

Reviewed by: Bastien Montagne, William Reynish
2020-06-29 17:28:37 +02:00
Bastien Montagne
5024c54271 RNA: properly tag 'embedded' ID pointers as owned.
This is important at several level, mainly for overrides currently.

Note that this also includes shape keys, since from RNA point of view
those are also 'embedded' (they are not editable, not linkable, ...).
2020-06-29 17:28:04 +02:00
Bastien Montagne
583cfe2596 LibOverride: ignore all data arrays of meshes.
Those are not overridable, and comparing them is... costly.
2020-06-29 17:28:04 +02:00
Bastien Montagne
28f4e5cd6b RNA: Add a way to prevent automatic addition of 'no ownership' flag for ID pointer properties.
Since makesrna runs after all properties have been defined, we have to
remember with a new internal flag when we explicitely disable the
'PROP_PTR_NO_OWNERSHIP' flag for a property.

Otherwise there was no way to do so for ID pointer properties...
2020-06-29 17:28:04 +02:00
Bastien Montagne
febb2351ad Fix ShapeKeys not being deleted together with their owner ID.
Consistency with e.g. copying (copying a mesh also duplicates its
shapekey typically).

Baby step towards getting rid of this horrible ID, some day...

Note that for now we only do that when taking BMain into account, fancy
code dealing with non-main IDs and such has to deal with those itself.
2020-06-29 17:28:04 +02:00
Bastien Montagne
dcdffe719f Fix ID_swap not keeping original recalc flags.
Note that we might be missing more things there still, maybe some tags
e.g. should also be swapped?
2020-06-29 17:28:04 +02:00
Bastien Montagne
b723d38812 Add utils to remove an ID from the relations runtime data in Main. 2020-06-29 17:28:04 +02:00
Jacques Lucke
cff688ce7b Cleanup: make some type casts explicit
Doing this so that I turn this into a .cc file.
2020-06-29 17:27:03 +02:00
Pablo Dobarro
bf87df3485 Fix T78323: Enable Unified and Secondary colors for Scultp Vertex Colors
The report does not include any file, but probably that file is using the
settings for unified colors, which are currently not available in the UI,
so it always paints black. This enables unified colors and secondary
colors for sculpt vertex colors, so it should solve that issue.

Unified color does not make much sense now as the Paint tool is the only
one that has paint capabilities, but it will do in the future when
sculpt and paint at the same time is enabled and the paint capability is
added to more tools.

Reviewed By: sergey

Maniphest Tasks: T78323

Differential Revision: https://developer.blender.org/D8136
2020-06-29 17:25:27 +02:00
Pablo Dobarro
3118636f81 Fix Smear Tool too weak on high poly meshes
The defaults for the Smear tool were making it too weak in high poly
meshes, specially the alpha/pressure option enabled by default. Now this
option is disabled, it has a linear pressure curve and less spacing.

Reviewed By: sergey

Differential Revision: https://developer.blender.org/D8134
2020-06-29 17:23:43 +02:00
Germano Cavalcante
9c29803255 Transform: Draw edge considered in the slide value
Useful for identifying how the value is used and which edge
is considered in the snap.
2020-06-29 12:18:59 -03:00
Germano Cavalcante
7f1fd1818a Fix T77946: Problem snapping with "Project onto Self" on a curve with generated geometry 2020-06-29 11:38:35 -03:00
Antonio Vazquez
164a49f047 GPencil: Cleanup function names replace gp_ by gpencil_ prefix (cont) 2020-06-29 15:47:49 +02:00
Antonio Vazquez
a351eb0726 GPencil: Cleanup function names replace gp_ by gpencil_ prefix 2020-06-29 15:47:43 +02:00
Antonio Vazquez
399dbb1aa3 GPencil: Cleanup - Rename some functions from gp_ to gpencil_ 2020-06-29 15:47:38 +02:00
Antonio Vazquez
1cda374906 GPencil: Cleanup - Rename annotation function to new prefix
These functions were using the old gpencil or gp prefix.
2020-06-29 15:47:24 +02:00
Jeroen Bakker
13e2337da7 Fix T78361: Crash When Modelling
Forgot to free the tangent layer for bmesh in the drawing code.
2020-06-29 15:38:17 +02:00
Jacques Lucke
cb5bfb32ba Depsgraph: introduce blender::deg namespace
Reviewers: sergey

Differential Revision: https://developer.blender.org/D8150
2020-06-29 15:21:30 +02:00
Clément Foucault
81fb08ad57 Fix T74290 Face Dots in front (X-ray) Visual Glitch
This is not likely to be the silver bullet but it fix the common case.
2020-06-29 15:02:29 +02:00
Jacques Lucke
76e252ead3 Cleanup: use blender::bke namespace in simulation.cc 2020-06-29 14:47:00 +02:00
Germano Cavalcante
85cde12bff Cleanup: reduce code indentation and simplify some code flow 2020-06-29 09:33:57 -03:00
Richard Antalik
2476c47d75 VSE: Fix type mismatch introduced in rB8bcfa0d1fb9f
Pass `IMB_Proxy_Size` to `seq_can_use_proxy` and remove duplicate check.
2020-06-29 14:32:00 +02:00
Jacques Lucke
18bff53c99 BLI: remove blender::Optional in favor of std::optional
`std::optional` can be used now, because we switched to C++17.
2020-06-29 14:30:06 +02:00
Philipp Oeser
4fc5233467 Fix T78401: Convert Mesh to Grease Pencil with empty material slot crashes
Also create the 'simple fill' in case there are only empty material
slots.

Maniphest Tasks: T78401

Differential Revision: https://developer.blender.org/D8151
2020-06-29 14:23:10 +02:00
Clément Foucault
9feb0d5f2e Fix T74220 Mantaflow Color Mapping not ignoring alpha value
And also remove some sRGB hack.
2020-06-29 14:19:52 +02:00
Clément Foucault
bd6cc282d2 Fix T61573 GPencil: Annotation thickness doesn't work with on OSX
This fixes the issue by using the polyline shader but this does not gives
the best results.

A better way would be to have a dedicated shader for the lines to avoid
the line break at every angle change.
2020-06-29 14:19:52 +02:00
Julian Eisel
9afad1de44 Fix compiler warning for deprecated variable use 2020-06-29 13:13:03 +02:00
Campbell Barton
8e494f7a45 Cleanup: minor change missed last commit 2020-06-29 21:03:42 +10:00
Campbell Barton
5a6145f32c Cleanup: use designated initializes for mesh extract structs
Better readability and allows adding new struct members without
adding empty slots to every 'MeshExtract' struct.
2020-06-29 20:52:19 +10:00
Jacques Lucke
38c9deeb5a Cleanup: use std::make_unique instead of blender::make_unique
This is possible, because we use C++17 now.
2020-06-29 12:35:27 +02:00
Philipp Oeser
2def6f5568 Fix T78415: Particle Edit mode Add brush with a radius > 181px crashes
Caused by short overflow, change to int instead.

Maniphest Tasks: T78415

Differential Revision: https://developer.blender.org/D8148
2020-06-29 12:03:39 +02:00
Jacques Lucke
784911a4a0 Cleanup: rename namespace DotExport to dot 2020-06-29 11:53:17 +02:00
Jacques Lucke
b51d6e8012 Cleanup: Use blender namespace in blenkernel 2020-06-29 11:48:22 +02:00
Jeroen Bakker
0baa000b85 Fix T73892: EEVEE Viewport Render Ignores Render As Wire
In the viewport an object can be set to be displayed as wire. When
rendering the viewport this setting is ignored and follows the
path or doing a final render. This patch will add an exception
when rendering a viewport render.

Reviewed By: Clément Foucault

Differential Revision: https://developer.blender.org/D8043
2020-06-29 08:19:14 +02:00
Jeroen Bakker
3b630bd563 Fix T78229: Playhead not refreshing when area is maximized
No other areas were tagged for redraw.
2020-06-29 08:13:48 +02:00
Jeroen Bakker
41bfdeaa53 Fix T78176: Sequencer renders playhead line twice 2020-06-29 07:37:40 +02:00
Antonio Vazquez
b21ba5e579 GPencil: Cleanup - replace loop with LISTBASE_FOREACH 2020-06-28 17:13:10 +02:00
Antonio Vazquez
3bdfd8c916 Fix T78353: GPencil: Make Circle select only select points inside circle
Now, instead of select the section of the stroke that is below circle, only the points inside circle are selected.

Also fixed a bug when segment selection mode is enabled.

Differential Revision: https://developer.blender.org/D8141
2020-06-28 16:51:28 +02:00
Clément Foucault
6d8b6aec18 Fix T74024 Faces missing, weird faces added
Workaround by adding a special case for that driver in gpu_extensions.c
2020-06-28 15:51:15 +02:00
Ankit
340130719f Use const in nodeFindSocket
Since the function only iterates over the input members,
and matches their identifiers, `bNode *`can be `const`.

All other usages of the `nodeFindSocket` use it with
other functions that modify the node. (e.g.: ``nodeAddLink` )
But an exporter needs the node to be a `const`, so this
creates unnecessary and slightly unsafe design changes.

Reviewed By: JacquesLucke

Differential Revision: https://developer.blender.org/D8142
2020-06-28 15:27:29 +05:30
Clément Foucault
df8847de6d Fix T77549 GPUTexture: Crash caused by NULL parameter to glBindTextures...
... or glBindSamplers.
2020-06-28 01:44:17 +02:00
Hans Goudey
59d2dd2237 UI: Remove duplicate modifier error message
Thanks to J. Fran Matheu for pointing this out.
2020-06-27 17:56:29 -04:00
Jacques Lucke
4ea92f775e Fix compile error in recent commit
This was introduced in rBd7b10e5b740fe2.
2020-06-27 21:07:20 +02:00
Jacques Lucke
ff82049642 Functions: add MutableAttributesRef data structure
This will be used to reference the content of a CustomData structure
in C++ code, that does not need to know who owns the data but only
works with it.
2020-06-27 20:58:35 +02:00