PDA

View Full Version : Question: randomize navlights, strobes etc.



Warrant
July 15th, 2011, 07:57
Perhaps already been a topic here, but how to randomize nav-lights, strobes etc for AI in FSX?

Bjoern
July 15th, 2011, 11:35
Define "randomize"...

Warrant
July 15th, 2011, 13:20
As in no synchrone nav light and strobe flashing emitted from all ai aircraft flying or taxieng.....:mixedsmi:

Felixthreeone
July 15th, 2011, 13:33
There was at one time a set of 'asynchronous' strobe effects for fs9...actually I think if you go to flightsim or avsim and search 'async strobes' or something you might find it. It changes the timing of the red and white strobe effects slightly so that not all blink simultaneously, and it looks much more convincing. I would assume it probably also works in fsx?

Bjoern
July 15th, 2011, 15:04
As in no synchrone nav light and strobe flashing emitted from all ai aircraft flying or taxieng.....:mixedsmi:

One look into the documentation into the SDK later and my strobes aren't synchronized anymore.


[Library Effect]
Lifetime=5
Version=2.00
Radius=-1
Priority=0

[Properties]

[Emitter.0]
Lifetime=0.00, 0.00
Delay=0.00, 0.25
Bounce=0.00
No Interpolate=1
Rate=0.40, 0.40
X Emitter Velocity=0.00, 0.00
Y Emitter Velocity=0.00, 0.00
Z Emitter Velocity=0.00, 0.00
Drag=0.00, 0.00
X Particle Velocity=0.00, 0.00
Y Particle Velocity=0.00, 0.00
Z Particle Velocity=0.00, 0.00
X Rotation=0.00, 0.00
Y Rotation=0.00, 0.00
Z Rotation=0.00, 0.00
X Offset=0.00, 0.00
Y Offset=0.00, 0.00
Z Offset=0.00, 0.00
Pitch=0.00, 0.00
Bank=0.00, 0.00
Heading=0.00, 0.00

[Particle.0]
Lifetime=0.01, 0.01
Type=19
X Scale=0.50, 0.50
Y Scale=0.50, 0.50
Z Scale=0.00, 0.00
X Scale Rate=0.00, 0.00
Y Scale Rate=0.00, 0.00
Z Scale Rate=0.00, 0.00
Drag=0.00, 0.00
Color Rate=0.00, 0.00
X Offset=0.00, 0.00
Y Offset=0.00, 0.00
Z Offset=0.00, 0.00
Fade In=0.00, 0.00
Fade Out=0.00, 0.00
Rotation=0.00, 0.00
Static=1
Face=1, 1, 1

[ParticleAttributes.0]
Blend Mode=2
Texture=fx_2.bmp
Bounce=0.00
Color Start=100, 100, 150, 200
Color End=100, 100, 150, 0
Jitter Distance=0.00
Jitter Time=0.00
uv1=0.00, 0.00
uv2=0.50, 0.50
X Scale Goal=0.00
Y Scale Goal=0.00
Z Scale Goal=0.00
Extrude Length=0.00
Extrude Pitch Max=0.00
Extrude Heading Max=0.00

[Emitter.1]
Lifetime=0.00, 0.00
Delay=0.00, 0.25
Bounce=0.00
No Interpolate=1
Rate=0.40, 0.40
X Emitter Velocity=0.00, 0.00
Y Emitter Velocity=0.00, 0.00
Z Emitter Velocity=0.00, 0.00
Drag=0.00, 0.00
X Particle Velocity=0.00, 0.00
Y Particle Velocity=0.00, 0.00
Z Particle Velocity=0.00, 0.00
X Rotation=0.00, 0.00
Y Rotation=0.00, 0.00
Z Rotation=0.00, 0.00
X Offset=0.00, 0.00
Y Offset=0.00, 0.00
Z Offset=0.00, 0.00
Pitch=0.00, 0.00
Bank=0.00, 0.00
Heading=0.00, 0.00

