From 2e0739f9f36b142370aa98d046039c868b134824 Mon Sep 17 00:00:00 2001 From: Nathan Graule Date: Thu, 28 Nov 2024 09:18:26 +0100 Subject: [PATCH 1/2] fix: perform blur after tonemapping --- src/shader.rs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/shader.rs b/src/shader.rs index 4f4edc9..89dd56c 100644 --- a/src/shader.rs +++ b/src/shader.rs @@ -77,9 +77,11 @@ impl Plugin for BlurRegionsShaderPlugin { (prepare_blur_regions_pipelines::.in_set(RenderSet::Prepare),), ) .add_render_graph_node::>>(Core3d, BlurRegionsLabel) - .add_render_graph_edges(Core3d, (Node3d::DepthOfField, BlurRegionsLabel, Node3d::Tonemapping)) + .add_render_graph_edges(Core3d, (Node3d::Tonemapping, BlurRegionsLabel, Node3d::Smaa)) + .add_render_graph_edges(Core3d, (BlurRegionsLabel, Node3d::Fxaa)) .add_render_graph_node::>>(Core2d, BlurRegionsLabel) - .add_render_graph_edges(Core2d, (Node2d::Bloom, BlurRegionsLabel, Node2d::Tonemapping)); + .add_render_graph_edges(Core2d, (Node2d::Tonemapping, BlurRegionsLabel, Node2d::Smaa)) + .add_render_graph_edges(Core2d, (BlurRegionsLabel, Node2d::Fxaa)); } fn finish(&self, app: &mut App) { From 01768264d9d854b6707e66c78a0ca5f27ad479c1 Mon Sep 17 00:00:00 2001 From: Nathan Graule Date: Mon, 2 Dec 2024 09:41:59 +0100 Subject: [PATCH 2/2] fix: change address mode to prevent streaks on the edges --- src/shader.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/shader.rs b/src/shader.rs index 89dd56c..efd5c33 100644 --- a/src/shader.rs +++ b/src/shader.rs @@ -19,7 +19,7 @@ use bevy::render::render_graph::ViewNodeRunner; use bevy::render::render_resource::binding_types::sampler; use bevy::render::render_resource::binding_types::texture_2d; use bevy::render::render_resource::binding_types::uniform_buffer; -use bevy::render::render_resource::BindGroupEntries; +use bevy::render::render_resource::{AddressMode, BindGroupEntries}; use bevy::render::render_resource::BindGroupLayout; use bevy::render::render_resource::BindGroupLayoutEntries; use bevy::render::render_resource::CachedRenderPipelineId; @@ -175,7 +175,11 @@ impl BlurRegionsPipeline { ), ), ); - let sampler = render_device.create_sampler(&SamplerDescriptor::default()); + let sampler = render_device.create_sampler(&SamplerDescriptor { + address_mode_u: AddressMode::MirrorRepeat, + address_mode_v: AddressMode::MirrorRepeat, + ..default() + }); Self { layout, sampler } }