http://www.miikahweb.com/feed.php MiikaHweb - Blender Tmp-eevee-shadowmap-refactor Branch http://www.miikahweb.com/ MiikaHweb - Blender Tmp-eevee-shadowmap-refactor Branch fi Thu, 26 Nov 20 18:12:56 +0000 MiikaHweb RSS contact at miikahweb.com <![CDATA[[0edd48c]: Eevee: Remove ESM and VSM code]]> http://www.miikahweb.com/en/blender/git-logs/commit/0edd48c9043f4f79775b25f7ba93fddd89d75fc9 0edd48c
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
Eevee: Remove ESM and VSM code

----------------------------------------
17 Paths Changed]]>
Mon, 02 Sep 2019 14:41:06 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/0edd48c9043f4f79775b25f7ba93fddd89d75fc9Clément Foucault
<![CDATA[[278d174]: Eevee: Shadows: Make shadowmap follow light orientation]]> http://www.miikahweb.com/en/blender/git-logs/commit/278d174e358d9028c27a2b0e6030aa8db59ea6c8 278d174
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
Eevee: Shadows: Make shadowmap follow light orientation

This is in preparation of an optimization

----------------------------------------
5 Paths Changed]]>
Mon, 02 Sep 2019 14:41:06 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/278d174e358d9028c27a2b0e6030aa8db59ea6c8Clément Foucault
<![CDATA[[312dbf8]: EEVEE: Fix sunlight when sun angle is 180 degrees]]> http://www.miikahweb.com/en/blender/git-logs/commit/312dbf8af1e78bcb369ead76930c66ec6ff631bf 312dbf8
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
EEVEE: Fix sunlight when sun angle is 180 degrees

----------------------------------------
1 Path Changed]]>
Mon, 02 Sep 2019 14:41:07 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/312dbf8af1e78bcb369ead76930c66ec6ff631bfClément Foucault
<![CDATA[[31e21d3]: Eevee: Light: Refactor shadow tagging to allow dupli shadow...]]> http://www.miikahweb.com/en/blender/git-logs/commit/31e21d38e3f2527fd13ac9e8a6adbf91f1879bc3 31e21d3
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
Eevee: Light: Refactor shadow tagging to allow dupli shadow casters

Dupli objects can now cast shadows.

This also replace the custom lightbits by BLI_bitmap.

----------------------------------------
3 Paths Changed]]>
Mon, 02 Sep 2019 14:41:07 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/31e21d38e3f2527fd13ac9e8a6adbf91f1879bc3Clément Foucault
<![CDATA[[3e10785]: Cleanup: EEVEE: Split eevee_lights.c into smaller files]]> http://www.miikahweb.com/en/blender/git-logs/commit/3e10785c604e091d08b243f107267d30ce096a10 3e10785
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
Cleanup: EEVEE: Split eevee_lights.c into smaller files

Also have some const correctness fix and some header cleanup.

----------------------------------------
12 Paths Changed]]>
Mon, 02 Sep 2019 14:41:07 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/3e10785c604e091d08b243f107267d30ce096a10Clément Foucault
<![CDATA[[4dd3a97]: UI: Make cascaded shadowmap panel on top of contact shadow]]> http://www.miikahweb.com/en/blender/git-logs/commit/4dd3a9790fceefeb91b66be32c6ccfa6092a0b12 4dd3a97
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
UI: Make cascaded shadowmap panel on top of contact shadow

This make more sense as cascade parameters are more important.

----------------------------------------
1 Path Changed]]>
Mon, 02 Sep 2019 14:41:07 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/4dd3a9790fceefeb91b66be32c6ccfa6092a0b12Clément Foucault
<![CDATA[[4df7662]: DRW: Add shadow bias state]]> http://www.miikahweb.com/en/blender/git-logs/commit/4df76629a5daccbfd5f42197b99124b8e1678f7e 4df7662
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
DRW: Add shadow bias state

This state add shadowmap bias to avoid most of self shadowing.