[Particle.1]
Lifetime=0.01, 0.01
Type=19
X Scale=0.10, 0.10
Y Scale=0.10, 0.10
Z Scale=0.00, 0.00
X Scale Rate=0.00, 0.00
Y Scale Rate=0.00, 0.00
Z Scale Rate=0.00, 0.00
Drag=0.00, 0.00
Color Rate=0.00, 0.00
X Offset=0.00, 0.00
Y Offset=0.00, 0.00
Z Offset=0.00, 0.00
Fade In=0.00, 0.00
Fade Out=0.00, 0.00
Rotation=0.00, 0.00
Static=1
Face=1, 1, 1

[ParticleAttributes.1]
Blend Mode=2
Texture=fx_2.bmp
Bounce=0.00
Color Start=200, 200, 255, 255
Color End=200, 200, 255, 0
Jitter Distance=0.00
Jitter Time=0.00
uv1=0.00, 0.00
uv2=0.50, 0.50
X Scale Goal=0.00
Y Scale Goal=0.00
Z Scale Goal=0.00
Extrude Length=0.00
Extrude Pitch Max=0.00
Extrude Heading Max=0.00

[Emitter.2]
Lifetime=0.00, 0.00
Delay=0.20, 0.45
Bounce=0.00
No Interpolate=1
Rate=0.40, 0.40
X Emitter Velocity=0.00, 0.00
Y Emitter Velocity=0.00, 0.00
Z Emitter Velocity=0.00, 0.00
Drag=0.00, 0.00
X Particle Velocity=0.00, 0.00
Y Particle Velocity=0.00, 0.00
Z Particle Velocity=0.00, 0.00
X Rotation=0.00, 0.00
Y Rotation=0.00, 0.00
Z Rotation=0.00, 0.00
X Offset=0.00, 0.00
Y Offset=0.00, 0.00
Z Offset=0.00, 0.00
Pitch=0.00, 0.00
Bank=0.00, 0.00
Heading=0.00, 0.00

[Particle.2]
Lifetime=0.01, 0.01
Type=19
X Scale=0.50, 0.50
Y Scale=0.50, 0.50
Z Scale=0.00, 0.00
X Scale Rate=0.00, 0.00
Y Scale Rate=0.00, 0.00
Z Scale Rate=0.00, 0.00
Drag=0.00, 0.00
Color Rate=0.00, 0.00
X Offset=0.00, 0.00
Y Offset=0.00, 0.00
Z Offset=0.00, 0.00
Fade In=0.00, 0.00
Fade Out=0.00, 0.00
Rotation=0.00, 0.00
Static=1
Face=1, 1, 1

[ParticleAttributes.2]
Blend Mode=2
Texture=fx_2.bmp
Bounce=0.00
Color Start=100, 100, 150, 200
Color End=100, 100, 150, 0
Jitter Distance=0.00
Jitter Time=0.00
uv1=0.00, 0.00
uv2=0.50, 0.50
X Scale Goal=0.00
Y Scale Goal=0.00
Z Scale Goal=0.00
Extrude Length=0.00
Extrude Pitch Max=0.00
Extrude Heading Max=0.00

[Emitter.3]
Lifetime=0.00, 0.00
Delay=0.20, 0.45
Bounce=0.00
No Interpolate=1
Rate=0.40, 0.40
X Emitter Velocity=0.00, 0.00
Y Emitter Velocity=0.00, 0.00
Z Emitter Velocity=0.00, 0.00
Drag=0.00, 0.00
X Particle Velocity=0.00, 0.00
Y Particle Velocity=0.00, 0.00
Z Particle Velocity=0.00, 0.00
X Rotation=0.00, 0.00
Y Rotation=0.00, 0.00
Z Rotation=0.00, 0.00
X Offset=0.00, 0.00
Y Offset=0.00, 0.00
Z Offset=0.00, 0.00
Pitch=0.00, 0.00
Bank=0.00, 0.00
Heading=0.00, 0.00

