Commit Graph

2236 Commits

Author SHA1 Message Date
0b5786e96c GP: Fix Blur shift when add more samples
The image was moving in +X and +Y when added samples due round precission.
2018-10-16 10:23:13 +02:00
c1b8ce3170 Fix crash in loose edge check 2018-10-16 15:02:30 +11:00
8a94425e96 Cleanup: redundant check for hidden edge 2018-10-16 09:01:52 +11:00
9ecf68e8ae Eevee: Fix Missing alpha when rendering with DOF
NOTE: There is a float imprecision near the focus plane
due to the current technique used for DOF. This makes the alpha channel
transparent on nearly in focus objects even when they should not.
This artifact should be fixed when the DOF will use scatter as gather for
low brightness areas.

Fix T57042 : Eevee does not render alpha when DOF is turned on
2018-10-15 16:04:50 +02:00
478899dee7 Edit Mesh: Fix missing loop normal display 2018-10-15 16:04:50 +02:00
22814ca555 Fix related to T55961: Glitch in selecting loose edges on some AMD drives. 2018-10-15 09:54:24 -03:00
c2afa3ef46 Edit Mesh: Add comments explaining weirdness in the code. 2018-10-15 09:50:31 -03:00
0c39453071 Cleanup: Edit Mesh shader: Remove unecessary varying 2018-10-15 10:43:49 +02:00
918bb05799 GP: Cleanup style 2018-10-15 08:42:47 +02:00
4479813ae5 GP: Small tweak to improve speed 2018-10-15 08:42:46 +02:00
9a38a91f41 Fix T55961: Anomalous edges cage on some AMD buggy drivers.
Reviwed on irc by @fclem.
2018-10-14 14:07:45 -03:00
ac61eb3900 GP: Fix several issues in blur FX
There were some problems with the z-depth and especially when tries to blur a pixel outside the viewport.
2018-10-14 12:21:44 +02:00
55e3c17ccc Edit Mesh: Optimize the overlay triangle geometry shader
On my test it's 30% faster than before.

Test case : Suzanne, subsurf lvl3, 64K tris, Edge select mode for fair
comparison.

0.95ms before optimization
0.64ms after optimization

Note that this only optimize the "nicest" display of edit mesh overlays,
not the one when rotating the view where half of the border edges are
missing.
2018-10-13 23:55:30 +02:00
de76a809f9 Edit Mesh: Do not use barycentric coord in EDGE_FIX shader and ...
... display vertex even when occluded.

Add back the vertex display because occluded vertex are not visible when
the triangle is almost parallel to the view.

The problem with the barycentric coord is that they are hard to work with
and their derivatives not enough precise to compute the vertex positions.

So we need to pass the vertices scree positions down to the fragment shader.
2018-10-13 23:48:19 +02:00
4e168e0036 Edit Mesh: Fix and increase the depth bias on vertices 2018-10-13 23:48:19 +02:00
b11515332b GP: Improve qualitty in Wave when alpha is extreme 2018-10-13 18:28:33 +02:00
78673e5780 GP: Add more blur samples to some FX 2018-10-13 18:24:57 +02:00
7b9049f278 GP: Improve Blur FX quality in transparency. 2018-10-13 18:21:54 +02:00
77653d97fb Edit Mesh: Fix issue with Edit cage on some buggy drivers 2018-10-12 17:21:04 +02:00
03d0219d7a Edit Mesh: Refactor edit mesh drawing
This decouple the vertex display from the face+edges.

This is to reduce the number of triangles required to fix the edges
artifacts (aliasing) and increase viewport reactivity when not actively
navigating (ie. mouse scroll).

Also it makes all vertices visible (not cut-off) even when navigating.

However it makes the navigation drawing a bit slower because it has to
render twice.

