Commit Graph

93915 Commits

Author SHA1 Message Date
Sergey Sharybin
4c4d36c25e Subdiv: Correct corner passed to foreach_loop callback
Was affecting quad faces. where 0 was always passed for inner
loops and a wrong one for boundary ones.

In the current code this change shouldn't cause any difference
since the corner index is ignored in the actual callback, but
it is required to have his fixed for an upcoming changes.
2020-02-28 10:12:08 +01:00
Campbell Barton
9cac5fa681 Fix camera border gizmo size 2020-02-28 13:25:37 +11:00
Campbell Barton
e98f94d778 Cleanup: warnings using 'abs' on float values 2020-02-28 12:33:57 +11:00
Campbell Barton
d7d7859128 Cleanup: use fgets for parsing the xdg user dirs
Match bookmark reading behavior.
2020-02-28 11:52:44 +11:00
Campbell Barton
ba546976c3 Fix BLI_str_rstrip skipping the first character 2020-02-28 11:46:52 +11:00
Campbell Barton
28fca2c588 Docs: update the tool key-map docs, reference them from the toolbar 2020-02-28 09:18:07 +11:00
Campbell Barton
dd2cdd436f Fix T72903: Bone envelope & bone size tool functionality swapped 2020-02-28 09:18:07 +11:00
Germano Cavalcante
e339c7798e Cleanup: transform comments 2020-02-27 18:52:06 -03:00
Howard Trickey
30158b6ed0 Fix T74256, crash in bmesh.ops.bevel if segments not set.
Also changed signature of bevel function to take integer
for segments instead of float, which is just wrong.
2020-02-27 16:36:17 -05:00
Germano Cavalcante
91abb70006 Transform: Remove 'mouse_coordinate_override' property
This property depends on the view that can change when redoing.
2020-02-27 16:42:43 -03:00
Sybren A. Stüvel
c20caec7f0 Fix T70381: Motion Paths off by one
The apparent off-by-one error was caused by a few factors:

- The 'blend base' colour was green for the two frames directly
  surrounding the current frame, but black for the current frame itself.
- For the frames before the current one, the 'blend base' was mixed with
  black, making the green stand out clearly, but fading to black again
  for the current frame. This looks like an off-by-one, even though it
  was just bad mixing.
- For the frames after the current one, the 'blend base' was mixed with
  cyan, which already has a strong green component, so mixing it there
  was much less visible, making the entire thing look like an off-by-one
  error where it actually wasn't.

I have simplified the code, so now it only chooses green as the 'blend
base' for the current frame, and simplified the mixing for the current
frame.
2020-02-27 17:44:29 +01:00
Brecht Van Lommel
f48ad37ef0 Fix T74262: Cycles OpenCL error on some devices after recent changes 2020-02-27 17:38:24 +01:00
Jeroen Bakker
33e9e1060f EEVEE: Shadow Render Pass
Revert the change that renders the background black.
2020-02-27 16:56:39 +01:00
Brecht Van Lommel
e88a715364 Cleanup: more refactoring of GPU material attributes and textures
This further separates requested attributes and textures from the actual
node graph, that can be retained after the graph has been compiled and
freed. It makes it easier to add volume grids as a native concept, which
sits somewhere between an attribute and a texture.

It also adds explicit link types for UDIM tile mapping, rather than
relying on fairly hidden logic.
2020-02-27 16:14:21 +01:00
Brecht Van Lommel
1ec11363bd Build: don't include WITH_SYSTEM_GLEW as part of make lite
System GLEW often is not new enough, which gives error on startup. The build
correctness should not be affected by using lite vs. full, so better to leave
this out than save compiling one extra file.
2020-02-27 16:11:07 +01:00
Jeroen Bakker
50f9c08979 Fix T74063: EEVEE Render Passes
Cycles recently fixed this issue, EEVEE needed to be adapted to output
similar results in the light passes.

This patch implements cycles `safe_divide_even_color` function to a GLSL
function that will be used when extracting the light passes.

Reviewed By: fclem

Differential Revision: https://developer.blender.org/D6948
2020-02-27 16:02:20 +01:00
Jeroen Bakker
403bb357ae Fix T74110: EEVEE Shadow Pass
Shadow could penetrate occluded geometry. This patch adds a check to see
if the light is in the right location to light the pixel.

Reviewed By: fclem

Differential Revision: https://developer.blender.org/D6918
2020-02-27 15:57:58 +01:00
Brecht Van Lommel
f2b95b9eae Objects: make evaluated data runtime storage usable for types other than mesh
This is in preparation of new object types. This only changes mesh_eval, we
may do the same for mesh_deform_eval and other areas in the future if there is
a need for it.

