c

struct Storm

Include: Clouds/CloudKeyframer.h

A structure representing a thunderstorm. See CloudKeyframer::AddStorm.

Functions

void AddStrike(float cloudbase_km, float game_time, float real_time)
float GetDefaultFloat(char name)
int GetDefaultInt(char name)
float GetFloat(char name)
int GetInt(char name)
bool HasFloat(char name)
bool HasInt(char name)
void SetFloat(char name, float val)
void SetInt(char name, int val)
void Update(float game_time, float real_time)

A structure representing a thunderstorm. See CloudKeyframer::AddStorm.

Functions

void AddStrike(float cloudbase_km, float game_time, float real_time)

Add the next random strike.

float GetDefaultFloat(char name)

Returns the default for the named property - see HasFloat().

int GetDefaultInt(char name)

Returns the default for the named property - see HasInt().

float GetFloat(char name)

Returns the named property - see HasFloat().

int GetInt(char name)

Returns the named property - see HasInt().

bool HasFloat(char name)

Returns true if the keyframe has the named property.

bool HasInt(char name)

Returns true if the keyframe type has the named integer property.

void SetFloat(char name, float val)

Set the named property - see HasFloat().

void SetInt(char name, int val)

Set the named property - see HasFloat().

void Update(float game_time, float real_time)

Once per frame update to discard old strikes.

Fields

radiusKm < Centre of the lightning storm.

start_time < Radius of the lightning storm.

end_time < Time the storm commences.

realTime < Time the storm ends.

sheet < If true, frequency and duration of strikes are in real time, not simulation time.

strikeFrequencyPerSecond < What proportion of the strikes are sheet lightning as opposed to ground strikes.

strikeDurationSeconds < In simulated seconds - not necessarily realtime

strikeThicknessMetres < How long, in simulated seconds - not realtime - each strike should last.

roughness < Thickness of the main trunk.

motion < How rough/smooth to make the branches.

seed < How much to move/animate during a strike.

numLevels < Pseudo-random seed.

numBranches < Number of levels of branching.

branchAngleDegrees < Mean number of branches to generate from each parent.

colour < Mean angle of branching.

maxRadiance < Colour of the strikes.

minPixelWidth < Maximum radiance of the strikes.

unique_id < Minimum pixel-size for strike rendering.

last_strike_uid < A non-persistent unique identifier.

strikes We can store a stack of non-random strikes. These take precedence over pseudo-randomly generated strikes.