Commit Graph

84473 Commits

Author SHA1 Message Date
dc26c5e1ad Fix T58635: 2.8 - "3D Markers to Mesh" error. 2018-12-03 20:06:50 +01:00
9637a17856 Depsgraph: immediately free object's derived caches in the COW step.
After update of the mesh some of that data is so broken that using
it would crash. To reduce the risk of crashes in case of dependency
cycles, clean it up immediately.
2018-12-03 20:48:47 +03:00
4b8b369218 Fix T58448: Cloth presets fails to load due to missing attribute structural_stiffness.
Presets were not updated when parameter were changed in rBe3d31b8dfbdc.

Note that will also check on generating more resistent py code for that
kind of presets, since that will also affect any custom preset made by
users...
2018-12-03 17:46:39 +01:00
65779b022d Fix T58280: Blender 2.8 hangs when the LookDev mode is enabled
The hang was due to the nodes being "evaluated" for every incomming link.

Solution: only evaluate once per nodetree.

Also merge the tagging of SSS and SSR into one traversal only.
2018-12-03 17:19:11 +01:00
95eca49e54 DRW: Make default debug mode a bit more silent
Use --debug-gpu for debugging non found uniforms
2018-12-03 17:19:11 +01:00
0759480529 Workbench: Encode Roughness and metallic into 8bits
This reduces the bandwidth + vram usage of workbench even further.
2018-12-03 17:19:11 +01:00
223c1a107a Workbench: Make object ID pass optionnal
We separate the background and foreground shading passes to be able to make
the object id pass optionnal if we don't need it.

This saves a bit more memory. Also not clearing all rendertargets saves
some GPU time too.
2018-12-03 17:19:11 +01:00
a022811441 DRW: Make fullscreen quad in the background
This is to be able to only draw the background pixels by using a depth
test EQUAL.
2018-12-03 17:19:11 +01:00
d8d52e273e Workbench: Cleanup: Remove Spherical harmonic evaluation
It is not used anymore
2018-12-03 17:19:11 +01:00
82f01c666f View3D: Grid: Don't make the Zaxis produce any fragment is not needed
This was a bug that was making the grid drawing even more slower than it
is.
2018-12-03 17:19:11 +01:00
24fd03d0c2 Workbench: Reduce VRAM usage depending on mode
We exploit the fact that we are using the metallic workflow for material
and pass the metallic parameter instead of the specular color.

Pack the front facing bit in the color buffer only for matcap display.

Change buffer formats to use less bytes as possible.

Also don't request buffers that we won't use.

Saved 40MB on 2K screen on StudioLight + Shadows + Specular Lighting.

Includes several cleanups.
2018-12-03 17:19:11 +01:00
17a4323ef5 Subdiv: Set edge render flags according to Optimal Display
This is a part of T58609, but work is still needed to properly
support this flag in the draw manager.
2018-12-03 17:05:28 +01:00
bb16167fd8 Depsgraph: completely move customdata_mask to the ID node.
Move all mask-related fields from Object and OperationDepsNode
to Object_Runtime and IDDepsNode. Auto-apply DEG_TAG_GEOMETRY
if the mask changes after DEG rebuild. Update DEG API and all
code that uses it.

This fixes "source mesh data is not ready" errors from Data
Transfer modifier when parameters are changed in the UI after
the recent mesh_get_eval_final fix.

Reviewers: sergey

Differential Revision: https://developer.blender.org/D4025
2018-12-03 18:29:06 +03:00
fadad895b2 T58338 Edit Mode rotation doesn't work if object is far away from world origin
The fix code was done by Brecht Van Lommel, I only tested that the solution works.
2018-12-03 16:26:52 +01:00
3235a3081c Fix T57858: Add validation callback to CustomData layers.
Our mesh validation was only checking cd layout so far, not their actual
data. While this might only be needed for a few types, this is a
required addition for things like imported UVs, else we have no way to
avoid nasty things like NANs & co.

Note that more layer types may need that callback, time will say. For
now added it to some obvious missing cases...
2018-12-03 16:22:27 +01:00
957435785c Cleanup: Use BLI's is_finite_v helpers instead of manualy checking each item. 2018-12-03 16:22:27 +01:00
f880b60353 Depsgraph: Add missing cache file handling in build_id() 2018-12-03 16:05:17 +01:00
5a6f1fa563 Fix T58600: update OSL scripts to work with OSL 1.10.x. 2018-12-03 15:14:21 +01:00
95be6826e3 Data Transfer Modifier: fix mesh_get_eval_final usage.
It can't be used during modifier evaluation, and rna
enum code should access the evaluated objects.
2018-12-03 17:01:02 +03:00
1983a52e04 Depsgraph: assert that mesh_get_eval_final/deform aren't used in eval.
Using those functions during multithreaded evaluation is a sure
way to have a race condition and crash.
2018-12-03 17:01:02 +03:00
764e937d1a Fix T58258: Select Objects in Collection not working
Maniphest Tasks: T58258