[Particle.3]
Lifetime=0.01, 0.01
Type=19
X Scale=0.10, 0.10
Y Scale=0.10, 0.10
Z Scale=0.00, 0.00
X Scale Rate=0.00, 0.00
Y Scale Rate=0.00, 0.00
Z Scale Rate=0.00, 0.00
Drag=0.00, 0.00
Color Rate=0.00, 0.00
X Offset=0.00, 0.00
Y Offset=0.00, 0.00
Z Offset=0.00, 0.00
Fade In=0.00, 0.00
Fade Out=0.00, 0.00
Rotation=0.00, 0.00
Static=1
Face=1, 1, 1

[ParticleAttributes.3]
Blend Mode=2
Texture=fx_2.bmp
Bounce=0.00
Color Start=200, 200, 255, 255
Color End=200, 200, 255, 0
Jitter Distance=0.00
Jitter Time=0.00
uv1=0.00, 0.00
uv2=0.50, 0.50
X Scale Goal=0.00
Y Scale Goal=0.00
Z Scale Goal=0.00
Extrude Length=0.00
Extrude Pitch Max=0.00
Extrude Heading Max=0.00

Back up the old file, copy and paste the code above into an empty text file, save as fx_strobe.fx, move it into FSX\Effects, done.


[Library Effect]
Lifetime=5
Version=2.00
Radius=-1
Priority=0

[Properties]

[Emitter.0]
Lifetime=0.00, 0.00
Delay=0.00, 0.25
Bounce=0.00
No Interpolate=1
Rate=0.40, 0.40
X Emitter Velocity=0.00, 0.00
Y Emitter Velocity=0.00, 0.00
Z Emitter Velocity=0.00, 0.00
Drag=0.00, 0.00
X Particle Velocity=0.00, 0.00
Y Particle Velocity=0.00, 0.00
Z Particle Velocity=0.00, 0.00
X Rotation=0.00, 0.00
Y Rotation=0.00, 0.00
Z Rotation=0.00, 0.00
X Offset=0.00, 0.00
Y Offset=0.00, 0.00
Z Offset=0.00, 0.00
Pitch=0.00, 0.00
Bank=0.00, 0.00
Heading=0.00, 0.00

[Particle.0]
Lifetime=0.01, 0.01
Type=19
X Scale=2.00, 2.00
Y Scale=2.00, 2.00
Z Scale=0.00, 0.00
X Scale Rate=0.00, 0.00
Y Scale Rate=0.00, 0.00
Z Scale Rate=0.00, 0.00
Drag=0.00, 0.00
Color Rate=0.00, 0.00
X Offset=0.00, 0.00
Y Offset=0.00, 0.00
Z Offset=0.00, 0.00
Fade In=0.00, 0.00
Fade Out=0.00, 0.00
Rotation=0.00, 0.00
Static=1
Face=1, 1, 1

[ParticleAttributes.0]
Blend Mode=2
Texture=fx_2.bmp
Bounce=0.00
Color Start=100, 100, 150, 200
Color End=100, 100, 150, 0
Jitter Distance=0.00
Jitter Time=0.00
uv1=0.00, 0.00
uv2=0.50, 0.50
X Scale Goal=0.00
Y Scale Goal=0.00
Z Scale Goal=0.00
Extrude Length=0.00
Extrude Pitch Max=0.00
Extrude Heading Max=0.00

[Emitter.1]
Lifetime=0.00, 0.00
Delay=0.00, 0.25
Bounce=0.00
No Interpolate=1
Rate=0.40, 0.40
X Emitter Velocity=0.00, 0.00
Y Emitter Velocity=0.00, 0.00
Z Emitter Velocity=0.00, 0.00
Drag=0.00, 0.00
X Particle Velocity=0.00, 0.00
Y Particle Velocity=0.00, 0.00
Z Particle Velocity=0.00, 0.00
X Rotation=0.00, 0.00
Y Rotation=0.00, 0.00
Z Rotation=0.00, 0.00
X Offset=0.00, 0.00
Y Offset=0.00, 0.00
Z Offset=0.00, 0.00
Pitch=0.00, 0.00
Bank=0.00, 0.00
Heading=0.00, 0.00

