1
0
KF2-Dev-Scripts/Engine/Classes/NxGenericForceField.uc
2020-12-13 18:01:13 +03:00

109 lines
2.9 KiB
Ucode

/**
* Copyright 1998-2013 Epic Games, Inc. All Rights Reserved.
*/
class NxGenericForceField extends NxForceField
native(ForceField)
abstract;
/** Type of Coordinates that can be used to define the force field */
/*enum FFG_ForceFieldCoordinates
{
FFG_CARTESIAN,
FFG_SPHERICAL,
FFG_CYLINDRICAL,
FFG_TOROIDAL
};*/
/** Type of Coordinates to define the force field */
var() FFG_ForceFieldCoordinates Coordinates;
/** Constant force vector that is applied inside force volume */
var() vector Constant;
/** Rows of matrix that defines force depending on position */
var() vector PositionMultiplierX;
var() vector PositionMultiplierY;
var() vector PositionMultiplierZ;
/** Vector that defines force depending on position */
var() vector PositionTarget;
/** Rows of matrix that defines force depending on velocity */
var() vector VelocityMultiplierX;
var() vector VelocityMultiplierY;
var() vector VelocityMultiplierZ;
/** Vector that defines force depending on velocity */
var() vector VelocityTarget;
/** Vector that scales random noise added to the force */
var() vector Noise;
/** Linear falloff for vector in chosen coordinate system */
var() vector FalloffLinear;
/** Quadratic falloff for vector in chosen coordinate system */
var() vector FalloffQuadratic;
/** Radius of torus in case toroidal coordinate system is used */
var() float TorusRadius;
/** linear force field kernel */
var const native transient pointer LinearKernel{class UserForceFieldLinearKernel};
cpptext
{
virtual void InitRBPhys();
virtual void TermRBPhys(FRBPhysScene* Scene);
virtual void TickSpecial(FLOAT DeltaSeconds);
virtual void DefineForceFunction(FPointer ForceFieldDesc);
virtual FPointer DefineForceFieldShapeDesc();
}
defaultproperties
{
TickGroup=TG_PreAsyncWork
RemoteRole=ROLE_SimulatedProxy
bNoDelete=true
bAlwaysRelevant=true
NetUpdateFrequency=0.1
bOnlyDirtyReplication=true
CollideWithChannels={(
Default=True,
Pawn=True,
Vehicle=True,
Water=True,
GameplayPhysics=True,
EffectPhysics=True,
Untitled1=True,
Untitled2=True,
Untitled3=True,
FluidDrain=True,
Cloth=True,
SoftBody=True
)}
Coordinates=FFG_CARTESIAN;
Constant=(X=0.0,Y=0.0,Z=0.0);
PositionMultiplierX=(X=0.0,Y=0.0,Z=0.0);
PositionMultiplierY=(X=0.0,Y=0.0,Z=0.0);
PositionMultiplierZ=(X=0.0,Y=0.0,Z=0.0);
PositionTarget=(X=0.0,Y=0.0,Z=0.0);
VelocityMultiplierX=(X=0.0,Y=0.0,Z=0.0);
VelocityMultiplierY=(X=0.0,Y=0.0,Z=0.0);
VelocityMultiplierZ=(X=0.0,Y=0.0,Z=0.0);
VelocityTarget=(X=0.0,Y=0.0,Z=0.0);
FalloffLinear=(X=0.0,Y=0.0,Z=0.0);
FalloffQuadratic=(X=0.0,Y=0.0,Z=0.0);
TorusRadius=1.0;
Noise=(X=0.0,Y=0.0,Z=0.0);
}