Differential Revision: https://developer.blender.org/D4023
2018-12-03 14:19:52 +01:00
40f4343679 3D View: remove non tool-system ruler
There was duplicate code for the ruler being accessed
as a tool and an operator.

Remove the modal operator code in favor of tool access.
2018-12-03 21:21:36 +11:00
394b086b9c Fix T58556: Some remaining 'dupli_types' in pycode after renaming. 2018-12-03 10:39:54 +01:00
1ac7a840f6 Fix T58594: Modal circle select can't select & de-select 2018-12-03 19:32:42 +11:00
d89faac7d2 Merge branch 'master' into blender2.8 2018-12-03 19:31:54 +11:00
63d0ea8ecf Fix T58535 Crash on Load
The particles was not ready when the drawing cache try to use it.
2018-12-03 09:12:29 +01:00
6bb825e083 Fix T54580: Pointer buttons skip undo push 2018-12-03 18:43:33 +11:00
599f6c791a Merge branch 'master' into blender2.8 2018-12-03 18:07:50 +11:00
be2e549111 Use scene active object for sculptmode enter/exit calls
Match logic in previous commit.
2018-12-03 18:00:20 +11:00
f32dfd0819 Fix T56331: Undo crash w/ sculpt on hidden layer 2018-12-03 17:42:26 +11:00
2df86ca967 Fix T56642: 3D view gizmo orientation wont update 2018-12-03 16:52:21 +11:00
ffdc1f8924 Cleanup: warning, style 2018-12-03 16:50:50 +11:00
81c2fd25e5 Fix T58528: Assign material skips non-active 2018-12-03 15:53:31 +11:00
ff3601b9ae Fix/workaround T58368: Crash w/ mapped mesh + autosmooth 2018-12-03 14:58:29 +11:00
085e5765df Cleanup: remove flag from GizmoCommonData
Use struct member instead,
there are already many gizmo flags to keep track of.
2018-12-03 13:01:04 +11:00
4978ef5ed5 Fix T58573: Camera lens gizmo error on click 2018-12-03 12:55:55 +11:00
a205493426 Fix camera lens gizmo sensor comparison 2018-12-03 11:27:22 +11:00
63ac7c799c Fix T58566: Blender 2.7x keymap not correct for select all toggle and spacebar. 2018-12-03 00:40:09 +01:00
cf18eb2de3 Fix T56996: MacOS: Lagging when rotating the view
It happens on multiple configuration so we cannot isolate the fix to only
some config.

Thanks Hugo Lamarche for helping finding the fix.
2018-12-02 22:35:15 +01:00
756df74fca Fix T58101 : Image empties are only rendering their border when using MSAA 2018-12-02 20:11:40 +01:00
c44a203aa7 Texture Paint: fix fast selection update to also work without modifiers.
If there are no (non-deform) modifiers, the evaluated mesh simply
shares arrays with the base COW copy instead of having CD_ORIGINDEX.
2018-12-02 20:05:53 +03:00
4ee29d3fdf GP: Fix line primitive when using to square behaviour
Previously the shift key for line primitives only allowed diagonals.
This change allows the line to constrain to vertical and horizontal lines.

Differential Revision: https://developer.blender.org/D4012
2018-12-02 14:44:50 +00:00
ebfea8c2bb Fix texture previews not updating when parameters are changed.
Maybe there is a more correct way, but this works for now.
2018-12-02 14:57:52 +03:00
71c624dcd8 Partial fix for T58113 bevel harden normals bug.
This fixes the problem where not all faces got hardened properly
when using a hardening mode in the bevel modifier.
2018-12-02 06:29:58 -05:00
925380050d Keymap: fix error in recent enum-menu support 2018-12-02 15:09:15 +11:00
55b31dd98c Merge branch 'master' into blender2.8 2018-12-02 14:37:04 +11:00
335e1b507b Cleanup: BKE b-bone API naming
Use BKE_pchan_bbone prefix.
2018-12-02 14:29:54 +11:00
2e392a0fdc Merge branch 'master' into blender2.8 2018-12-02 14:16:09 +11:00
c00e1f68e9 Cleanup: BKE_effect.h naming 2018-12-02 14:14:51 +11:00
e1b8645c6a Keymap: use strict format for keymap definitions
Ensure we use lists for keymap items and item properties.

This means scripts can access keymap definitions from other layouts,
manipulating them without sometimes encountering a tuple that needs
to be converted into a list.
2018-12-02 14:02:03 +11:00