GDevelop-extensions icon indicating copy to clipboard operation
GDevelop-extensions copied to clipboard

Dynamic water

Open github-actions[bot] opened this issue 1 year ago • 1 comments

Description

Easily create a realistic liquid surface simulation.

How to use the extension

FEATURES

   - Fully customizable: by adjusting the liquid properties (tension, damping, spreading), you can simulate different types of 
     liquids such as: water, jelly, lava, etc.
   - Can obtain the height of the surface at any point
   - Allows you to have full control over visual properties such as: color opacity, effects, etc.
   - Can create a force at any point on the surface.
   - Works on all platforms.

Checklist

  • [X] I've followed all of the best practices.
  • [X] I confirm that this extension can be integrated to this GitHub repository, distributed and MIT licensed.
  • [X] I am aware that the extension may be updated by anyone, and do not need my explicit consent to do so.

What tier of review do you aim for your extension?

Community (Unreviewed)

Example file

DynamicWaterExemple.zip

Extension file

DynamicWater.zip

github-actions[bot] avatar Jan 08 '24 23:01 github-actions[bot]

Very cool extension! Thank you for submitting it.

I have some questions and suggestions:

  • Please, don't collapse any event, I lost a lot of time figuring how children were created as the events where collapsed.
  • "Trigger once" usually doesn't work in functions or when used with object conditions. Have you tried the extension with 2 platformer characters?
  • I guess the extension could work without the behavior FloatObject_Platformer.
    • CheckSurfaceCollisions can save the MaxFallingSpeed if the character enter in the water and put the value back when it comes out. Because users may have change the initial value at some point so the extension must not put back the value from the object creation.
  • ColumnCollisions child-objects is never displayed. It seems to be used as an array. Wouldn't it be easier to use an array variable instead ?
  • I don't understand what this event does it loops on the same object it creates:

image

D8H avatar Jan 11 '24 00:01 D8H