How to draw the shape of an area2d?

Godot Version

Godot 4.4

Question

What I want is to draw the untouched outline of an Area2d,
Here is a sketch of what I am trying to do

I want to make a 2d ripple effect what is responsive to bodies.

Draw a black box over it

Big brain…
But not for this
…are you kidding and making fun of me? LOL

I have been stuck with this for the last 4 days

No I’m not kidding. Why is that not an option?

How do you even know the shape of the body? At least to draw a black box you will need to know how much area was colided.

You know the size and the position of body’s collider. That’s enough to draw a rect that matches it

I wanna make it transparent.and the bodies that are going to collide with it is not simple shaped.
Who knows how to do it

I will just stick with circles expanding.(not responsive to the objects in the water
Just losing the main concept of the game lol

That’s why we have subviewports. Draw a black and white version into a subviewport and use subviewport’s texture as an alpha channel on the effect sprite or texture rect.

1 Like

I will try.
I have tried using a 100 area2d in a circle shape and more.I will try the viewport thing as well

You can do it as a full screen post processing effect, drawing all circles and all boxes into a single subviewport that’s the size of the screen, and then run a shader on a full screen rect that uses this viewport as alpha.

1 Like

Andd if nothing works i will try 3D(by lowering the screen res to 128x128)

Thanks :slight_smile:

The water likely uses similar approach with a viewport.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.