Dynamic Water Physics 2 for Unreal Engine Documentation
Docs » WaterCompatibility

Water Compatibility

Version 1.0 of DWP2 only supports multiple water surfaces when used with Unreal Water plugin.

Flat Water

Example flat water hierarchy.

Any flat water system can be used with DWP2, even a simple StaticMesh or just an empty Actor. Performance-wise this is the least CPU-intensive way to use DWP2 since there are no water height queries that otherwise have to be run each frame with wavy water systems.

To use flat water:

  • Attach WaterDataBase to the Actor.
  • Assign the reference Actor to the WaterDataBase so the script knows at which level the water is.

If the position of the reference Actor never changes, there is an option to use the WaterObject without any WaterData components. In that case, the Default Water Height of WaterObject will be used. Same as for the No Water scenario below.

Unreal Water (4.26+)

Example setup hierarchy.

Unreal Water is still under heavy development by Unreal and some bugs are present.

Known bugs (affecting DWP2):

  • Objects that are touching the water on BeginPlay will (sometimes) not get detected by the water surface, meaning that these objects have to be placed slightly above the water.
Setup
  • Set up the Unreal Water scene as you would normally or use the Water demo scene (Content Browser > Water Content).
  • Attach WaterDataUnrealWater to the actor containing WaterObjectComponent(s). The rest will be set up automatically.

After entering play mode WaterDataUnrealWater a Buoyancy component will be attached to the actor. This is because DWP2 uses the default buoyancy system for detecting the currently active water surface. The Buoyancy component is otherwise not being used for any physics calculations.

Oceanology

Map_ModifiedWaves demo scene with DWP2 Yacht.
Setup
  • Add Oceanology plugin to Unreal.
  • Extract DWP2\Content\Blueprints\Water\BP_OceanologyWaterDataProvider.zip (navigate to Content Drawer ⇒ Engine ⇒ Plugins ⇒ DWP2 Content ⇒ Blueprints and the right click Water ⇒ Show in Explorer).
  • Add Oceanology to the scene or open one of the included demo scenes using Oceanology_Infinite, e.g. Content Drawer ⇒ OCEANOLOGY 5 Content > Maps > Demonstration > Beaufort_03_Map.
  • Attach BP_OceanologyWaterDataProvider to the actor containing WaterObjectComponent(s). E.g. BP_Barrel_WaterObject from the DWP2 Content ⇒ Blueprints ⇒ Props.
  • Remove any buoyancy actor components from the object as they are no longer needed, or any other WaterDataProviders (e.g. Unreal one).

No additional setup is needed. BP_OceanologyWaterDataProvider will interface between Oceanology_Infinite and any WaterObjectComponents on the actor.

No Water

WaterObject can be used with no water of any kind present in the scene.
In that case the Default Water Height, Default Water Normal and Default Water Flow settings of the WaterObject will be used. The same settings will also be used if the WaterObject is configured with a WaterData script but the water in question can not be found. For example, when WaterDataUnrealWater is used and there is no Unreal water present at the current position.

Previous Next

Dynamic Water Physics 2 for Unreal Engine Documentation

Table of Contents

Table of Contents

  • Water Compatibility
      • Flat Water
      • Unreal Water (4.26+)
      • Oceanology
      • No Water
  • About
  • Water Object
  • Ship Controller
  • Water Compatibility
  • Demos
  • Upgrade Notes
  • Changelog
  • Support