| Home Page | Recent Changes | Preferences

# PhysicsVolume

UT2003 :: Actor >> Brush >> Volume >> PhysicsVolume (Package: Engine)

A PhysicsVolume is a bounding volume which affects actor physics. Each Actor is affected at any time by one PhysicsVolume.

## Properties

### PhysicsVolume Group

bool bBounceVelocity
bool bDestructive
bool bMoveProjectiles
bool bNeutralZone
  Players can't take damage in this volume.
bool bNoInventory
  Don't use this, it will not have the desired effect! (It will destroy Inventory actors in the volume, but since UT2003 uses Pickups for things players can pick up, this is pretty much useless.)
bool bPainCausing
  This volume damages actors in it.
bool bWaterVolume
float DamagePerSec
class<DamageType> DamageType
class<Actor> EntryActor
Sound EntrySound
class<Actor> ExitActor
Sound ExitSound
float FluidFriction
vector Gravity (replicated to clients)
float GroundFriction
int Priority
  determines which one of several overlapping PhysicsVolumes gets to apply its physics properties (Gravity, GroundFriction, ZoneVelocity and so on) on players and other actors in the overlapping area.
float TerminalVelocity
vector ViewFlash
vector ViewFog
vector ZoneVelocity

### Karma Group

float KBuoyancy
float KExtraAngularDamping
float KExtraLinearDamping

### VolumeFog Group

bool bDistanceFog
  There is distance fog in this physicsvolume.
color DistanceFogColor
  The distance fog's color.
float DistanceFogEnd
  The distance at which the fog starts.
float DistanceFogStart
  The distance at which the fog reaches its maximum density.

### Hidden

PhysicsVolume NextPhysicsVolume
Info PainTimer

## Methods

### Inherited From Actor

PostBeginPlay ( )
  In versions prior to 2186 PostBeginPlay sets up a VolumeTimer? on the server if bPainCausing was true. Now it only calls the superclass implementation.
Trigger (Actor Other, Pawn EventInstigator)
  Triggering toggles the bPainCausing property if the DamagePerSec value isn't 0.
Touch (Actor Other)
  Does various things when actors touch the volume:
  Inventory subclasses are given a LifeSpan of 1.5 when bNoInventory=True and the Inventory doesn't have an Owner.
  Actors with PHYS_Projectile or Effects with PHYS_None get some Velocity added if bMoveProjectiles is True.
  Actors that can't exist in a pain volume are destroyed if this is a pain volume, other actors are damage.
  If this is a water volume (bWaterVolume=True) the PlayEntrySplash function is called.
Untouch (Actor Other)
  Calls the PlayExitSplash function if this is a water volume and the actor exiting the volume can cause splashes.

### New Functions

CausePainTo (Actor Other)
  Hurts/damages the actor.
PlayEntrySplash (Actor Other)
PlayExitSplash (Actor Other)
TimerPop (VolumeTimer? T)

### New Events

ActorEnteredVolume (Actor Other)
  Called when an actor entered the volume.
ActorLeavingVolume (Actor Other)
  Called when an actor leaves the volume.
PawnEnteredVolume (Pawn Other)
  Called when a Pawn entered the volume. This triggers the volume's Event with the pawn as the instigator.
PawnLeavingVolume (Pawn Other)
  Called when a Pawn leaves the volume. This untriggers the volume's Event with the pawn as the instigator.
PhysicsChangedFor (Actor Other)
  Called when an actor in this PhysicsVolume changes its physics mode.

## Known Subclasses

- DefaultPhysicsVolume?
- LadderVolume
- LavaVolume?
- PressureVolume?
- WaterVolume
- xFallingVolume

Category Class (UT2003)

## Discussion

Off-Kilter: I don't know about the note on bNoInventory. LavaVolume has this set to true by default, IIRC. Also, for bWaterVolume I've used this to get people to float around and be somewhat buoyant in lava. Is this the correct way?

Wormbo: bNoInventory seems to be a leftover from older engine versions where Inventory (UT) was the base class for all pickups as well. However, in UT2003 Inventory only is the base class for items in a player's inventory. The Pickups of those items aren't subclasses of Inventory anymore.
In UT bNoInventory=True for a ZoneInfo (UT) meant "destroy all items that somehow enter this zone." The code for this was copied over to UT2003 without the neccessary modifications, so it still destroys Inventory class actors, but not any Pickups. It is highly unlikely that any Inventory actors will enter a LavaVolume. The only exception is when the origin of the map is in such a volume. In that case it might cause problems with inventory items spawned of players because those are invisible and usually spawn at the origin. If they spawn inside a bNoInventory volume they might get destroyed immediately and the player doesn't get what he just picked up somewhere else on the map.

The Unreal Engine Documentation Site

Wiki Community

Topic Categories

Image Uploads

Random Page

Recent Changes

Offline Wiki

Unreal Engine

Console Commands

Terminology

Mapping Topics

Mapping Lessons

UnrealEd Interface

Questions&Answers

Scripting Topics

Scripting Lessons

Making Mods

Class Tree

Questions&Answers

Modeling Topics

Questions&Answers

Log In