| Home Page | Recent Changes | Preferences

FluidSurfaceInfo

UT2003 :: Actor >> Info >> FluidSurfaceInfo (Package: Engine)

A water-like surface. Actors can cause ripples by touching it. Unlike xProcMeshes, FluidSurfaceInfos do not deform when damaged.

Properties

FluidSurfaceInfo Group

float AlphaCurveScale
float AlphaHeightScale
byte AlphaMax

does anyone know how to use the surface alpha property of fluidsurfaceinfo to blend a second material onto the peaks of the waves in a water surface? -jeeptrash

bool bShowBoundingBox
bool bUseNoRenderZ
TerrainInfo ClampTerrain (edfindable)
Terrain used for auto-clamping water verts if below terrain level.
color FluidColor
float FluidDamping
between 0 and 1
float FluidGridSpacing
distance between grid points
EFluidGridType FluidGridType
float FluidHeightScale
vertical scale factor
float FluidNoiseFrequency
range FluidNoiseStrength
"Noise" or ripples that exist without a player interaction
float FluidSpeed
wave speed
int FluidXSize
num vertices in X direction
int FluidYSize
num vertices in Y direction
float NoRenderZ
bool OrientTouchEffect
bool OrientShootEffect
float RippleVelocityFactor
How much to ripple the water when interacting with actors
class<Actor> ShootEffect
Class of effect spawned when water surface it shot or touched by an actor
float ShootRadius
How large a radius is affected when water is shot
float ShootStrength
How hard to ripple water when shot
bool TestRipple
float TestRippleSpeed
float TestRippleStrength
float TestRippleRadius
Test ripple that shows only in editor.
class<Actor> TouchEffect
float TouchStrength
float UOffset
float UpdateRate
Rate at which fluid sim will be updated.
float UTiles
float VOffset
float VTiles
float WarmUpTime
Amount of time to simulate during postload before water is first displayed

UnrealScript-Only Properties

array<int> ClampBitmap
Bitmap indicating which water verts are 'clamped' ie. dont move
array<float> Verts0 (transient, const)
array<float> Verts1 (transient, const)
array<byte> VertAlpha (transient, const)
int LatestVerts (transient, const)
box FluidBoundingBox (transient, const)
Current world-space AABB
vector FluidOrigin (transient, const)
Current bottom-left corner
float TimeRollover (transient, const)
float TestRippleAng (transient, const)
FluidSurfacePrimitive? Primitive (transient, const)
array<FluidSurfaceOscillator> Oscillators (transient, const)
bool bHasWarmedUp (transient, const)

Enums

EFluidGridType

FGT_Square
FGT_Hexagonal

Tips

  • If your FluidSurface inexplicably stops moving (it may have been working fine, then stopped after a rebuild or after subsequent additions/changes to your map), you're apparently experiencing a bug in the PHYS_FluidSurface Physics setting. I'm told this problem also appears in DM-IronDiety, as their fluid surface seems all set up, but is completely immobile. A lame, but servicable work-around is to "jiggle" (or change, then change back) a setting in your FluidSurfaceInfo actor, like FluidXSize, to get the surface physics to "wake up" in Ued, then save your map without another rebuild. This will save the FluidSurface in a state that is active and it will appear so in game as well. Unfortunately, this "jiggling" must take place after each rebuild to ensure your FluidSurface doesn't save in a frozen state.

Quick HOWTO

Here is a quick way to get a fluid surface in a level.

  1. Add an Actor of class FluidSurfaceInfo to the level.
  2. Change the FluidXSize and FluidYSize along with the FluidGridSpacing to size it correctly for the level space you want to use it in.
  3. Find the Texture you want to use, and assign it to the first material in the Display → Skins array
  4. Tweak extra settings to suit your level.
  5. Go shoot it.

Related Topics

Discussion

Highlander: It seems that the FluidSurface is unlit by default as well. BTW.. the Class Wikifier is pretty neat

Wormbo: Yeah, it's neat, but it still needs some work. I've redone the Properties section.

Jeeptrash: Anybody know what AlphaCurveScale and AlphaHeightScale do? The UDN tutorial implies that they change the alpha based on the height of a vertex but I can't seem to get this working to demo it. Does it change the alpha of an alpha map in the material? of the whole shader?

The Twiggman: Wow those things are neat. Lol I always wondered how some of the volumes were moving like that, so I decided to find out and I looked at curse3's little area. Now you can just replace that old sheet with one of these for good effects. But doesn't that make you think you can make neat effects like a big web or something and have it ripple as you fall through it.

Tony: So is it possible to create circular liquid surfaces with this actor, or is the engine limited in this aspect?

Wormbo: It seems the FluidSurcafeInfo is limited to flat surfaces. If you want a different shape you need to use an xProcMesh.

Zengi: Is it possible to make a fluid type mesh while in game through code for summoning?


Category Class (UT2003)

Category Class (UT2004)

The Unreal Engine Documentation Site

Wiki Community

Topic Categories

Image Uploads

Random Page

Recent Changes

Offline Wiki

Unreal Engine

Console Commands

Terminology

FAQs

Help Desk

Mapping Topics

Mapping Lessons

UnrealEd Interface

UnrealScript Topics

UnrealScript Lessons

Making Mods

Class Tree

Modeling Topics

Chongqing Page

Log In