Differential Revision: https://developer.blender.org/D6695
2020-02-27 15:25:35 +01:00
Brecht Van Lommel
57b7833d1e Cleanup: split off hair cache function for reusability
For when we support sources of hair other than particle systems.
2020-02-27 15:11:44 +01:00
Brecht Van Lommel
74b0edce74 Cleanup: add missing use_nodes in default materials with nodetrees
This didn't break anything, but could in the future.
2020-02-27 15:02:29 +01:00
Germano Cavalcante
41dbb06b76 Fix T74228, T74246: Strange Characters
The glyph can come from a different cache.
2020-02-27 10:55:07 -03:00
Sybren A. Stüvel
0a3b4d4c64 Fix channel lists ignoring collection visibility
The dope sheet, NLA editor, and other similar animation editors were
ignoring the temporariy visibility flag of collections. As a result, an
editor that's supposed to show animation data of visible objects only was
still showing such data of objects that were hidden by hiding their
collection.

This was observed while fixing T71743.
2020-02-27 14:22:01 +01:00
Jacques Lucke
aa4579c35f File Browser: Recognize .fountain files as text files
D6288 by @tintwotin
2020-02-27 13:07:11 +01:00
Brecht Van Lommel
abc040f26c Build: change libc compatibility code to only be used for new glibc
This way we can still use fast math functions.
2020-02-27 12:52:19 +01:00
Jeroen Bakker
cb2f5d498e Fix T74119: Cycles Viewport Render Tint
Cycles uses the display_space_shader it gets from Blender. When
requested the shader used to be a GPU_SHADER_2D_IMAGE_COLOR, which
set the `color` uniform incorrectly. This resulted in a yellowish tint
when used.

To fix this the `GPU_SHADER_2D_IMAGE` shader will be used.

Reviewed By: brecht, fclem

Maniphest Tasks: T74119

Differential Revision: https://developer.blender.org/D6921
2020-02-27 12:50:08 +01:00
Jeroen Bakker
e21a475fae Fix T74229: EEVEE Bloom + Transparency
Bug was introduced by the render passes. We had to tweak the bloom
shader a bit so we could reuse it. After that tweaking the original
alpha was ignored.

This patch will read and store the correct alpha channel.
2020-02-27 12:47:28 +01:00
Germano Cavalcante
edb5e19442 Transform Snap: Unify SnapObjectData struct
This simplifies the code, and will allow to switch modes.
2020-02-27 08:43:10 -03:00
Brecht Van Lommel
6d705693a3 Fix Linux CentOS buildbot handing on ffmpeg test
Don't use -ffast-math functions for libc compatibility implementation, since
then the function ends up calling itself. This may not be ideal for performance
but should be insignificant in practice.
2020-02-27 12:30:29 +01:00
Jeroen Bakker
2515a125c8 Fix T74254: EEVEE Render Passes Availability
When disabling AO or BLOOM in the render tab, when the pass is shown in
a 3d viewport the pass wasn't reset. This resulted in showing a black
texture and a not filled UI render pass in the shading popover.

This patch will by default reset to the combined pass. It is intended
that the render_pass in the 3d shading struct isn't set to combined as
people could have disabled AO/bloom by mistake and it could reset
viewports that aren't visible.
2020-02-27 12:22:16 +01:00
Jeroen Bakker
f24a4750bd Fix T74254: EEVEE Render Passes Availability
When disabling AO or BLOOM in the render tab, when the pass is shown in
a 3d viewport the pass wasn't reset. This resulted in showing a black
texture and a not filled UI render pass in the shading popover.

This patch will by default reset to the combined pass. It is intended
that the render_pass in the 3d shading struct isn't set to combined as
people could have disabled AO/bloom by mistake and it could reset
viewports that aren't visible.
2020-02-27 12:15:33 +01:00
Jacques Lucke
57bd1a0ae1 Fix T74227: Crash when clicking on viewport shading properties 2020-02-27 12:13:00 +01:00
Sybren A. Stüvel
e420caab19 Fix T71743: NLA editor doesn't update properly when hiding/viewing objects
The NLA area & region listeners were ignoring the notifications that happen
when hiding/showing objects & collections.
2020-02-27 12:08:24 +01:00
Philipp Oeser
d5bcc375ba Fix T69576, T74059: issues with rotation when adding objects
This clarifies logic in ED_object_add_generic_get_opts (see comments in
code).

Also following issues are adressed:
- do not enforce setting the op UI to WORLD when rotation is set (e.g.
on redo). This is not wrong (happens in world space), but is more
confusing than helpful (was added in own rB3b8a14a3c072).
- respect setting the User Preference to WORLD properly (could fail when
set to something else, then back to WORLD)

Maniphest Tasks: T69576

Differential Revision: https://developer.blender.org/D6943
2020-02-27 11:44:21 +01:00
Dalai Felinto
01162f756a Fix unreported crash/assert in Cycles with volume render pass in viewport
Bug introduced on e0085bfd24.
2020-02-27 11:36:49 +01:00
Philipp Oeser
830a45a18a Improve usage of recent golden ratio define
- fix typo
- set back to conjugate value and use as such

Followup to rB95175c3b5e2b.
2020-02-27 10:54:38 +01:00
Sybren A. Stüvel
10162d68e3 Constraints: replace 'Set Inverse' operator with an eval-time update
This fixes {T70269}.