----------------------------------------
2 Paths Changed]]>
Mon, 02 Sep 2019 14:41:06 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/4df76629a5daccbfd5f42197b99124b8e1678f7eClément Foucault
<![CDATA[[4ec63b5]: Eevee: Shadow: Speedup: Use only 2 sample for cascaded shadowmap...]]> http://www.miikahweb.com/en/blender/git-logs/commit/4ec63b5421a4eae041c3c215697263868555b1ab 4ec63b5
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
Eevee: Shadow: Speedup: Use only 2 sample for cascaded shadowmap

----------------------------------------
1 Path Changed]]>
Mon, 02 Sep 2019 14:41:06 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/4ec63b5421a4eae041c3c215697263868555b1abClément Foucault
<![CDATA[[585eaa5]: Eevee: Shadows: Improve contact shadows]]> http://www.miikahweb.com/en/blender/git-logs/commit/585eaa5b0a5165d2fba7aed56a05b2b72450873c 585eaa5
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
Eevee: Shadows: Improve contact shadows

Contact shadows now follow the shadowmap direction. This means it matches
the shadowmap blur that is proportional to the light radius.

Moreover this adds a more efficient bias for most contact shadows.

----------------------------------------
6 Paths Changed]]>
Mon, 02 Sep 2019 14:41:06 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/585eaa5b0a5165d2fba7aed56a05b2b72450873cClément Foucault
<![CDATA[[6adaa42]: EEVEE: Fix spotlight shadow optimization]]> http://www.miikahweb.com/en/blender/git-logs/commit/6adaa4202a4510d9c9b5985201f1d0ece2b7de25 6adaa42
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
EEVEE: Fix spotlight shadow optimization

Spot light can be non-uniform and scale in one direction. This fix makes
sure both directions are taken into account before skipping cubemap faces.

----------------------------------------
1 Path Changed]]>
Mon, 02 Sep 2019 14:41:07 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/6adaa4202a4510d9c9b5985201f1d0ece2b7de25Clément Foucault
<![CDATA[[77a0ef9]: GPUFramebuffer: Bump max color attachement to 6]]> http://www.miikahweb.com/en/blender/git-logs/commit/77a0ef91ba976d88a7fe8c5a56a3365301e00f53 77a0ef9
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
GPUFramebuffer: Bump max color attachement to 6

----------------------------------------
1 Path Changed]]>
Mon, 02 Sep 2019 14:30:48 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/77a0ef91ba976d88a7fe8c5a56a3365301e00f53Clément Foucault
<![CDATA[[786b0c6]: Eevee: SSS: Refactor translucency]]> http://www.miikahweb.com/en/blender/git-logs/commit/786b0c641492ddf9369e39e58f73b200d35cd745 786b0c6
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
Eevee: SSS: Refactor translucency

This separate the translucency evaluation to be outside of surface eval.

This as the benefit to reduce code complexity and remove the need for
shadow map (non-test) sampler in the shading pass.

One big change is that bsdf intensity is multiplied and stored with the
albedo color instead of the sss irradiance. This is in order to apply it
to both the translucency and the sss diffusion. This change the look of
mixed SSS shaders which is now closer to cycles.

Performance cost is negligeable.

# Conflicts:
# source/blender/gpu/shaders/gpu_shader_material.glsl

----------------------------------------
10 Paths Changed]]>
Mon, 02 Sep 2019 14:41:02 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/786b0c641492ddf9369e39e58f73b200d35cd745Clément Foucault
<![CDATA[[8457593]: Eevee: Shadows: Add texel border on shadow cube for better...]]> http://www.miikahweb.com/en/blender/git-logs/commit/8457593672665e19a55f9fad3ca8958d4f42bbb8 8457593
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
Eevee: Shadows: Add texel border on shadow cube for better edge filtering

Unfortunately, this seems to be imprecise on lower cube resolution. But
the result is still most of the time more pleasant than no border filtering.

