Commit Graph

66878 Commits

Author SHA1 Message Date
ce3d00b9b7 Fix T59404: Mistake in recent EdgeHash refactor broke edge generations in mesh validate code. 2018-12-17 14:28:29 +01:00
60a5559b6c Correct modifier stack validation 2018-12-17 12:44:48 +01:00
a84c823b89 Fix T58652: Crash editing shape keys weirdness with instances
This is a second attempt to get the crash fixed. The original fix
worked, but it was reverted by d3e0d7f082.

Now the logic goes as:

- All pointers which we can not have shared (the ones which are
  owned by the runtime) are cleared.
- The rest of runtime stays untouched.

This seems to be enough to keep particles happy.
2018-12-17 12:33:37 +01:00
dcc11360c6 Remove some files restored in Game Engine
Most likely was caused by bad resolution of recent merge conflict.
2018-12-17 11:53:54 +01:00
7d36a2a775 Fix T59483: Grease Pencil Additive Drawing mode doesn't work with shapes 2018-12-17 11:34:50 +01:00
b253fe4d1b Eevee: Change Bent normal calculation
This changes the bent normal effect to be a bit more subtle.
I also tuned down the bent normal blending factor so mesh faceted look may
appear more in occluded regions. this is to increase the fidelity of the
indirect lighting. This blending might be a parameter in the future.

Based the calculation on "Bent Normals and Cones in Screen-space"
by O. Klehm, T. Ritschel, E. Eisemann, H.-P. Seidel
2018-12-17 09:54:24 +01:00
99457dd981 GPU: Add Intel HD Graphics 530 to the list of buggy intel gpus 2018-12-17 08:56:38 +01:00
30a0f1a2bf Workbench: Use int to fix compilation issues on certain platform 2018-12-17 08:47:37 +01:00
b322ce0847 Context: add objects_in_mode(_unique_data)
Needed for Python to easily support multi-object edit/pose modes.
2018-12-17 17:55:18 +11:00
7fac1bfc20 Context: remove active_gpencil_brush
We don't have this for other painting modes,
no need for a special case here.
2018-12-17 17:17:43 +11:00
21c1c3c59c 3D View: empty image option to show front/back
Only back was possible.
2018-12-17 14:49:16 +11:00
365ef09815 Correct error in last commit 2018-12-17 14:46:18 +11:00
d72d2d4133 DNA: clear / remove deprecated flags
- Clear deprecated flags for ID's:
  Scene, Sequence, World, Object & Mesh.
- Clear deprecated flags for Spaces: outliner, 3D view & image.
- Remove unused `Mesh.drawflag`
- Remove unused `USER_ALLWINCODECS`, `USER_MMB_PASTE`.
- Remove `V3D_SOLID_TEX` & `V3D_ZBUF_SELECT` - used in a few areas.
- Flip `Object.empty_image_visibility_flag`
  (avoids do-version on each new flag)
- Rename 'Backside' -> 'Back' in context of drawing - showing 'Back'
  makes sense.
2018-12-17 13:55:06 +11:00
9149e89421 Merge branch 'master' into blende2.8 2018-12-17 10:25:40 +11:00
98f43ba3e4 Cleanup: use bit-shifted flag definitions in DNA 2018-12-17 09:55:47 +11:00
ea33b90a1b Fix T59446: Grease pencil mirror modifier wrong
The mirror was working different to mesh mirror and the result was not the expected.
2018-12-16 19:53:40 +01:00
fbed69866e GP: Add option to occlude eraser
This adds the functionality requested in T59417 adding a new button near of pressure button of the brush to enable/disable occlude effect for eraser.
2018-12-16 18:25:55 +01:00
c733062d27 GP: Primitive: Add curve tool icon
Thanks @billrey
2018-12-16 14:20:05 +00:00
1578ce46c5 GP: Fix Onion Skin slow performance
The number of vertex for VBO was not calculated for onion skin and made the realloc of memory very slow.
2018-12-16 12:19:20 +01:00
4b545d1bbf Fix T58975: "@=" operator silently fails
D4083 by @artfunkel
2018-12-16 09:49:00 +11:00
3e311fdcd1 Cleanup: style 2018-12-16 09:30:05 +11:00
73dd9c4d34 Fix string formatting, fall through attr 2018-12-16 09:23:07 +11:00
351f537fa8 GP: New Curve primitive and other primitive improvements
This commit adds support for new curve tool and adds more functionalities to the existing primitives, including new handles, editing, stroke thickness curve, noise, preview of the real stroke, etc.

Thanks to @charlie for his great contribution to this improvement.
2018-12-15 17:21:47 +01:00
f9917a8d43 Fix T59396 Grease pencil brush crash
The problem was the brush was not initializated because some code was missing (marked as ToDo)
2018-12-15 09:54:31 +01:00
b73529fafd GP: Add NULL checking for object 2018-12-15 09:36:08 +01:00
ba1f178c1c Fix T56185, T59351: bypass GL_PROXY_TEXTURE.. test on AMD GPU + windows
This replaces the test of consistency and capacity made with `GL_PROXY_TEXTURE_..` on AMD GPUs with one that checks only if the texture fits the limits of size and layer.

