Commit Graph

65332 Commits

Author SHA1 Message Date
Campbell Barton
30b1e37e94 Fix T57295: Edit-mesh modes got out of sync 2018-10-19 15:48:39 +11:00
Campbell Barton
9b5183769b Cleanup: compiler warnings 2018-10-19 14:51:55 +11:00
Campbell Barton
c41fb5fac2 Fix UI message-bus automatic subscription 2018-10-19 14:46:24 +11:00
Campbell Barton
6add652c38 Fix T57294: Modifiers cage ignore face visibility 2018-10-19 13:57:00 +11:00
Campbell Barton
60d7740fe6 Tool System: option for transform drag action
See: T57203
2018-10-19 11:54:26 +11:00
Campbell Barton
a30c9f710a Partial revert '#if 0' cleanup
Partially revert 41216d5ad4

Some of this code had comments to be left as is for readability,
or comment the code should be kept.
Other functions were only for debugging.
2018-10-19 09:18:22 +11:00
Clément Foucault
642b77e874 Edit Mesh: Decrease the depth bias on vertices 2018-10-18 20:42:32 +02:00
Brecht Van Lommel
9d318da4a7 Merge branch 'master' into blender2.8 2018-10-18 20:11:14 +02:00
Brecht Van Lommel
1d05f0dc22 Fix Copy Objects to Buffer breaking library paths.
This is a bug experienced by animators in the Blender Studio that developers
have been trying to fix for a /long/ time.

What happens is that partial file writing extracts the needed datablocks from
the main list of datablocks into a smaller one. Afterwards they are added back
to the main list, but in some cases not exactly in the same order.

There is file path remapping code that depends on the datablocks being in
exactly the same order as before, and when this was not the case filepaths
would get swapped between datablocks

The reason datablocks are not restored in the same order is because the sorting
of datablocks by name is a) case insensitive and b) undefined if there are
multiple datablocks with the same name from different libraries. This should
be made well defined, but the fix in this commit is simpler.

The way animators ran into this bug is that they use the Copy Attributes addon
a lot, which has as the first item in the menu Copy Selection to Buffer. In
some cases this would be clicked accidentally when menu is near the edge of the
window, breaking the library paths which would only be noticed a much later on
file save and reload.

The way this bug was finally tracked down is that it was suspected that the
undo system was the cause, and so Bastien added library validation for undo.
When Hjalti then did undo and noticed the error, he remembered accidentally
clicking Copy Selection to Buffer just before, and we could finally reproduce
the bug.
2018-10-18 20:10:15 +02:00
Dalai Felinto
ec305ea91f Fix assert/crash when copying RGBA color into RGB
For example, copy from viewport display color into brush color.
2018-10-18 16:14:40 +00:00
Jacques Lucke
ce0a468408 Outliner: drop into master collection when below everything else
Reviewers: brecht

Differential Revision: https://developer.blender.org/D3810
2018-10-18 15:45:48 +02:00
Jacques Lucke
41216d5ad4 Cleanup: Remove more #if 0 blocks
Continuation of https://developer.blender.org/D3802

Reviewers: brecht

Differential Revision: https://developer.blender.org/D3808
2018-10-18 15:43:06 +02:00
Brecht Van Lommel
cfdd902d2d Fix debug build after recent changes. 2018-10-18 15:32:54 +02:00
Clément Foucault
3e6b34dede Eevee: Fix default texture coord for procedural texture in world tree 2018-10-18 15:30:16 +02:00
Clément Foucault
6ef5bc1b99 Cleanup: node_tex_checker: Vectorize operation in GLSL 2018-10-18 15:30:16 +02:00
Brecht Van Lommel
a18b806004 Fix use of uninitialized variable in cloth collision.
No apparent difference in a quick simulation, but was clearly wrong.
2018-10-18 12:59:27 +02:00
Brecht Van Lommel
5869bf5002 Cleanup: fix compiler warnings. 2018-10-18 12:19:06 +02:00
Campbell Barton
321c8232bc Tool System: expose shear tool x/y option 2018-10-18 13:55:01 +11:00
Campbell Barton
9b5cf593a6 Gizmo: tweak sorting to avoid view-aligned shear 2018-10-18 13:00:16 +11:00
Campbell Barton
678c200309 Gizmo: remove 'Click Anywhere' option
Having an invisible gizmo caused event handling problems (see: T56603).

This is hard to avoid since gizmos are similar to buttons in the way
they have priority over the regular keymap.

Transform events use tweak so events to fall though to the general
view 3d keymap (for cursor placement for eg).
2018-10-18 12:36:39 +11:00
Campbell Barton
4c1250570b Cleanup: style 2018-10-18 12:03:04 +11:00
Campbell Barton
a5467637f2 Cleanup: use mul_m3_series 2018-10-18 11:50:22 +11:00
Campbell Barton
eee8153299 Gizmo: depth sort shear gizmos 2018-10-18 11:50:22 +11:00
Campbell Barton
40f679ccb9 Cleanup: move gizmo sort functions into an API 2018-10-18 11:50:22 +11:00
mano-wii
a2922f9840 Optimization: Edit Mesh Overlay
In tests with edit_cage: performance jumped from 9.37ms to 9.17ms.
2018-10-17 15:46:58 -03:00
Clément Foucault
c9faaa6ea7 DRW: Fix DRW_shgroup_create_sub returning source shgroup
instead of the actual sub group...
2018-10-17 19:01:56 +02:00
Clément Foucault
f666be6edf EditMesh: Fix uninitialized value causing red outline on edges 2018-10-17 18:49:27 +02:00
Clément Foucault
fd61b49d50 ObjectMode: Fix Outlines being drawn for BBox meshes 2018-10-17 18:09:37 +02:00
Clément Foucault
91e5e02aff ObjectMode: Fix instances with BoundBox drawtype not displaying 2018-10-17 18:09:37 +02:00
Alexander Gavrilov
e5b18390fa Shrinkwrap: implement the use of smooth normals in constraint & modifier.
- Use smooth normals to displace in Above Surface mode.
- Add an option to align an axis to the normal in the constraint.

