diff options
| author | Rémi Verschelde <remi@verschelde.fr> | 2021-02-04 17:19:35 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-02-04 17:19:35 +0100 |
| commit | 2ba66c1457850fa0eb6e1c8d144e311d2b59619a (patch) | |
| tree | 56948448bed54f75ef4bee8e7a50faea464a68c8 /servers/rendering/renderer_rd/effects_rd.h | |
| parent | a405a249a60fc6b88b0c2880d85dc6dc9c1d3e10 (diff) | |
| parent | f20999f6feba2af6ae7d246c40fcfc5404bdd429 (diff) | |
Merge pull request #45672 from reduz/barrier-optimization
Rewrote how barriers work for faster rendering
Diffstat (limited to 'servers/rendering/renderer_rd/effects_rd.h')
| -rw-r--r-- | servers/rendering/renderer_rd/effects_rd.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/servers/rendering/renderer_rd/effects_rd.h b/servers/rendering/renderer_rd/effects_rd.h index 00309b4d0f..7ae5ea2f37 100644 --- a/servers/rendering/renderer_rd/effects_rd.h +++ b/servers/rendering/renderer_rd/effects_rd.h @@ -599,6 +599,8 @@ class EffectsRD { enum ShadowReduceMode { SHADOW_REDUCE_REDUCE, + SHADOW_REDUCE_REDUCE_SUBGROUPS, + SHADOW_REDUCE_REDUCE_SUBGROUPS_8, SHADOW_REDUCE_FILTER, SHADOW_REDUCE_MAX }; @@ -763,7 +765,7 @@ public: void merge_specular(RID p_dest_framebuffer, RID p_specular, RID p_base, RID p_reflection); void sub_surface_scattering(RID p_diffuse, RID p_diffuse2, RID p_depth, const CameraMatrix &p_camera, const Size2i &p_screen_size, float p_scale, float p_depth_scale, RS::SubSurfaceScatteringQuality p_quality); - void resolve_gi(RID p_source_depth, RID p_source_normal_roughness, RID p_source_giprobe, RID p_dest_depth, RID p_dest_normal_roughness, RID p_dest_giprobe, Vector2i p_screen_size, int p_samples); + void resolve_gi(RID p_source_depth, RID p_source_normal_roughness, RID p_source_giprobe, RID p_dest_depth, RID p_dest_normal_roughness, RID p_dest_giprobe, Vector2i p_screen_size, int p_samples, uint32_t p_barrier = RD::BARRIER_MASK_ALL); void reduce_shadow(RID p_source_shadow, RID p_dest_shadow, const Size2i &p_source_size, const Rect2i &p_source_rect, int p_shrink_limit, RenderingDevice::ComputeListID compute_list); void filter_shadow(RID p_shadow, RID p_backing_shadow, const Size2i &p_source_size, const Rect2i &p_source_rect, RS::EnvVolumetricFogShadowFilter p_filter, RenderingDevice::ComputeListID compute_list, bool p_vertical = true, bool p_horizontal = true); |