Before this commit there was complicated code to try and compute the
correct parent inverse matrix for the 'Child Of' and 'Object Solver'
constraints outside the constraint evaluation. This was done mostly
correctly, but did have some issues. The Set Inverse operator now defers
this computation to be performed during constraint evaluation by just
setting a flag. If the constraint is disabled, and thus tagging it for
update in the depsgraph is not enough to trigger immediate evaluation,
evaluation is forced by temporarily enabling it.

This fix changes the way how the inverse matrix works when some of the
channels of the constraint are disabled. Before this commit, the channel
flags were used to filter both the parent and the inverse matrix. This
meant that it was impossible to make an inverse matrix that would
actually fully neutralize the effect of the constraint. Now only the
parent matrix is filtered, while inverse is applied fully. As a result,
pressing the 'Set Inverse' matrix produces the same transformation as
disabling the constraint. This is also reflected in the changed values
in the 'Child Of' unit test.

This change is not backward compatible, but it should be OK because the
old way was effectively unusable, so it is unlikely anybody relied on
it.

The change in matrix for the Object Solver constraint is due to a
different method of computing it, which caused a slightly different
floating point error that was slightly bigger than allowed by the test,
so I updated the matrix values there as well.

This patch was original written by @angavrilov and subsequently updated
by me.

Differential Revision: https://developer.blender.org/D6091
2020-02-27 10:37:59 +01:00
Philipp Oeser
4952fb1669 Fix T54323: Improve Paint category names in keymap preferences
While one issue of the report was fixed already (rB27adc4aa3347), still a
couple of clarifications could be made:
- correct/clarify which modes these apply to
- clarify that "Face Mask" is a paint thing

Maniphest Tasks: T54323

Differential Revision: https://developer.blender.org/D6797
2020-02-27 10:11:23 +01:00
Philipp Oeser
f38c54d56e Fix Vertex weight gradient tool show wrong weight/strength values in the
UI

Main issue is that the UI doesn not respect the Unified Weight/Strength
setting (but instead alwasy shows the brushes weight/strength)

Was working before, but somewhat missed in rBfb74dcc5d69d.

See discussion in T74025 on why the Gradient Tool in its current state
is not very user friendly in general, what I think we should do though
is at least have the values in the UI respect Unified Weight / Unified
Strength since this is what the tool will use internally...

ref T74025

Maniphest Tasks: T74025

Differential Revision: https://developer.blender.org/D6900
2020-02-27 09:56:02 +01:00
Campbell Barton
80684ca41c Fix T74248: Crash using a movie clip for the camera background
Missing NULL check in recent half-float support.
2020-02-27 16:08:44 +11:00
Aaron Carlisle
1a1f2912e6 UI: Clarify Laplacian Deform
- Match UI Style
- Clarify that the vertex group is different then other modifiers
2020-02-26 17:33:17 -05:00
Aaron Carlisle
1d302df4f8 UI: Fix Typo in GP Erase RNA 2020-02-26 16:37:44 -05:00
Bastien Montagne
2d423479bd Fix T73371: Crash caused by wrong logic in NULL pointer check. 2020-02-26 19:31:37 +01:00
Brecht Van Lommel
9085b7e847 Fix OpenVDB link error on Windows after recent changes 2020-02-26 19:24:20 +01:00
Brecht Van Lommel
da38cb622e Cleanup: split image sequence detection into own file, and make it reusable 2020-02-26 19:22:42 +01:00
Aaron Carlisle
4c4e798f35 Color Management: Updated False Color Look
Change to false color are based on artist feedback:

  * Even 2.5 EV differences down to -10 EV.
  * Even 2.167 EV differences up to +6.5 EV.
  * Slightly below middle grey biased toward cyan.
  * Slightly above middle grey biased toward yellow.
  * Converts to nonlinear luma for more accuracy.
2020-02-26 12:18:52 -05:00
Aaron Carlisle
9f4b090eec Color Management: Allow looks on any transform
Previously it was not possible to use looks on filmic log.
2020-02-26 12:18:52 -05:00
Brecht Van Lommel
d675cf20a1 Cleanup: add ImageKey to avoid longer argument lists and duplicated code 2020-02-26 18:13:14 +01:00
Brecht Van Lommel
78391def6e Cleanup: deduplicate OpenVDB library definitions/include/libs logic
This will more important when we start using OpenVDB in more modules.
2020-02-26 18:13:14 +01:00
Brecht Van Lommel
22abc7f080 Build: add compatibility between precompiled libraries and new glibc
On Linux, precompiled libraries may be made with a glibc version that is
incompatible with the system libraries that Blender is built on. To solve
this we add a few -ffast-math symbols that can be missing.

Differential Revision: https://developer.blender.org/D6930
2020-02-26 18:13:14 +01:00
Nathan Craddock
30b3bf2b57 Build: ignore system paths when using precompiled libraries on Linux
Based on work by Nathan Craddock, with further changes to apply it to all
precompiled libraries.

Differential Revision: https://developer.blender.org/D6929
2020-02-26 18:12:18 +01:00