I've seen people request the alignment feature, and it seems useful.
For the actual aligning I use the damped track logic.

In order to conveniently keep mesh data needed for normal
computation together, a new data structure is introduced.

Reviewers: mont29

Differential Revision: https://developer.blender.org/D3762
2018-10-17 17:55:34 +03:00
Bastien Montagne
d31ea3b89a Merge branch 'master' into blender2.8
Conflicts:
	source/blender/blenkernel/BKE_global.h
	source/blender/editors/undo/ed_undo.c
2018-10-17 16:50:36 +02:00
Bastien Montagne
5f8222501c DEBUG_IO: add sanity check on libdata in undo step as well.
There are serious suspicions that weird corruptions faced by studio
artists may happen in undo/redo code, so let's see whether that's the
case.

With this, and when --debug-io arg is passed on startup, the whole lib
data are checked at every undo. This makes undo slower (from two to
three times slower), but it could help us spot better what happens...
2018-10-17 16:43:02 +02:00
Bastien Montagne
496c325ffa Expose 'debug_io' flag in bpy.app 2018-10-17 16:42:36 +02:00
Bastien Montagne
2d1b9f7841 Minor style cleanup. 2018-10-17 16:42:18 +02:00
Alexander Gavrilov
938aa52313 Dope Sheet: fix assert in new hold code when bezier keys are not sorted.
Turns out this can happen during duplicate+drag operations.
2018-10-17 16:30:34 +03:00
Philipp Oeser
e6adf9ac9a Fix T57096: Crash when scaling bones
Reviewed By: brecht

Differential Revision: https://developer.blender.org/D3777
2018-10-17 15:09:01 +02:00
Jacques Lucke
21744217ce Cleanup: remove some #if 0 blocks
Reviewers: brecht, campbellbarton

Differential Revision: https://developer.blender.org/D3802
2018-10-17 12:43:41 +02:00
Clément Foucault
c6eb5651ba Eevee: Fix error when using texture coordinate on world shaders
Compilation errors were happening on OSX with errors of the type:
```ERROR: Input of fragment shader 'viewNormal' not written by vertex shader```
2018-10-17 12:18:06 +02:00
Jacques Lucke
ec7c3b5b4f Cleanup: better naming
Suggested by Campbell here: https://developer.blender.org/rB09cd651bb7e59044cbcd0664e8b1064cb37734ed
2018-10-17 09:53:05 +02:00
Campbell Barton
8e071e76de Gizmo: change axis used for shear handles
The shear direction should be more obvious this way.
2018-10-17 17:47:09 +11:00
Campbell Barton
80fb943e4f Transform: map mouse input to shear direction 2018-10-17 17:18:30 +11:00
Campbell Barton
9273b91eef Transform: show arrows for 'custom' ratio input
Arrows are now shown for vertex/edge slide.
2018-10-17 17:14:36 +11:00
Campbell Barton
7ce387b1cd RNA: disable notifiers from property updates
This was re-enabled because it made copy-on-write bugs hard to
track down.

Since copy-on-write implementation has been simplified
this isn't a problem anymore.
2018-10-17 16:17:00 +11:00
Campbell Barton
8ecec995ed Cleanup: naming 2018-10-17 14:09:32 +11:00
Campbell Barton
ae093e6a84 Cleanup: whitespace 2018-10-17 14:08:44 +11:00
Campbell Barton
96dc1ad308 Fix T56735: Autosmooth option corrupts UVs 2018-10-17 13:26:27 +11:00
Dalai Felinto
098b86475d Use CTX_DATA_BEGIN_FOR_ID 2018-10-16 22:18:02 -03:00
Dalai Felinto
ff9e0b6781 Fix sculpt curve stroke paint 2018-10-16 21:41:29 -03:00
Dalai Felinto
df816d534f Fix cmake not triggering rebuild on .glsl changes
At least on windows we do not re-run datatoc when the .glsl files change.

To test is simple, just change edit_mesh_overlay_common_lib.glsl
remove lines, write plain text, ..., now rebuild and go in edit mode
with the default cube.

I also had to remove the entry in gpu/CMakeLists.txt for
gpu_shader_material.glsl since this was being tracked directly, as well
as running data_to_c_simple (otherwise CMake raises an error for
duplicated entries).

We probably want to do the same for the other datatoc functions.

Reviewers: LazyDodo, brecht
Differential Revision: https://developer.blender.org/D3803
2018-10-17 11:24:33 +11:00
Dalai Felinto
7baa8d2e8f Multi-Objects: POSE_OT_ik_add + POSE_OT_constraint_add_with_targets
You can now add the target from the non-active armature when they are
both in pose mode.

There were different ways of going about those operators:

* We could create one constraint on each active bone of each object.
  That wouldn't follow what creating constraints from the UI does
  though.

* We could change the selection/active order and create a constraint for
  all the selected bones, to the active bone. However this would change
  the design of changing only the active bone (which also is the one we
  see in the buttons editor).

But in the end I think it makes more sense to let users set a constraint
from a charactor to a prop in a handy way.

This is pretty much what we had in 2.7x. There we would go for the
selected objects, if no selected bone was found in the active object.
In 2.8, however, we need this change to make things working as
before/intended.
2018-10-16 21:10:31 -03:00