[Particle.1]
Lifetime=0.01, 0.01
Type=19
X Scale=0.50, 0.50
Y Scale=0.50, 0.50
Z Scale=0.00, 0.00
X Scale Rate=0.00, 0.00
Y Scale Rate=0.00, 0.00
Z Scale Rate=0.00, 0.00
Drag=0.00, 0.00
Color Rate=0.00, 0.00
X Offset=0.00, 0.00
Y Offset=0.00, 0.00
Z Offset=0.00, 0.00
Fade In=0.00, 0.00
Fade Out=0.00, 0.00
Rotation=0.00, 0.00
Static=1
Face=1, 1, 1

[ParticleAttributes.1]
Blend Mode=2
Texture=fx_2.bmp
Bounce=0.00
Color Start=200, 200, 255, 255
Color End=200, 200, 255, 0
Jitter Distance=0.00
Jitter Time=0.00
uv1=0.00, 0.00
uv2=0.50, 0.50
X Scale Goal=0.00
Y Scale Goal=0.00
Z Scale Goal=0.00
Extrude Length=0.00
Extrude Pitch Max=0.00
Extrude Heading Max=0.00

[Emitter.2]
Lifetime=0.00, 0.00
Delay=0.20, 0.45
Bounce=0.00
No Interpolate=1
Rate=0.40, 0.40
X Emitter Velocity=0.00, 0.00
Y Emitter Velocity=0.00, 0.00
Z Emitter Velocity=0.00, 0.00
Drag=0.00, 0.00
X Particle Velocity=0.00, 0.00
Y Particle Velocity=0.00, 0.00
Z Particle Velocity=0.00, 0.00
X Rotation=0.00, 0.00
Y Rotation=0.00, 0.00
Z Rotation=0.00, 0.00
X Offset=0.00, 0.00
Y Offset=0.00, 0.00
Z Offset=0.00, 0.00
Pitch=0.00, 0.00
Bank=0.00, 0.00
Heading=0.00, 0.00

[Particle.2]
Lifetime=0.01, 0.01
Type=19
X Scale=2.00, 2.00
Y Scale=2.00, 2.00
Z Scale=0.00, 0.00
X Scale Rate=0.00, 0.00
Y Scale Rate=0.00, 0.00
Z Scale Rate=0.00, 0.00
Drag=0.00, 0.00
Color Rate=0.00, 0.00
X Offset=0.00, 0.00
Y Offset=0.00, 0.00
Z Offset=0.00, 0.00
Fade In=0.00, 0.00
Fade Out=0.00, 0.00
Rotation=0.00, 0.00
Static=1
Face=1, 1, 1

[ParticleAttributes.2]
Blend Mode=2
Texture=fx_2.bmp
Bounce=0.00
Color Start=100, 100, 150, 200
Color End=100, 100, 150, 0
Jitter Distance=0.00
Jitter Time=0.00
uv1=0.00, 0.00
uv2=0.50, 0.50
X Scale Goal=0.00
Y Scale Goal=0.00
Z Scale Goal=0.00
Extrude Length=0.00
Extrude Pitch Max=0.00
Extrude Heading Max=0.00

[Emitter.3]
Lifetime=0.00, 0.00
Delay=0.20, 0.45
Bounce=0.00
No Interpolate=1
Rate=0.40, 0.40
X Emitter Velocity=0.00, 0.00
Y Emitter Velocity=0.00, 0.00
Z Emitter Velocity=0.00, 0.00
Drag=0.00, 0.00
X Particle Velocity=0.00, 0.00
Y Particle Velocity=0.00, 0.00
Z Particle Velocity=0.00, 0.00
X Rotation=0.00, 0.00
Y Rotation=0.00, 0.00
Z Rotation=0.00, 0.00
X Offset=0.00, 0.00
Y Offset=0.00, 0.00
Z Offset=0.00, 0.00
Pitch=0.00, 0.00
Bank=0.00, 0.00
Heading=0.00, 0.00