Also add a depth bias to the wires to avoid depth fighting when previewing
final mesh (modifiers applied).
2018-10-12 16:43:40 +02:00
fe4840ed4d Wireframe Overlay: Use Barycentric coord to optimize shader
This also fix a driver bug I was having on Linux + Mesa + AMD Vega.
2018-10-12 16:38:55 +02:00
01745051de DRW: Add DRW_shgroup_create_sub to create children shgroup
This makes is easy to create nested drawcalls that will inherit all the
parents properties. This is usefull if only a few uniforms changes for that
drawcall.
2018-10-12 16:38:55 +02:00
5400d6a8fa DRW: correct loose edge hidden face check 2018-10-12 17:00:10 +11:00
db91414d7b Cleanup: minor mesh allocation changes 2018-10-12 16:47:43 +11:00
eef365a126 Cleanup: use const pointers 2018-10-12 16:42:11 +11:00
33e2cf2aab Cleanup: fill vertex buffer in order 2018-10-12 16:25:16 +11:00
8ef8b64fc6 DRW: edit-mesh cage loose edge/vert support 2018-10-12 16:05:31 +11:00
f4b0684a3f DRW: edit-mesh cage selection support 2018-10-12 13:05:18 +11:00
08ac015360 Cleanup: redundant 'struct' & 'static' vars 2018-10-12 10:12:25 +11:00
75bdfa2d46 Cleanup: style 2018-10-12 10:04:20 +11:00
4add09053c GP: Cleanup duplicate code moving to function 2018-10-11 16:05:08 +02:00
250ba17c83 GP: Cleanup duplicate code 2018-10-11 15:18:26 +02:00
3f0873fa1e Eevee: Fix blank output if scene complexity is high
Encountered on Nvidia + Linux, it seems that doing everything all at once
can make the driver give up the whole command list and return nothing as
the output of the render.
2018-10-11 13:20:00 +02:00
c901ebcd21 DRW: add mapped edit-mode face-dot drawing 2018-10-11 17:23:29 +11:00
5e9afe5018 Missed when bumping flags
Ideally these wouldn't be repeated in multiple places.
2018-10-11 17:02:42 +11:00
641190adff DRW: Initial edit-mode cage support
Modifiers such as sub-surf and mirror now work with show-on-cage.

Selection and loose geometry still needs to be supported.
2018-10-11 16:53:25 +11:00
d74b89aed0 DRW: add ability to skip drawing vertices 2018-10-11 16:43:38 +11:00
bf455c2ca9 DRW: avoid edit-mode layer lookups for freestyle 2018-10-11 15:24:26 +11:00
fb79357b3e Cleanup: assign a var to check an edge is real
Makes code slightly more readable.
2018-10-11 15:15:30 +11:00
92a494ed51 DRW: remove redundant editmode mesh tessellation
Also re-order logic so loop indices are ensured to be valid.
2018-10-11 11:41:24 +11:00
59e4935266 Fix draw manager out of bounds assignment 2018-10-11 09:29:23 +11:00
66738d4aa0 Merge branch 'master' into blender2.8 2018-10-11 09:08:30 +11:00
95f2604ea7 Cleanup: indentation 2018-10-11 08:20:35 +11:00
c2519d8521 GP: New Glow Shader FX (wip)
New shader to simulate a glow of the color.

The glow can be generated by luminance threshold or using a selection color.
2018-10-10 23:00:56 +02:00
Dalai Felinto
1b1702abb0 Fix runtime error: shift of uint
The warning was: runtime error: left shift of 1 by 31 places cannot be
represented in type 'int'

Patch by Clément Foucault.
2018-10-10 13:35:34 -03:00
1fad887d9e Fix T57130: Crash when running 'set active object as camera' on an empty
Reviewed By: brecht

https://developer.blender.org/D3782
2018-10-10 14:30:44 +02:00
84cf670d1d Modifier: Fix cage option for deform modifiers
Show-on-cage and show-in-editmode options now work as it did in 2.7x
(but only for deformation).
2018-10-10 15:53:52 +11:00
944e22115d Eevee: Lights: Bump the minimum area light size
This is to avoid visible artifacts with default lamps intensity.
2018-10-09 19:08:25 +02:00
65fee32324 Eevee: Volume: Fix incorrect Light intensity compared to cycles 2018-10-09 19:08:25 +02:00
c630ce3f6d Fix T57097: Crash when adding a Texture Slot in Texture Paint mode
Was caused by the use of a batch that was using a discarded index buffer.
2018-10-09 17:55:19 +02:00