Differential Revision: https://developer.blender.org/D4081
2018-12-14 21:33:31 -02:00
Dalai Felinto
9fbada4a3b Fix T59388: Blender crash upon F3 command search in VSE
We may not have an active object depending on where the operator is called from
or well if we simply don't have an active object :)
2018-12-14 20:35:57 -02:00
Dalai Felinto
fa41350c72 UV pin: Use ID_RECALC_COPY_ON_WRITE instead of the almighty 0
I suppose the cow tag is more correct for those generic/non-specific
tags. Thank you Sergey.
2018-12-14 20:33:31 -02:00
Dalai Felinto
a63209e175 Fix T59381: UV editor - Pinned vertex missing update
Pinning doesn't really change the geometry, so we don't really have a
tag for this. Using '0' for now (same we use for Mark Seam).

I will check with Sergey Sharybin which flag to use instead.
We could use ID_RECALC_GEOMETRY to match the notifier, but even the
simpler ID_RECALC_SELECT would do it.
2018-12-14 19:53:07 -02:00
de662e7cd3 NLA: insert keyframes correctly for strips with non-Replace mode.
NLA strips support using the keyframe values in a variety of ways:
adding, subtracting, multiplying, linearly mixing with the result
of strips located below in the stack. This is intended for layering
tweaks on top of a base animation.

However, when inserting keyframes into such strips, it simply inserts
the final value of the property, irrespective of these settings. This
in fact makes the feature nearly useless.

To fix this it is necessary to evaluate the NLA stack below the
edited strip and correctly compute the raw key that would produce
the intended final value, according to the mode and influence.

Differential Revision: https://developer.blender.org/D3927
2018-12-14 22:19:18 +03:00
Dalai Felinto
fc74903f27 Fix T59322: View Layer - Search not working
Basically uiRNACollectionSearch->but_changed was always NULL for the
search templates. So skip_filter would always be true, and we would
never filter.

An alternative fix would be to add the following to the begin of
`template_search_add_button_searchmenu`:
```
static bool always_true = true;
template_search->search_data.but_changed = &always_true;
```
2018-12-14 17:09:29 -02:00
d3e0d7f082 Fix broken particle distribution after recent fix 2018-12-14 17:33:54 +01:00
c7cc97c7b9 Fix wrong color in center of HSV circle picker, after recent changes. 2018-12-14 17:29:41 +01:00
Sebastian Parborg
17905e89a7 Fix T59358: Wrong status bar keymap for release confirms and right click select.
Differential Revision: https://developer.blender.org/D4077
2018-12-14 16:59:49 +01:00
98f6f7bc78 Fix T59182: Blender 2.8 win64 crashes on start 2018-12-14 16:53:45 +01:00
780f0f646d GP: Rename CTX and OB modes
Part of T59335.
2018-12-14 16:52:12 +01:00
a1c8595b09 Edit Curve: Add Normal size in overlay popover and change default range
Change default range to 0..2 to improve the slider behavior.
2018-12-14 16:35:51 +01:00
f371e633f9 Curve Batch Cache: Add support for loose edges and curve/surf modifier
Fixes T58298 Nurbs circle and curve dont draw in objectmode
Fixes T58107 Modified curves/surfaces/fonts do not show their eval mesh
2018-12-14 16:17:29 +01:00
e4b3fe4b69 Wireframe: Fix wireframe color in edit mode for surfaces 2018-12-14 16:17:29 +01:00
f37e45c26b DRW Batch Cache: Fix hack being a bit too much hacky 2018-12-14 16:17:29 +01:00
531e5ad49a Displist: Reuse tesselated pos and nor for wireframes
This lower the memory usage and also fix a bug with metaballs normals/tris
winding being reversed.
2018-12-14 16:17:29 +01:00
18d0566013 Curve Batch Cache: Add back support for shaded geometry
This changes a bit the batches data structure. Instead of using one
vbo per material we use one for all material and use index buffers for
selecting the correct triangles.

This is less optimized than before but has potential to become more
optimized by merging the wireframe data vbo into the shading one.

Also the index buffers are not strictly necessary and could be just
ranges inside the buffer. But this needs more adding things inside
GPUIndexBuf.
2018-12-14 16:17:29 +01:00
c09913e9dd GPUBatch: Add GPU_batch_clear to clear batches without freeing 2018-12-14 16:17:29 +01:00
0ee0f0ebf6 Wireframe: Fix Object Viewport display "all edges" options not working 2018-12-14 16:17:29 +01:00
2afed99da3 Curve Batch Cache: Rework Implementation to use new batch request
Shaded triangles are not yet implemented (request from gpumaterials).

This also changes the mechanism to draw curve normals to make it not
dependant on normal size display. This way different viewport can
reuse the same batch.
2018-12-14 16:17:29 +01:00
77164e30c7 DRW: Simplify text edit drawing
This is to simplify the curve batch cache.
2018-12-14 16:17:29 +01:00
49287b34a2 GPUBuffers: Fix uninitialized memory use causing undefined conditional jump 2018-12-14 16:17:29 +01:00
f85b05111f Fix T59334: Crash initializing crazyspace on object with subsurf and displacement 2018-12-14 16:07:59 +01:00
233b780635 UI: show frame rate in movie clip editor
Feature Request from Hjialti.
2018-12-14 15:34:48 +01:00
e67f7e922c Attempt to sanitize node tree deletion
Make it explicit when freeing node tree which is owned by other
ID or when freeing node tree which is outside of a bmain.
2018-12-14 15:29:16 +01:00