Commit Graph

66790 Commits

Author SHA1 Message Date
Jacques Lucke
ae5f19e32a Fix T59125: Outliner does not show view layer count
Reviewers: brecht

Differential Revision: https://developer.blender.org/D4060
2018-12-13 11:52:27 +01:00
Antonioya
6c39ea27c8 GP: Create Framebuffer textures only if needed
Now, if there aren't grease pencil objects, the textures and framebuffers are not created. This unload GPU Memory when not using GP.
2018-12-13 11:51:41 +01:00
Antonioya
715ab529f1 GP: Changes textures from DEPTH24_STENCIL8 to DEPTH_COMPONENT24
As we are not using stencil info, we don't need this in the texture.
2018-12-13 11:51:41 +01:00
Jacques Lucke
aa63a87d37 BLI: New Edgehash and EdgeSet implementation
The new data structure uses open addressing instead of chaining to resolve collisions in the hash table.

This new structure was never slower than the old implementation in my tests. Code that first inserts all edges and then iterates through all edges (e.g. to remove duplicates) benefits the most, because the `EdgeHashIterator` becomes a simple for loop over a continuous array.

Reviewer: campbellbarton

Differential Revision: D4050
2018-12-13 11:21:31 +01:00
Campbell Barton
cef2a25518 Armature Edit Mode: improve box/lasso select
Mostly rewrite logic which now matches (de)select picking,
share between both operators.

- Support all selection operations (eSelectOp), fixes T59255.

- Add function that selects using 'BONESEL_*' flags & eSelectOp.
  This avoids lasso & box select having to handle selection flushing.

- Fix strange behavior with lasso where selecting a bone in a chain
  would only select the tip (from 2.7x).
2018-12-13 21:11:21 +11:00
Campbell Barton
e79d7747d2 Cleanup: use doxy grouping for view3d select
Easier to navigate, avoid mixing up functionality across the file.
2018-12-13 13:04:25 +11:00
Campbell Barton
7d4d9e9dbd Cleanup: style 2018-12-13 12:30:38 +11:00
Campbell Barton
3b95b521fc Cleanup: replace ifdef w/ stub 2018-12-13 12:21:45 +11:00
Campbell Barton
5d09f5223e Gizmo: multi-object pose-mode gizmo positioning 2018-12-13 11:41:45 +11:00
Campbell Barton
81ea815dcb Gizmo: use general active center calculation
There are some minor differences in center calculation but I don't think
they're important, if so we can update the code.

- Edit-bone uses head (instead of the middle when both are selected).
- Edit-bone flag for restricting components uses the selection instead
  of the active bone.
2018-12-13 10:51:37 +11:00
Campbell Barton
0835c224ba Cleanup: de-duplicate active item center access 2018-12-13 10:41:03 +11:00
Campbell Barton
8c08efd1f7 Fix building w/o bullet 2018-12-13 06:38:55 +11:00
Antonioya
9c5d104224 Fix T59248: Crash in Grease Pencil Edit mode when adding Annotation 2018-12-12 19:48:24 +01:00
Bastien Montagne
80ad2f8cf6 Fix (unreported) Broken rigidbody requirements when adding objects to a RB collection.
We have to ensure objects get expected RB data, when they are added to a
RB collection...
2018-12-12 17:21:37 +01:00
Clément Foucault
10eb92035c Fix T59234: Crash when enter in Edit mode
Edit mode triangles does always need to have access to faces for visibility
and select/active flags.
2018-12-12 15:19:21 +01:00
Clément Foucault
cf92795953 Mesh Batch Cache: Fix crash when using edit mode normal display. 2018-12-12 15:19:21 +01:00
Sergey Sharybin
b60aedc14c Fix T58450: Skin modifier not working if applied after subsurf 2018-12-12 15:07:03 +01:00
Brecht Van Lommel
879e5cde64 Fix transform gizmo showing with active element pivot point and no selection.
It should be possible to use this when the active element is unselected, but
there still needs to be something else selected. Otherwise it is not possible
to deselect all as a way to get the gizmo out of the way.
2018-12-12 15:02:30 +01:00
Campbell Barton
4357fb63db Keymap: event type filter w/ finding keymap items
Now its possibly to ask for only keyboard/mouse/ndof events
when finding key map items.
2018-12-12 21:43:26 +11:00
Bastien Montagne
adaadb2fa0 Fix T59133: Area light size not updating from viewport gizmo.
When we are directly affecting DNA, we need to handle update ourself...
2018-12-12 10:44:39 +01:00
Campbell Barton
e3122d3414 startup: default file selector to a useful path
Was initialized to '/home/', use BKE_appdir_folder_default instead.
2018-12-12 16:51:44 +11:00
Campbell Barton
bbb71ccbde Fix action-zones showing up as shortcuts
Toggle fullscreen area for eg, was showing the action-zone instead of
the key binding.
2018-12-12 15:52:34 +11:00
Campbell Barton
768e69eb37 Keymap: refactor keymap item find logic
Pass a function to filter items to allow lookups to be more selective.
2018-12-12 15:35:47 +11:00
Campbell Barton
4ae68d6825 Fix T59170: Box select ignores modifiers-keys once tool option is set
- Key-map items properties now override tool-options
  so modifier keys can have different behavior to the default action.

- Box & circle select now have `wait_for_input` properties
  instead of detecting this based on selection options being set or not.
  This relied on the key-map setting properties which may need to be
  initialize from the tool settings.
