Commit Graph

2426 Commits

Author SHA1 Message Date
84ad9b102e Workbench: Add cubic filtering for smoke simulation
The option is per domain and only affects the solid / xray / wireframe view.

Eevee is not yet supported.
2018-11-07 13:25:28 +01:00
b23c68a937 Workbench: Improve volume render by removing noise using temporal AA 2018-11-07 00:19:14 +01:00
8af53dbeab Workbench: Fix volumetric blending leading to corrupted render results
Use simpler premultiplied blending.
2018-11-07 00:19:14 +01:00
4c8d88b485 Workbench: Fix non transparent background in viewport render 2018-11-07 00:19:14 +01:00
fac2cfdfa7 Eevee: Improve Hashed Alpha transparency by reducing noise size
This only affect renders and static viewport accumulation.
It reduces helps reduce noise when lots of half transparent surfaces
overlaps.
2018-11-07 00:19:14 +01:00
8a204ccdb4 Eevee: Support monochromatic Transparent BSDF correctly
This fits Cycles better even if it is only for grey scale values. This only
work if the blend mode is Alpha Blend or Alpha Hashed.
2018-11-07 00:19:14 +01:00
2a0a7cd73d Eevee: Fix missing UBO bound if using a muted Shader to RGB node with SSS
This is a nasty bug. Because the node does not get properlly tagged as SSS
(sss_id is 0) but is still evaluated (so tagging the GPUMaterial as having
SSS). The sssProfile UBO is still declared and we need to bind something
to it.
2018-11-06 12:05:21 +01:00
b4dfe00fd6 Wireframe: Extend Xray slider range
This makes it possible to bypass the depth dithering effect at the cost
of less accurate depth perception.
2018-11-05 16:31:12 +01:00
2ae88c4d78 UI: Make the grid alpha themable
Now that the 3d grid is infinite, antialiased, not occluded, and overlaid
on top of rendered view, being able to decrease its opacity to reduce
visual strain is a must.
2018-11-05 16:31:12 +01:00
205d1876ff DRW: Fix crash with deferred compilation 2018-11-05 16:31:12 +01:00
050e91340d Edit Mesh: Fix wire opacity when not rotating the view in Xray mode 2018-11-05 16:31:11 +01:00
25a9816c30 Cleanup: use bool 2018-11-05 13:22:49 +11:00
5195f03ca1 Cleanup: style, use ARRAY_SET_ITEMS macro 2018-11-05 07:12:53 +11:00
665efe401a Fix T57611: Crash on entering Grease Pencil Sculpt Mode
The problem was when some layers was locked in multiedit. The cache size was not checked and gets an segment fault.
2018-11-04 19:37:03 +01:00
5cfcee8c39 GP: Reorganize Canvas Grid
Now the grid is always controlled by the topbar selector and not in the canvas panel. To have two places to define orientation was confuse.

The orientation by default (no lock) is always to view plane.
2018-11-04 13:00:37 +01:00
bc870f17a7 Cleanup: style, shadow warning 2018-11-04 10:10:00 +11:00
c2a12eedd1 GP: Use stroke and fill switches while drawing 2018-11-03 10:01:28 +01:00
628908a710 GP: New main switches to hide stroke and fill material
New parameters to switch visibility of stroke and fill
2018-11-03 08:51:36 +01:00
74737091c0 GP: Fix problem when alpha is too low
There are still some color when the alpha is set to 0
2018-11-02 19:28:36 +01:00
d3ade45774 Armature: Fix stick bones not scaling with pixel size 2018-11-02 16:27:34 +01:00
46d88c5850 Edit Mesh Mode: Improve edge drawing
Make edge decoration a bit thinner and try to reduce missing edge segment
due to triangle barycentrics.

This invert the "edge fix" strip offset direction, meanning there is now
the possibility that these triangles poke through nearby geometry depending
on the viewport near/far clips distances.
2018-11-02 15:45:13 +01:00
819e6745b0 DRW: Use GPU module wrapper for line width 2018-11-02 15:45:13 +01:00
fecb09ceff Eevee: Fix crash during Light cache baking
This was caused by some threading conflict.
2018-11-01 21:23:12 +01:00
b2a6e149a6 Eevee: Opti: Irradiance: Remove sqrt and max on backface test
Did not have any impact in my tests and it saves some instructions.
2018-11-01 21:23:12 +01:00
bb3219d2b1 Eevee: Fix pingpong buffer not using 32bit float buffer when rendering 2018-10-31 22:35:42 +01:00
35b888fbda Eevee: Fix compilation issue cause by cleanup 2018-10-31 21:14:32 +01:00
97a1561283 Eevee: Cleanup: Remove TODOs about MSM
Soft shadows are supported in another manner, Multiple Shadow Maps are not
needed anymore.
2018-10-31 19:44:01 +01:00
cde64619ca Eevee: Implement Overscan option
This option make the internal render size larger than the output size in
order to minimize screenspace effects disapearing at the render edges.

