Simul Support ExchangeCategory: WaterSwimmable TrueSky water possible?
Julian Uccetta asked 4 years ago

How would one go about setting up TrueSky Water to be swimmable? I know how to set up some basic water volume blueprints to be swimmable, but the TrueSky Water actor is not a blueprint, so I’m not quire sure how to go about this. Can I get a basic run-down?

1 Answers
Chris_Simul Staff answered 4 years ago

Hi Julian –

I haven’t tested this or set it up – so my information may be slightly off here, but should be enough to get you on the right lines.

TrueWATER interacts primarily with trueSKY water probes. The most common use of the probes is for setting up buoyancy on an object. However on the probe component itself, you can change the type of probe from a physics probe to a depth test probe.

Adding this probe type to your blueprint which will be entering the water volumes (so for this use-case, lets assume its a person and we have attached the probe onto the character) should let you get the desired effect and useful variables to work with.

Referencing the probe within the blueprint and adding a “get depth” node – will not only allow you to determine if the character is in water, and as such triggering swimming animations ect ~ but the depth at which the character is at. Useful information if you are intending to implement wading through shallower water before transitioning to a swim upon reaching deeper water.

As a side note – the depth probe will not supply any buoyancy as the regular probe type does, so you wont have to worry about unintended buoyancy if you are not using the buoyancy system.

I hope this helps and gets you on the right tracks – If you have any further questions feel free to ask!

Chris

Julian Uccetta replied 4 years ago

That got me going, thanks! 🙂
I actually do have another question – does TrueSky create a physical wind component? If so — how can I tie this wind component in to my particle effects (smoke/fire)?
If not — is it possible to link a wind component or custom wind system with TrueSky?

I really do hope you guys finish your documentation. Most of the 5,000 questions I have about the system could probably be summed up in documentation 🙁

Julian Uccetta replied 4 years ago

Forgot to add this in my previous reply — I’ve managed to get swimming working using a water probe, but it’s less than a savory method. Querying if the player is below sea level is the least of my worries. Once the player is in the water and I set the movement mode and animation state to swimming, everything appears to work well, BUT, things get kinda glitchy when your treading water above the surface (only the characters lower half is submerged). I can’t quite figure out how to get the player to bob up and down in the water with the waves, so if the weather changes and the wind kicks up the water for instance, waves will just be going over the player as they stay in the same position. Any suggestions on this? It also appears having even mild waves in the water sort of messes up the whole sea level query thing for swimming, as one moment a wave might put you under water and the next your almost above it so the animation mode quickly swaps states.

Chris_Simul Staff replied 4 years ago

As far as I’m aware we do not – our wind direction is controlled via either the “wind speed” variable within the sequence actor (to control the churn direction and speed), or the movement of the key frame within the sequencer (movement of the clouds themselves).

The wind speed variable is exposed within blueprints if you reference the trueSKY Sequence actor – then drag off it and you should be able to pull the wind speed variable as a Vector (for the x,y,z movement). Which you could probably use as the variable to control the direction of your particle effects (I’m not amazingly versed on particle effects, so apologies if this isn’t exactly what your looking for).

As for linking the wind component / custom wind system we don’t have any way directly, but again, the variables are exposed for the wind speed and can be got / changed via blueprints so could be integrated in or at least work alongside any custom wind systems. (we are currently considering how to set up keyframe movement via blueprint so that is not available at the moment)

Our documentation is an ongoing project (as you can imagine), and we are looking into adding to it as much as we can. Hopefully this Q+A board can help for the time being while we add to it, and is something we monitor so raising questions such as the ones you have allows us to lift the information we write here and add to the documentation itself. So thank you for starting the discussion!

Chris

Julian Uccetta replied 4 years ago

Thank you for the prompt reply, that helped a lot. I managed to get my particles working with the wind variable as you stated. 🙂 I posted another question after the wind one though regarding the water again, not sure if you missed it but I managed to get swimming working quite well as long as the player is below the waters surface — when the player is partially above the surface things get a little wonky as I stated above. Is there any way to have the player move up and down with the waves?

I also wanted to ask when a NPC dies or the player dies and ragdoll is triggered, they do not float, is it possible to have the character/NPC floating? I’ve added water probes to my characters and scaled them accordingly, but the characters still sink.
I’m wondering if maybe the skeletal bone weight is too much for the probes.

If that is indeed the case, would it be possible for the devs to add a strength multiplier to the water probes? We actually have a few small yet heavy skeletal objects in my game that I’d like to give buoyancy too, and adding a few small probes doesn’t seem to cut it as they normally just sink unless the probes are scaled way up, which causes unrealistic bobbing effects on said objects. Having a strength multiplier on the probes would be ultimately handy.

Chris_Simul Staff replied 4 years ago

Apologies – That must’ve come through as I was writing my previous reply as they were so close together! From the top of my head the best / intended way would be to implement use of trueWATER’s Buoyancy System. As mentioned previously I haven’t set up a swimming setup prior but will try to find some time to look into it to try find a potential solution and get back to you.

The strength multiplier is a good idea, I will extend this over to the team and get a ticket in to see if we can get something like that implemented. I believe you can actually stack buoyancy probes in the same spot – not an ideal situation, however could be a temporary solution.

I am assuming you have watched / seen the Buoyancy tutorial https://youtu.be/xBkgS5WMU64 – It covers some general setup which may be useful with realistic bobbing, even though the tutorial is more aimed towards larger object.