Dynamic Water Physics 2
Search Results for

    Show / Hide Table of Contents

    Supported Water Assets

    WaterDataProvider scripts are interfaces between the 3rd party water assets and Dynamic Water Physics 2. They tell the WaterObject where the water is.

    Using Multiple Assets / Water Types at Once

    Multiple water types can be used in the same scene at the same time. This is achieved through triggers (Colliders with isTrigger set to true) attached to the same GameObject as the WaterDataProvider. By default these colliders are created automatically on Awake and are set to cover the whole world. However, it is possible to use a WaterDataProvider just for a small part of the scene - such as a lake:

    • Attach a Collider of any type (e.g. SphereCollider) to the GameObject containing WaterDataProvider.
    • Tick Is Trigger on the collider.
    • Adjust the size/radius of the collider to cover the area you want the WaterDataProvider to have the effect on.

    If there are multiple trigger volumes they will act as a queue, meaning the one that the object last entered will be currently active.

    Flat Water Integration

    FlatWaterDataProvider can be used for all flat water systems. It can even be used with wavy water systems if the waves have 0 amplitude to improve performance - sometimes drastically as the water heights are always queried with wavy water system, even if there are no waves.

    1. Add FlatWaterDataProvider to any GameObject in the scene.
    2. WaterObjects will now float at the water transform.y position.

    Unity HDRP Water

    Unity HDRP Water requires HDRP rendering pipeline (will not work with URP).

    1. Import the Unity HDRP Water Integration sample from the Package Manager.
    2. Add UnityHDRPWaterDataProvider to any GameObject in the scene.

    Crest

    Crest water setup.

    Dynamic Water Physics 2 supports Crest 5+ (WaveHarmonic.Crest) by default. Crest supports water heights, normals and flows.

    1. Import the Crest Integration sample from the Package Manager.
    2. Add CrestWaterDataProvider to any GameObject in the scene.
    Tip

    The Crest Integration sample includes a ready-to-use demo scene: CrestIntegrationDemo.unity.

    Legacy Crest Support

    For older Crest versions (pre-Crest 5) that use the Crest namespace instead of WaveHarmonic.Crest, add the DWP_CREST_LEGACY scripting define symbol to your project:

    1. Go to Edit > Project Settings > Player.
    2. Under Scripting Define Symbols, add DWP_CREST_LEGACY.
    3. Click Apply.

    Stylized Water 3

    Stylized Water 3 supports water heights, normals and flows.

    1. Import the Stylized Water 3 Integration sample from the Package Manager.
    2. Add StylizedWater3WaterDataProvider to any GameObject in the scene.
    3. Assign the wave profile.

    KWS

    KWS water data provider setup.

    KWS Water System supports water heights, normals and flows.

    1. Import the KWS Integration sample from the Package Manager.
    2. Add KWSWaterDataProvider to any GameObject in the scene.
    Tip

    The KWS Integration sample includes a ready-to-use demo scene: KWSIntegrationDemo.unity.

    R.A.M. (River Auto Material)

    RAM water data provider setup.

    R.A.M. (River Auto Material) supports water heights, normals and flow via RaycastWaterDataProvider.

    1. Import the RAM Integration sample from the Package Manager.
    2. Set up the scene as if using flat water, minus FlatWaterDataProvider.
    3. Add RAMWaterDataProvider to any GameObject in the scene.
    4. Make sure that the RAM object has a MeshCollider attached. This is required for Raycasts to work.
    5. Assign Water Layer to the River Auto Material water. Assign Object Layer to all the WaterObjects in the scene. This is an important step as the script will disable physical collisions between the two layers to prevent the WaterObjects from sitting on top of the mesh collider that R.A.M. uses instead of interacting with water.
    6. R.A.M. setup is ready to go.

    Stylized Water 2

    Stylized Water 2 includes its own DWP2 integration.

    1. Go to Help > Stylized Water 2 and click Install integration.
    2. Add StylizedWaterDataProvider to any GameObject in the scene.

    LUX Water

    LUX water data provider setup.

    Lux Water supports water heights.

    1. Import the Lux Water Integration sample from the Package Manager.
    2. Add LuxWaterDataProvider to any GameObject in the scene.

    Ceto

    • Support removed in v14

    Ocean Next Gen

    • Support removed in v14

    SUIMONO

    • Support removed in v14
    • Edit this page
    In this article
    Back to top Copyright © NWH - Vehicle Physics, Aerodynamics, Dynamic Water Physics