The overscan size added around the render is the maximum dimension
multiplied by the overscan percentage.
2018-10-31 18:32:54 +01:00
a3802f66e2 Image Empties: More visibility settings
Support for showing images in background/foreground and only in perspective/orthographic view.

Internally the depth of the image is modified in the fragment shader by setting `gl_FragDepth` explicitly.

The UI still needs some work to improve usability, see D3863 for details.
Currently there is one duplicated function, not sure how to best deduplicate it yet. (`is_image_empty_visible`)

Reviewer: fclem, brecht, campbellbarton

Differential Revision: https://developer.blender.org/D3863
2018-10-31 13:42:33 +01:00
117bc96ce8 Eevee: Fix dot corruption on intel HD5xx/6xx series
It is caused by some sync issue apparently. Adding glFlush in these
two places fixes it.

Caveat: it might have a small perf impact (did not measure it).

The fix is limited to the affected driver/operating systems.
2018-10-31 12:32:18 +01:00
a248c2001a GPU: Add glFlush and glFinish wrapper 2018-10-31 12:32:18 +01:00
1fb9fcb333 Cleanup: indentation 2018-10-31 14:43:25 +11:00
4e23c69bfa Workbench: Attenuate dithering effect when using viewport render
Quick hack to get rid of most of the noise when doing a viewport render in
xray or wireframe mode.
2018-10-31 00:46:08 +01:00
603774c1eb Fix T56865: Selection of bones not working properly if the option In Front (old X-ray) is enabled
Differential Revision: https://developer.blender.org/D3828
2018-10-30 15:31:32 -03:00
bf5ba49698 Partial fix to T56865: X-ray modes does not work for the weight paint overlay.
Part of the D3828 review.
2018-10-30 15:20:47 -03:00
ffcf193653 UI: Make Wireframe size respect DPI settings 2018-10-30 19:07:49 +01:00
6f311ef57e GP: New Fade no active layer overlay option
This option allows to fade all layers except active one. This can help in very crowded scenes with a lot of layers, to verify you are working in the right one.
2018-10-30 17:54:01 +01:00
87f4c83018 Object Mode: Grid: Allow more subdivision in orthographic views
2.7x was displaying 2 additional subdivision for theses views. Bumping to 3
just to say we improved it!
Hypothetically it can be increased as much as we want but float precision
can quickly become an issue.
2018-10-30 16:44:23 +01:00
26223f8d9a Object Mode: Grid: Reduce line thickness a tiny bit and apply UI scaling 2018-10-30 16:44:23 +01:00
d69fe6325d Eevee: Fix clearcoat materials not recieving AO 2018-10-29 22:40:42 +01:00
8ee575867a Eevee: Fix Sun soft shadows not starting at first sample 2018-10-29 16:26:52 +01:00
26ed545276 Cleanup: style 2018-10-29 10:24:42 +11:00
49f6c3556c DRW: Cleanup: Redundant check 2018-10-28 21:48:22 +01:00
b8331b79e6 Eevee: Implement jittered soft shadowmap
This new option is located in the shadows options in the render settings.
This approach is simple and just randomize the shadow map position (not
the lamp itself) and just let the temporal supersampling do the average of
all the shadowing. The downside is that is needs quite a large number of
samples to give smooth results and individual sample position can remain
visible.

Enabling this option will make the viewport refresh all shadow maps every
redraw so it has a serious performance impact.

This approach is not physicaly based at all and will not match cycles.

----

The sampling for point lamps (spheres) is not
2018-10-28 21:48:22 +01:00
61e4e3178d Eevee: Fix contact shadow creating to overshadowing
This was because the shadow rays could be generated below the geometric
normal.
2018-10-28 21:48:22 +01:00
Dalai Felinto
a2dc4d2532 Fix T57368: Multi-Object-Mode: Edit Lattice draws only active
As it turned out the issue wasn't that we were drawing only the active,
but that the "object mode" lattice drawing was drawing on top of the
drawing for all the edit mode lattice objects.

We are doing the same original behaviour for curves and even meshes. To be
investigated if it is ok for those other cases.
2018-10-26 13:11:07 -03:00
70d73ff500 Eevee: SSS: Fix issue with mac and stencil buffer blitting
Adding a workaround in this case: we blit the depth buffer instead of the
stencil buffer and use the copy as the texture. This is slower but at
least it should work.
2018-10-26 10:54:21 +02:00
a321f68f64 Workbench: Fix shadows on macOS 2018-10-26 10:54:21 +02:00
4c2561a877 GP: Include option to render layers by view layer
This allows to make composition getting each grease pencil layer in a different render output.
2018-10-25 16:50:42 +02:00
69dd58f210 Fix mapped mesh display skipping generated faces 2018-10-24 13:12:18 +11:00