diff --git a/tutorials/shaders/custom_postprocessing.rst b/tutorials/shaders/custom_postprocessing.rst index 8fd8a953c9c..2fce2cff470 100644 --- a/tutorials/shaders/custom_postprocessing.rst +++ b/tutorials/shaders/custom_postprocessing.rst @@ -23,7 +23,13 @@ Post-processing effects are shaders applied to a frame after Godot has rendered it. To apply a shader to a frame, create a :ref:`CanvasLayer `, and give it a :ref:`ColorRect `. Assign a new :ref:`ShaderMaterial ` to the newly created -``ColorRect``, and set the ``ColorRect``'s layout to "Full Rect". +``ColorRect``, and set the ``ColorRect``'s anchor preset to Full Rect: + +.. figure:: img/custom_postprocessing_anchors_preset_full_rect.webp + :align: center + :alt: Setting the anchor preset to Full Rect on the ColorRect node + + Setting the anchor preset to Full Rect on the ColorRect node Your scene tree will look something like this: @@ -67,8 +73,8 @@ shader by `arlez80 `_, void fragment() { vec2 norm_size = size * SCREEN_PIXEL_SIZE; - bool half = mod(SCREEN_UV.y / 2.0, norm_size.y) / norm_size.y < 0.5; - vec2 uv = SCREEN_UV + vec2(norm_size.x * 0.5 * float(half), 0.0); + bool less_than_half = mod(SCREEN_UV.y / 2.0, norm_size.y) / norm_size.y < 0.5; + vec2 uv = SCREEN_UV + vec2(norm_size.x * 0.5 * float(less_than_half), 0.0); vec2 center_uv = floor(uv / norm_size) * norm_size; vec2 norm_uv = mod(uv, norm_size) / norm_size; center_uv += mix(vec2(0.0, 0.0), @@ -78,7 +84,7 @@ shader by `arlez80 `_, mix(vec2(0.0, -norm_size.y), vec2(-norm_size.x, -norm_size.y), float(norm_uv.x < 0.5)), - float(half)), + float(less_than_half)), float(norm_uv.y < 0.3333333) * float(norm_uv.y / 0.3333333 < (abs(norm_uv.x - 0.5) * 2.0))); COLOR = textureLod(screen_texture, center_uv, 0.0); diff --git a/tutorials/shaders/img/custom_postprocessing_anchors_preset_full_rect.webp b/tutorials/shaders/img/custom_postprocessing_anchors_preset_full_rect.webp new file mode 100644 index 00000000000..fc4a209fcc8 Binary files /dev/null and b/tutorials/shaders/img/custom_postprocessing_anchors_preset_full_rect.webp differ