Skip to content

Commit 721603d

Browse files
authored
Merge pull request #10714 from Calinou/custom-postprocessing-update-anchors
Update instructions on setting Full Rect anchor in Custom post-processing
1 parent 8015e9f commit 721603d

File tree

2 files changed

+10
-4
lines changed

2 files changed

+10
-4
lines changed

tutorials/shaders/custom_postprocessing.rst

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,13 @@ Post-processing effects are shaders applied to a frame after Godot has rendered
2323
it. To apply a shader to a frame, create a :ref:`CanvasLayer
2424
<class_CanvasLayer>`, and give it a :ref:`ColorRect <class_ColorRect>`. Assign a
2525
new :ref:`ShaderMaterial <class_ShaderMaterial>` to the newly created
26-
``ColorRect``, and set the ``ColorRect``'s layout to "Full Rect".
26+
``ColorRect``, and set the ``ColorRect``'s anchor preset to Full Rect:
27+
28+
.. figure:: img/custom_postprocessing_anchors_preset_full_rect.webp
29+
:align: center
30+
:alt: Setting the anchor preset to Full Rect on the ColorRect node
31+
32+
Setting the anchor preset to Full Rect on the ColorRect node
2733

2834
Your scene tree will look something like this:
2935

@@ -67,8 +73,8 @@ shader by `arlez80 <https://bitbucket.org/arlez80/hex-mosaic/src/master/>`_,
6773
6874
void fragment() {
6975
vec2 norm_size = size * SCREEN_PIXEL_SIZE;
70-
bool half = mod(SCREEN_UV.y / 2.0, norm_size.y) / norm_size.y < 0.5;
71-
vec2 uv = SCREEN_UV + vec2(norm_size.x * 0.5 * float(half), 0.0);
76+
bool less_than_half = mod(SCREEN_UV.y / 2.0, norm_size.y) / norm_size.y < 0.5;
77+
vec2 uv = SCREEN_UV + vec2(norm_size.x * 0.5 * float(less_than_half), 0.0);
7278
vec2 center_uv = floor(uv / norm_size) * norm_size;
7379
vec2 norm_uv = mod(uv, norm_size) / norm_size;
7480
center_uv += mix(vec2(0.0, 0.0),
@@ -78,7 +84,7 @@ shader by `arlez80 <https://bitbucket.org/arlez80/hex-mosaic/src/master/>`_,
7884
mix(vec2(0.0, -norm_size.y),
7985
vec2(-norm_size.x, -norm_size.y),
8086
float(norm_uv.x < 0.5)),
81-
float(half)),
87+
float(less_than_half)),
8288
float(norm_uv.y < 0.3333333) * float(norm_uv.y / 0.3333333 < (abs(norm_uv.x - 0.5) * 2.0)));
8389
8490
COLOR = textureLod(screen_texture, center_uv, 0.0);
Binary file not shown.

0 commit comments

Comments
 (0)