| Home Page | Recent Changes | Preferences


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.


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)





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


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.

Category Class (UT2003)

The Unreal Engine Documentation Site

Wiki Community

Topic Categories

Image Uploads

Random Page

Recent Changes

Offline Wiki

Unreal Engine

Console Commands


Mapping Topics

Mapping Lessons

UnrealEd Interface


Scripting Topics

Scripting Lessons

Making Mods

Class Tree


Modeling Topics


Log In