2018-12-12 14:26:43 +11:00
Campbell Barton
49490e5cfb Merge branch 'master' into blender2.8 2018-12-12 13:02:09 +11:00
Campbell Barton
e757c4a3be Cleanup: use colon separator after parameter
Helps separate variable names from descriptive text.
Was already used in some parts of the code,
double space and dashes were used elsewhere.
2018-12-12 12:50:58 +11:00
Campbell Barton
16fc62e15f Docs: correct doxy comments 2018-12-12 12:18:52 +11:00
Campbell Barton
b87b6e8e28 Fix T59211: Edit-mesh display crashes
Caused by ae1f563899
2018-12-12 11:16:56 +11:00
Dalai Felinto
6871402614 Fix Cycles baking active/cage
Basically what we address here is to make sure the active object and the cage
are not interferring with the baking result (e.g., when baking Combined).

To do so, we take advantage of the fact that we create our own depsgraph
for baking. So now we can change the cowed objects, instead of the
original ones.

Note: There is still a way to get a crash. If you try to bake from
selected to active when is_cage, but with no cage object, we get an
assert:

```
BLI_assert failed: //source/blender/blenkernel/intern/DerivedMesh.c
mesh_calc_modifiers(), at
(((Mesh *)ob->data)->id.tag & LIB_TAG_COPIED_ON_WRITE_EVAL_RESULT) == 0
```

We can bypass this by passing ob_low instead of ob_low_eval to
bake_mesh_new_from_object on object_bake_api.c:847 . But then the edge
split modifier change will take no effect.
2018-12-11 21:57:16 -02:00
Campbell Barton
174acd9ca3 Fix T59210: Measure tool crash w/o overlays/gizmos 2018-12-12 10:44:04 +11:00
Campbell Barton
ff108aac63 Fix rulers being removed on click 2018-12-12 10:04:24 +11:00
Ray Molenkamp
d1237d24ca Merge remote-tracking branch 'origin/master' into blender2.8 2018-12-11 15:14:00 -07:00
Ray Molenkamp
ba8d6ca3dd dependencies windows: Replace pthreads-win32 2.9.1 with pthreads4w 3.0.0
maintenance seems to have stopped for pthreads-win32
2018-12-11 15:12:56 -07:00
Clément Foucault
5049322e62 GPUState: Change isolated glLineWidth usage to GPU_line_width 2018-12-11 23:05:36 +01:00
Clément Foucault
b7933cc601 GPUTexture: Add debug print for cubemap textures 2018-12-11 22:30:41 +01:00
Clément Foucault
70d38a996e GPUTexture: Fix memory statistics not working for Multisamples textures
and also output the vram footprint of the texture at the creation.

Also output the full texture memory usage if alloc fails.
2018-12-11 22:10:16 +01:00
Clément Foucault
c541f3abef DRW: Fix redundant texture creation 2018-12-11 21:25:17 +01:00
Clément Foucault
bf2e0c7598 GPUState: Remove glLineWidth warnings about size 0x0 2018-12-11 21:15:50 +01:00
Clément Foucault
0ba02c6e9e GPUTexture: Add debug output to check what texture was created 2018-12-11 21:15:50 +01:00
Harley Acheson
73b19bfb27 UI: fix enum icon buttons haveing different size.
The alignment makes it so the button edges overlap, now one pixel is removed
to account for this.

Differential Revision: https://developer.blender.org/D4063
2018-12-11 20:46:39 +01:00
Mal Duffin
4bf2530952 FFmpeg: enable multi-threaded encoding of multiple frames, for a ~20% speedup.
This enables ffmpeg to encode each frame in its own thread. However in most
cases Blender does not pass frames to ffmpeg fast enough to actually use the
more than two threads. In some tests the speed was measured to be about 20%.
If other parts of the video sequencer get optimized, this should improve.

Differential Revision: https://developer.blender.org/D4031
2018-12-11 20:44:10 +01:00
Alexander Gavrilov
48a3f97b23 RNA: provide access to bone parent transform math from Python.
Applying the effect of bone parent is much more complicated than
simple matrix multiplication because of the various flags like
Inherit Scale. Thus it is reasonable to provide access to this
math from Python for complicated rest pose related manipulations.

The simple case of this is handled by Object.convert_space, so
the new method is only needed for complex tasks.

Differential Revision: https://developer.blender.org/D4053
2018-12-11 20:40:51 +03:00
Clément Foucault
4de5478409 Edit Mesh: Make edit cage stick to the mesh when possible
and correctly offset it when it's not possible, otherwise we get zfighting.
2018-12-11 18:21:12 +01:00
Clément Foucault
1b8e1bb635 DRW: Add polygon offset mode. 2018-12-11 18:18:36 +01:00
Clément Foucault
2a6bc4a82c Fix T58266 : Bottom half of meshes are transparent with eevee render 2018-12-11 16:21:17 +01:00
Sergey Sharybin
4d115f2159 Merge branch 'master' into blender2.8 2018-12-11 15:56:04 +01:00
Sergey Sharybin
66d8bfb85c Update code to be compatible with OIIO 2.0
There are some changes in API of OpenImageIO, but those are quite
simple to keep working with older and newer library versions.

Reviewers: brecht

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D4064
2018-12-11 15:50:02 +01:00
Philipp Oeser
54e1d38157 Fix T59001: UV Editor - Crash when hiding all UVs while 3D view is open
and sync selection enabled

Reviewers: brecht

Maniphest Tasks: T59001

Differential Revision: https://developer.blender.org/D4066
2018-12-11 15:39:43 +01:00
Philipp Oeser
eb83efb6d1 Implement BMesh.from_object
Fixes T59069

Reviewers: sergey, brecht

Maniphest Tasks: T59069

Differential Revision: https://developer.blender.org/D4065
2018-12-11 15:20:48 +01:00
Sergey Sharybin
d415b5c7b8 Fix crash in do-versions after recent changes
No one can simply go into a datablock before it was linked.
2018-12-11 12:44:29 +01:00