86 lines
2.7 KiB
Ucode
86 lines
2.7 KiB
Ucode
//=======================================================================================
|
|
// WaterTexture: Base class for fractal water textures. Parent of Wave- and WetTexture.
|
|
// This is a built-in Unreal class and it shouldn't be modified.
|
|
//=======================================================================================
|
|
|
|
class WaterTexture extends FractalTexture
|
|
native
|
|
noexport
|
|
abstract;
|
|
|
|
//
|
|
// Water drops.
|
|
//
|
|
|
|
enum WDrop
|
|
{
|
|
DROP_FixedDepth , // Fixed depth spot, A=depth
|
|
DROP_PhaseSpot , // Phased depth spot, A=frequency B=phase
|
|
DROP_ShallowSpot , // Shallower phased depth spot, A=frequency B=phase
|
|
DROP_HalfAmpl , // Half-amplitude (only 128+ values)
|
|
DROP_RandomMover , // Randomly moves around
|
|
DROP_FixedRandomSpot , // Fixed spot with random output
|
|
DROP_WhirlyThing , // Moves in small circles, A=speed B=depth
|
|
DROP_BigWhirly , // Moves in large circles, A=speed B=depth
|
|
DROP_HorizontalLine , // Horizontal line segment
|
|
DROP_VerticalLine , // Vertical line segment
|
|
DROP_DiagonalLine1 , // Diagonal '/'
|
|
DROP_DiagonalLine2 , // Diagonal '\'
|
|
DROP_HorizontalOsc , // Horizontal oscillating line segment
|
|
DROP_VerticalOsc , // Vertical oscillating line segment
|
|
DROP_DiagonalOsc1 , // Diagonal oscillating '/'
|
|
DROP_DiagonalOsc2 , // Diagonal oscillating '\'
|
|
DROP_RainDrops , // General random raindrops, A=depth B=distribution radius
|
|
DROP_AreaClamp , // Clamp spots to indicate shallow/dry areas
|
|
DROP_LeakyTap ,
|
|
DROP_DrippyTap ,
|
|
};
|
|
|
|
|
|
//
|
|
// Information about a single drop.
|
|
//
|
|
|
|
struct ADrop
|
|
{
|
|
var WDrop Type; // Drop type.
|
|
var byte Depth; // Drop heat.
|
|
var byte X; // Spark X location (0 - Xdimension-1).
|
|
var byte Y; // Spark Y location (0 - Ydimension-1).
|
|
|
|
var byte ByteA; // X-speed.
|
|
var byte ByteB; // Y-speed.
|
|
var byte ByteC; // Age, Emitter freq. etc.
|
|
var byte ByteD; // Exp.Time etc.
|
|
};
|
|
|
|
|
|
//
|
|
// Water parameters.
|
|
//
|
|
|
|
var(WaterPaint) WDrop DropType;
|
|
var(WaterPaint) byte WaveAmp;
|
|
|
|
var(WaterPaint) byte FX_Frequency;
|
|
var(WaterPaint) byte FX_Phase;
|
|
var(WaterPaint) byte FX_Amplitude;
|
|
var(WaterPaint) byte FX_Speed;
|
|
var(WaterPaint) byte FX_Radius;
|
|
var(WaterPaint) byte FX_Size;
|
|
var(WaterPaint) byte FX_Depth;
|
|
var(WaterPaint) byte FX_Time;
|
|
|
|
var int NumDrops;
|
|
var ADrop Drops[256];
|
|
|
|
var transient pointer SourceFields;
|
|
var transient byte RenderTable[1028];
|
|
var transient byte WaterTable[1536];
|
|
var transient byte WaterParity;
|
|
var transient int OldWaveAmp;
|
|
|
|
defaultproperties
|
|
{
|
|
}
|