Announcement

Collapse
No announcement yet.

Physical Water Surface

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Originally posted by AP15 View Post
    Hi, I have added physical water surface, how can I change the wave (and wind) direction. I am observing waves from an aerial viewpoint.
    Do you need to change the wind direction dynamically, while the game is running?

    Comment


      Actually my requirement is twofold: changing the wind direction dynamically, while the game is running and changing the wind direction (linearly, e.g. north to south), before the game starts.

      Comment


        Originally posted by AP15 View Post
        Actually my requirement is twofold: changing the wind direction dynamically, while the game is running and changing the wind direction (linearly, e.g. north to south), before the game starts.
        Changing the wind direction before the game starts will be included in the next update, this just requires transforming the wave parameters once.
        Changing the wind direction while the game is running will be more complex, but also possible of course. It will be similar to the other sea state transitions that I have already implemented. One way of doing it would be to slowly rotate all the waves of the ocean around the viewpoint of the camera. But this needs to happen very slowly, otherwise it would look weird. How fast do you want to rotate the wind direction? Is it something that should happen during a few seconds, or during a few minutes?

        Comment


          I would suggest giving a scalar plugged into a lerp's alpha and for A and B just put the less weird values which would guarantee a good transition. If the dev wants to change its their responsability while your is to make sure you are delivering a good visual solution.
          Nilson Lima
          Technical Director @ Rigel Studios Ltda - twitter: @RigelStudios
          Join us at Discord: https://discord.gg/FUwTvzr

          UE4 Marketplace: Cloudscape Seasons
          supporting: Community FREE Ocean plugin

          Comment


            Physical Water Surface is compatible with engine version 4.19. Please let me know if you should encounter any problems.

            Comment


              I've nearly finished developing Update 4 of Physical Water Surface. This update will bring a number of features and improvements, many of them are based on customer feedback. One of these new features will be transitions between different wind directions while the game is running.

              Comment


                Originally posted by Theokoles View Post
                I've nearly finished developing Update 4 of Physical Water Surface. This update will bring a number of features and improvements, many of them are based on customer feedback. One of these new features will be transitions between different wind directions while the game is running.
                Will waves crashing on the shore be a thing?

                Comment


                  Originally posted by jojo8026 View Post

                  Will waves crashing on the shore be a thing?
                  Shore interaction is planned, but not for Update 4.

                  Comment


                    Originally posted by Theokoles View Post

                    Shore interaction is planned, but not for Update 4.
                    Awesome Can't wait

                    Comment


                      Hi,

                      Could you please tell if the maximum value of wind speed can only be 35 m/s? Since I found there is no option that I can change to improve the maximum wind speed further. Could you please tell how can I improve the maximum speed further? Thanks!

                      Comment


                        Update 4
                        Released on April 5, 2018

                        This update brings some of the most requested improvements and new features. Most of these updates are directly based on recent feedback and suggestions from customers.
                        The documentation in the wiki has also been updated to reflect the latest changes.

                        Performance Improvements
                        The DemoMap with 9 floating objects now runs at a frame rate of 180 fps. Without any floating objects, the water surface runs at over 300 fps.
                        Details about the performance benchmarks are provided here in the wiki.

                        Hiding Water inside of Boats
                        A method is provided to mask out water inside of boats, making use of Mesh Distance Fields (Blend Mode Masked). A new Map MaskedWater is included that demonstrates the setup. Details are explained in the wiki.

                        Click image for larger version

Name:	MaskedWater.jpg
Views:	108
Size:	64.3 KB
ID:	1456499

                        Sea State Transitions Performance Improvements
                        The code for sea state transitions has been optimized. The impact on performance while a Sea State Transition is running has been reduced a lot.
                        Additionally, the ChangeSeaState function now has a new input TransitionQuality, where a lower transition quality can be selected to improve the performance even more. A lower transition quality means that the transition calculation (not the game) runs at a lower frame rate.

                        Wind Direction Transitions
                        The wind direction can now be changed while the game is running. Use the the input NewWindDirectionDegrees of the ChangeSeaState function to trigger a wind direction transition. To set the initial wind direction use the Wind Direction variable of the WaterSettings Blueprint.
                        The new map WindDirectionTransition demonstrates how a wind direction transition is performed.
                        For details see the documentation about sea state transitions.

                        Click image for larger version