----------------------------------------
2 Paths Changed]]>
Mon, 02 Sep 2019 14:41:06 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/8457593672665e19a55f9fad3ca8958d4f42bbb8Clément Foucault
<![CDATA[[9468425]: Eevee: Shadow: Refactor / Cleanup of shadow update]]> http://www.miikahweb.com/en/blender/git-logs/commit/9468425524d7e885f88d2663a661503e2a2de4c3 9468425
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
Eevee: Shadow: Refactor / Cleanup of shadow update

- Replace EEVEE_lightbits by BLI_bitmap
- Replace EEVEE_BoundSphere by BoundSphere
- Support for dupli light shadows
- Detect unecessary update of soft shadows (i.e: moving the view)
- Remove Object references

----------------------------------------
6 Paths Changed]]>
Mon, 02 Sep 2019 14:41:07 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/9468425524d7e885f88d2663a661503e2a2de4c3Clément Foucault
<![CDATA[[95a3c25]: Eevee: Shadow: Make sun clip distances automatic]]> http://www.miikahweb.com/en/blender/git-logs/commit/95a3c256dcaa298f0c1f81cd1465d453f4e1a055 95a3c25
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
Eevee: Shadow: Make sun clip distances automatic

This simplify sun lights setup and matches more cycles behavior.

----------------------------------------
4 Paths Changed]]>
Mon, 02 Sep 2019 14:41:06 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/95a3c256dcaa298f0c1f81cd1465d453f4e1a055Clément Foucault
<![CDATA[[9ee5e73]: Eevee: SSS: Refactor to use less memory and always use separate...]]> http://www.miikahweb.com/en/blender/git-logs/commit/9ee5e73a3dfe9374b7d0dfd68c4c6d1c650929fd 9ee5e73
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
Eevee: SSS: Refactor to use less memory and always use separate albedo

This refactor reduce the Memory overhead of SSS and enables us to always
use separate albedo. Previously we used 128bits/px for SSS data and
32bits/px for albedo. Now we use 112bits/px for SSS data & separate albedo
altogether.

This refactor is needed for PCF shadow maps.

# Conflicts:
# source/blender/gpu/shaders/gpu_shader_material.glsl

----------------------------------------
14 Paths Changed]]>
Mon, 02 Sep 2019 14:38:14 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/9ee5e73a3dfe9374b7d0dfd68c4c6d1c650929fdClément Foucault
<![CDATA[[a773012]: Eevee: Shadow: Remove receiver plane bias and use hardware...]]> http://www.miikahweb.com/en/blender/git-logs/commit/a77301289ddee926fb34ee03a12dfe6300a5c704 a773012
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
Eevee: Shadow: Remove receiver plane bias and use hardware filtering

In an attempt to simplify the shadowing in eevee, we remove the bias and
filtering option.

Now the shadowmap always get the minimum constant and slope bias and we
only do a bilinear shadow filtering. This means the shadow is as sharper
and exact as the shadow map format allows (bitdepth and size).

Only the lamp size can change the shadow softness.

----------------------------------------
5 Paths Changed]]>
Mon, 02 Sep 2019 14:41:06 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/a77301289ddee926fb34ee03a12dfe6300a5c704Clément Foucault
<![CDATA[[b063115]: EEVEE: Remove softness parameters from RNA & UI]]> http://www.miikahweb.com/en/blender/git-logs/commit/b063115d4e44d8491ef2396d6b24691c3297a42d b063115
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
EEVEE: Remove softness parameters from RNA & UI

Keep it in DNA for backward compatibility

----------------------------------------
3 Paths Changed]]>
Mon, 02 Sep 2019 14:41:07 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/b063115d4e44d8491ef2396d6b24691c3297a42dClément Foucault
<![CDATA[[9e19ec0]: Eevee: Shadows: Add Receiver Plane Depth Bias]]> http://www.miikahweb.com/en/blender/git-logs/commit/9e19ec0d181444793d26b8d5aa65b3fcc0ef3f1d 9e19ec0
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
Eevee: Shadows: Add Receiver Plane Depth Bias