[Particle.3]
Lifetime=0.01, 0.01
Type=19
X Scale=0.50, 0.50
Y Scale=0.50, 0.50
Z Scale=0.00, 0.00
X Scale Rate=0.00, 0.00
Y Scale Rate=0.00, 0.00
Z Scale Rate=0.00, 0.00
Drag=0.00, 0.00
Color Rate=0.00, 0.00
X Offset=0.00, 0.00
Y Offset=0.00, 0.00
Z Offset=0.00, 0.00
Fade In=0.00, 0.00
Fade Out=0.00, 0.00
Rotation=0.00, 0.00
Static=1
Face=1, 1, 1

[ParticleAttributes.3]
Blend Mode=2
Texture=fx_2.bmp
Bounce=0.00
Color Start=200, 200, 255, 255
Color End=200, 200, 255, 0
Jitter Distance=0.00
Jitter Time=0.00
uv1=0.00, 0.00
uv2=0.50, 0.50
X Scale Goal=0.00
Y Scale Goal=0.00
Z Scale Goal=0.00
Extrude Length=0.00
Extrude Pitch Max=0.00
Extrude Heading Max=0.00


The procedure is as above, but this time name it fx_strobeh.fx and replace the original file with it.

[Emitter.x]
...
Delay=0.20, 0.45 <- This controls delays between the port and starboard strobe.
...

n4gix
July 16th, 2011, 09:54
Delay=0.20, 0.45 <- This controls delays between the port and starboard strobe.
...

Those two values are actually min/max timing values. Each time is randomized to some number at or between the min/max limits.

This achieves the end affect of the "flashing" being asynchronous, since there's little chance that the random returned value will be the same between each "flash."

As a matter of fact, the same "strobe" (say the port side) won't even flash at the exact same interval. Which is why if the numbers are just a bit too wide, it is possible for what appears to be a "double-flash" to randomly occur followed by a rather long pause before the next flash.

What is fun though is to create custom strobes that not only are asynchronous, but will flash in a predictable/controllable sequence: blink : blink-blink : blink : blink-blink... et cetera.

Bjoern
July 16th, 2011, 11:20
Those two values are actually min/max timing values. Each time is randomized to some number at or between the min/max limits.

This achieves the end affect of the "flashing" being asynchronous, since there's little chance that the random returned value will be the same between each "flash."

As a matter of fact, the same "strobe" (say the port side) won't even flash at the exact same interval. Which is why if the numbers are just a bit too wide, it is possible for what appears to be a "double-flash" to randomly occur followed by a rather long pause before the next flash.

Well, I've just fired FSX up and saw strobes not blinking in sequence anymore, so I've posted it.

I guess a quarter of a second shouldn't make much of a difference, should it?

Your post also implies that it might be best to actually have two different .fx files for each side. Which would only apply to non-"attachpointed" effects...


What is fun though is to create custom strobes that not only are asynchronous, but will flash in a predictable/controllable sequence: blink : blink-blink : blink : blink-blink... et cetera.

Or white/green/yellow/pink strobes in the shape of rainbows, etc...

n4gix
July 17th, 2011, 08:47
Your post also implies that it might be best to actually have two different .fx files for each side. Which would only apply to non-"attachpointed" effects...


No, that's not necessary at all. Each time it's called a unique instance of the .fx is loaded, so each instance will have its own randomizing factor calculated.

This is easily demonstrated by simply invoking two instances of the same .fx file next to each other. You will observe that they are not synchronized, although there will of course be some occasions when the randomized timing will be so close as to be darn near synchronous... :icon_lol:

Bjoern
July 17th, 2011, 12:10
No, that's not necessary at all. Each time it's called a unique instance of the .fx is loaded, so each instance will have its own randomizing factor calculated.

This is easily demonstrated by simply invoking two instances of the same .fx file next to each other. You will observe that they are not synchronized, although there will of course be some occasions when the randomized timing will be so close as to be darn near synchronous... :icon_lol:

Mh, okay.

The .fx system is buggy anyways, not sure if it's worth digging any deeper into it.