Name:	ChangeSeaState2.png
Views:	101
Size:	40.5 KB
ID:	1456500

                        Material Parameter Collection is used for Wave Parameters
                        The architecture of Physical Water Surface has been updated to make use of a Material Parameter Collection to store the wave parameters that drive the WaterMotion material function. This change simplifies a lot of things, for example it is now easier to use the WaterMotion material function in other materials.

                        Click image for larger version

Name:	WaterMotion.PNG
Views:	94
Size:	9.5 KB
ID:	1456501

                        Network Replication: New Wiki Chapter and TimeOffset Material Parameter
                        This new material parameter is needed when Physical Water Surface is used with Networking and the water motion needs to be replicated.
                        A new section in the wiki about networking explains how to use this parameter.

                        Events when entering and leaving the Water
                        Two events HasEnteredWater and HasLeftWater are provided in the Buoyancy Blueprint that are triggered when a a floating objects enters or leave the water.

                        Improvement of WaterHeight, WaterLocation and WaterSpeed Blueprints
                        The three Blueprints WaterHeight, WaterLocation and WaterSpeed (that demonstrate how to query the position and speed of the water surface) have been improved. Now, these Blueprints also detect the Z coordinate of the water surface and are always displayed correctly on the water surface.

                        Water Plane Collision Settings
                        The collision settings of the WaterPlane Blueprint have been adjusted. Collision responses are now disabled for everything except Vehicle (otherwise Nav Mesh doesn't build on the water surface). This prevents problems in some cases, for example when a ThirdPersonCharacter was placed in the map the old collision setting caused problems.

                        Comment


                          I know a lot of water-based assets are now requiring the "generate mesh distance fields" setting, and I have a general idea of what it does and how it is useful. However, I don't know what performance impact it has... Does it generate the fields for all objects in the level? only the ones close to the player? Im working in VR, so, unfortunately, this matters haha.

                          Comment


                            Originally posted by meuliano View Post
                            I know a lot of water-based assets are now requiring the "generate mesh distance fields" setting, and I have a general idea of what it does and how it is useful. However, I don't know what performance impact it has... Does it generate the fields for all objects in the level? only the ones close to the player? Im working in VR, so, unfortunately, this matters haha.
                            Generate Mesh Distance Fields is in use in Fortnite mobile version, so the answer is that it will not have performance impact as long you tweak the size it will have (precision) for each mesh, because the more precision the more memory each mesh will require, this at least is important for mobile, not that much for VR where the hardware will be likely better in comparison, having more main system memory and more gpu memory aswel.
                            Nilson Lima
                            Technical Director @ Rigel Studios Ltda - twitter: @RigelStudios
                            Join us at Discord: https://discord.gg/FUwTvzr

                            UE4 Marketplace: Cloudscape Seasons
                            supporting: Community FREE Ocean plugin

                            Comment


                              Awesome. Thanks for the quick response!
                              I do have another question though.
                              I have been struggling to make seafoam-capped waves like the Ocean in Epic's water plane example.
                              Epic's water motion was based off of a heightmap, it seems. And this uses a significantly more complicated wave system. Do you (or anyone) have suggestions on how to achieve this?

                              Comment


                                This new feature Theokoles is providing in this new version called WaterHeight allows you to know at some point how high the water is (ofc) and this info allows you to mask inside the water material the appearance for the foam (a texture with a panning node to move the bubbles) and you will need to stablish how a certain height for this foam will receive this texture. It is nice to mix a noise texture so the foam will not appear like a straight line on top of the wave crests. So your foam would be something like:

                                FoamMask = clamp(0, WaterHeight, ((WaterHeight - WaterLocation.z) - foam size) * (max(VerticalGradient * PerlinNoise)))

                                approximately like above (I think I didnt miss anything), I will post the nodes assembled in a material as soon Epic make the package live. Which water material are you using?
                                Last edited by NilsonLima; 04-06-2018, 05:54 PM.
                                Nilson Lima
                                Technical Director @ Rigel Studios Ltda - twitter: @RigelStudios
                                Join us at Discord: https://discord.gg/FUwTvzr

                                UE4 Marketplace: Cloudscape Seasons
                                supporting: Community FREE Ocean plugin

                                Comment

                                Working...
                                X