This bias replace the previous bias method. The bias is now scalled to
have the correct depth of the triangle at the sample location. This is done
by computing the actual depth that would be recorded in the shadowmap
at the texels locations, if the triangle was extrapolated.

This leads to less shadow acne and it ensure the bias is always the minimum
amount that ensure correct shadowing.

However this technique is not failure free and if the receiver is nearly
parallel to the light, the bias is nearly infinite and light leaking occurs.

For this reason I decided to cap the bias by the bias parameter to tweak
between shadow acne and light leaking.

----------------------------------------
4 Paths Changed]]>
Mon, 02 Sep 2019 14:41:06 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/9e19ec0d181444793d26b8d5aa65b3fcc0ef3f1dClément Foucault
<![CDATA[[c584116]: EEVEE: Shadow: Add temporal sampling to shadowmaps]]> http://www.miikahweb.com/en/blender/git-logs/commit/c584116e2545453f44be1c9567e188a565639462 c584116
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
EEVEE: Shadow: Add temporal sampling to shadowmaps

If soft shadows is enabled, we randomize the shadowmap sample position
to reduce aliasing artifacts (jagged edge shadows).

----------------------------------------
4 Paths Changed]]>
Mon, 02 Sep 2019 14:41:07 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/c584116e2545453f44be1c9567e188a565639462Clément Foucault
<![CDATA[[d5555e5]: DRW: Add line offset to DRW_STATE_SHADOW_OFFSET]]> http://www.miikahweb.com/en/blender/git-logs/commit/d5555e5d5a20bfa373b6fe5e46da66bb7b09a69c d5555e5
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
DRW: Add line offset to DRW_STATE_SHADOW_OFFSET

This is needed for hairs.

----------------------------------------
1 Path Changed]]>
Mon, 02 Sep 2019 14:41:06 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/d5555e5d5a20bfa373b6fe5e46da66bb7b09a69cClément Foucault
<![CDATA[[e13f5cc]: Eevee: Shadow: Speedup: Only render shadow cube face needed]]> http://www.miikahweb.com/en/blender/git-logs/commit/e13f5cc5aea6ec851ea4ea41a1057853505a6801 e13f5cc
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
Eevee: Shadow: Speedup: Only render shadow cube face needed

This reduce the number of face to render to 5 in the case of area lights
and 5 or 1 for spotlights.

Spotlights that have a spot size less than 90 degrees only need 1 face and
are the fastest.

----------------------------------------
1 Path Changed]]>
Mon, 02 Sep 2019 14:41:06 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/e13f5cc5aea6ec851ea4ea41a1057853505a6801Clément Foucault
<![CDATA[[e951f5f]: Eevee: Replace ESM and VSM by PCF shadow mapping]]> http://www.miikahweb.com/en/blender/git-logs/commit/e951f5f0fe026696e9479a6fe9171c97a3818497 e951f5f
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
Eevee: Replace ESM and VSM by PCF shadow mapping

PCF shadowmaps are less prone to light leaking and are faster to
render.

This remove a substantial part of the shadowing code.

----------------------------------------
11 Paths Changed]]>
Mon, 02 Sep 2019 14:41:06 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/e951f5f0fe026696e9479a6fe9171c97a3818497Clément Foucault
<![CDATA[[eb8093c]: EEVEE: Shadow: Add back shadow bias]]> http://www.miikahweb.com/en/blender/git-logs/commit/eb8093cb143c7fc3a0b59b12d4d397dea8284ab2 eb8093c
Branches : tmp-eevee-shadowmap-refactor
Author : Clément Foucault (fclem)
----------------------------------------
EEVEE: Shadow: Add back shadow bias

This is needed in some corner case (shadow acne due to aliasing and depth
disparity). This is a simple bias added to default bias. It should not be
needed most of the time but we leave it at 1 by default.

----------------------------------------
3 Paths Changed]]>
Mon, 02 Sep 2019 14:41:07 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/eb8093cb143c7fc3a0b59b12d4d397dea8284ab2Clément Foucault