@@ -2477,6 +2477,29 @@ the one shown below::
24772477 -1.0485 1.0 2.8
24782478 -1 0 0
24792479 0.1
2480+
2481+ Comment ( ORTS parameters come after MSTS data! )
2482+ ORTSPositionVariation ( 0m 0m 0m )
2483+ ORTSInitialVelocityVariation ( 0.1 0.1 0.1 )
2484+ ORTSEmissionSpeedLimit ( 150m/s )
2485+ ORTSFinalVelocity ( 0 1m/s 0 )
2486+ ORTSFinalVelocityVariation ( 0.75m/s 0.75m/s 0.75m/s )
2487+
2488+ ORTSLifespanMultiplier ( 1.0 )
2489+ ORTSLifespanVariation ( 0.5 )
2490+ ORTSMomentumMultiplier ( 1.0 )
2491+ ORTSMomentumVariation ( 0.1 )
2492+
2493+ ORTSInititalExpansion ( 1.0 )
2494+ ORTSExpansionSpeed ( 4.0 )
2495+ ORTSRotationVariation ( 0.25 )
2496+ ORTSWindMultiplier ( 1.0 )
2497+
2498+ ORTSPipeArea ( 0.03m^2 )
2499+ ORTSMaxParticles ( 2500 )
2500+ ORTSRateMultiplier ( 1.0 )
2501+ ORTSUseChaoticRandomization ( false )
2502+ ORTSShapeHierarchy ( "MAIN" )
24802503 )
24812504
24822505The code block consists of the following elements:
@@ -2487,6 +2510,161 @@ The code block consists of the following elements:
24872510- Effect direction of emission (given as a normal x, y and z)
24882511- Effect nozzle width (in metres)
24892512
2513+ .. index ::
2514+ single: ORTSPositionVariation
2515+ single: ORTSInitialVelocityVariation
2516+ single: ORTSEmissionSpeedLimit
2517+ single: ORTSFinalVelocity
2518+ single: ORTSFinalVelocityVariation
2519+ single: ORTSLifespanMultiplier
2520+ single: ORTSLifespanVariation
2521+ single: ORTSMomentumMultiplier
2522+ single: ORTSMomentumVariation
2523+ single: ORTSInititalExpansion
2524+ single: ORTSExpansionSpeed
2525+ single: ORTSRotationVariation
2526+ single: ORTSWindMultiplier
2527+ single: ORTSPipeArea
2528+ single: ORTSMaxParticles
2529+ single: ORTSRateMultiplier
2530+ single: ORTSUseChaoticRandomization
2531+ single: ORTSShapeHierarchy
2532+
2533+ After including these settings, additional *optional * parameters unique to OR can
2534+ be included to further customize effect emitters:
2535+
2536+ - ``ORTSPositionVariation ( x y z ) `` -- Specifies the amplitude of random variation
2537+ in the right/left, up/down, and front/back emission location of a particle (default units
2538+ are meters). Useful for non-circular exhaust ports, as it allows one particle emitter
2539+ to be used to spawn particles from an area, rather than a single point. Note that
2540+ ``ORTSPositionVariation ( 1m 0m 0m ) `` would allow particles to emit 1 meter right and
2541+ 1 meter left of the initial position, for a total variation of 2 meters. Similar is
2542+ true of all other parameters related to randomness, the total variation is double what's
2543+ specified. Feature is disabled by default.
2544+ - ``ORTSInitialVelocityVariation ( x y z ) `` -- Defines the randomization of initial particle
2545+ velocity in the right/left, up/down, and front/back directions, as a function of the
2546+ particle's initial speed (values are unitless). The default value is ( 0.1 0.1 0.1 ),
2547+ meaning the speed in each direction can be increased or decreased by 10% of the initial
2548+ particle speed. Larger values make the particle exhaust seem less directed and more diffuse.
2549+ - ``ORTSEmissionSpeedLimit ( v ) `` -- Some particle emitters are driven by the simulated flow
2550+ rate of exhaust, which has to make some assumptions about the pressure and volume of exhaust.
2551+ This can lead to unrealistically high speed particles being emitted, so a speed limit can be
2552+ set (default units are meters per second) to keep particle speed reasonable. This is not a hard
2553+ limit, it is gradually enforced as the simulation calculates higher and higher exhaust speed.
2554+ The limit is also applied before considering the emitter velocity factor, so actual exhaust speed
2555+ will vary depending on other settings.
2556+ By default, the limit is 150 meters per second, which will be suitable in most cases.
2557+ - ``ORTSFinalVelocity ( x y z ) `` -- Determines the final right/left, up/down, and front/back
2558+ velocity of particles after they have settled (default units of meters per second). The default
2559+ is 1 m/s directly upward, and can be changed to fine tune the appearance of the particle trail
2560+ produced. Note that wind velocity is added to this value afterward.
2561+ - ``ORTSFinalVelocityVariation ( x y z ) `` -- Unlike initial velocity variation, final velocity
2562+ variation determines the amplitude of random variation of final velocity in absolute terms
2563+ (default units of meters per second). The default setting is +/- 0.75 m/s in all directions, but
2564+ changing this can adjust the amount of and shape of particle trail spread. Larger variations
2565+ make for exhaust that seems more chaotic and diffuse.
2566+ - ``ORTSLifespanMultiplier ( x ) `` -- Multiplies the lifetime of particles emitted from this
2567+ emitter by the given (unitless) value. Particle lifetime varies depending on simulation
2568+ data, but if particles seem to last too long a value less than 1 can be entered here, or a
2569+ value greater than 1 entered if particles don't seem to last long enough. The default value
2570+ is 1, producing particles that last as long as the simulation specifies.
2571+ - ``ORTSLifespanVariation ( x ) `` -- Sets the random variation of the particle lifetime multiplier
2572+ (unitless). Values greater than 1 can cause particles to randomly generate with a lifetime of
2573+ 0 seconds, which will prevent those particles from being rendered.
2574+ The default is +/- 0.5 times the lifespan.
2575+ - ``ORTSMomentumMultiplier ( x ) `` -- Changes how long it takes for a particle to transition from
2576+ its initial velocity to its final velocity (unitless). Values above 1 make particles
2577+ have more momentum and move more smoothly, though also travel further from the emitter point before
2578+ being caught by the wind. Values below 1 give more sudden deceleration and prevent particles from
2579+ travelling very far before decelerating to their final speed.
2580+ The default setting is 1x.
2581+ - ``ORTSMomentumVariation ( x ) `` -- Similar to ORTSLifespanVariation, gives the amplitude of
2582+ random variation in the momentum multiplier (unitless). Larger values increase the
2583+ final spread of particles, which works well in combination with ORTSFinalVelocityVariation.
2584+ The default setting is +/- 0.1x.
2585+ - ``ORTSInititalExpansion ( x ) `` -- When particles are emitted at high speed, they expand
2586+ substantially as the exhaust pressure equalizes with the surrounding air. The (unitless)
2587+ value given here multiplies the amount of expansion that occurs in this initial phase.
2588+ Entering 0 disables this component of particle expansion, any value greater than 0 progressively
2589+ increases the amount particles expand by. The default setting is 1.
2590+ - ``ORTSExpansionSpeed ( x ) `` -- Every particle expands in diameter at a constant rate the longer
2591+ since it was emitted, making exhaust seem more spread out as it mixes with the air. The
2592+ (unitless) value entered in this parameter specifies how much the size of a particle increases
2593+ every second, relative to the original particle size (ie: the nozzle width). The default value is 4.0,
2594+ meaning every particle will expand by 4x the original width for every second its in the air. Entering
2595+ 0 would disable expansion over time, and negative values would cause particles to shrink over time
2596+ (particles are not allowed to have a negative size, instead they disappear).
2597+ - ``ORTSRotationVariation ( x ) `` -- Particles rotate randomly to create some visual interest, this
2598+ parameter determines the max rotation speed (in radians per second) a particle is allowed to have,
2599+ either clockwise or counterclockwise. Higher speeds make for more chaotic looking effects. The
2600+ default setting allows for random rotation speeds between -0.25 and 0.25 radians per second.
2601+ - ``ORTSWindMultiplier ( x ) `` -- Affects how strongly wind changes the final velocity of
2602+ these particles (unitless). Values greater than 1 increase wind strength, values less than 1
2603+ decrease wind strength, with 0 completely disabling the wind effect from changing final velocity.
2604+ A value of 1 is used by default, such that the wind speed used by the simulation is used directly.
2605+ This can be adjusted to prevent particles that shouldn't be influenced by the wind (eg: cylinder
2606+ cocks close to ground level) from flying off in whatever direction the wind is going.
2607+ - ``ORTSPipeArea ( a ) `` -- Niche parameter to adjust the area of the exhaust pipe used by
2608+ the simulation (default units square feet). By default, the area is assumed to be a circle with
2609+ the same diameter as the exhaust particles. However, for non-circular exhausts this can be combined
2610+ with ORTSPositionVariation to give more believable results. Larger areas result in lower exhaust
2611+ speed without changing the number of particles emitted per second, which also allows this to
2612+ be used as a speed multiplier, though ORTSinitialVelocity is preferred for that purpose.
2613+ - ``ORTSMaxParticles ( n ) `` -- Override for the maximum number of particles this emitter should
2614+ have in the world simultaneously (unitless integer). The default value is 2500 particles, which works
2615+ in many cases but may not be appropriate in some unusual circumstances. The limit can be reduced
2616+ on less extreme particle emitters to reduce memory use, or can be increased for more extreme emitters
2617+ to prevent particles disappearing and/or the reduction in particle emission rate caused by reaching
2618+ the particle limit. Do NOT increase the limit if particles are already overlapping; it is often
2619+ better to simply reduce the number of particles emitted using ORTSRateMultiplier and/or other
2620+ parameters listed here.
2621+ - ``ORTSRateMultiplier ( x ) `` -- Multiplies the number of particles emitted per second by the given
2622+ value (unitless). Values less than 1 reduce the rate of particle emission, while values greater than
2623+ 1 increase the rate of particle emission. The particle rate is determined by the simulation, but may
2624+ not produce aesthetically pleasing results in some cases due to particles overlapping (emitted too
2625+ quickly) or spreading out (emitted too slowly), so some fine-tuning can be done using this parameter.
2626+ This is set to 1 by default, producing the exact number of particles estimated by the simulation.
2627+ - ``ORTSUseChaoticRandomization ( 0/1 ) `` -- Changes the randomization algorithm used for positions,
2628+ velocities, durations, and so on to be "chaotic" if given a true or 1 value. Default is false or 0,
2629+ giving "smooth" randomization. With the "chaotic" randomization algorithm, the random changes in
2630+ position/velocity/time are entirely random and do not depend on the random values generated for the
2631+ previous particle, resulting in sudden dramatic changes. In comparison, the default "smooth"
2632+ randomziation algorithm changes the random values by a small amount for each iteration. The "chaotic"
2633+ algorithm tends to make exhaust that is more spread out and discontinuous, which may be desireable in
2634+ some cases.
2635+ - ``ORTSShapeHierarchy ( MATRIXNAME ) `` -- Selects the sub object of the engine/wagon
2636+ shape the emitter should be attached to using the name of the sub object matrix.
2637+ The x, y, z location given earlier will then be measured relative to the sub object,
2638+ and the emitter will move as the sub object moves in real time.
2639+ Matrix names can be determined using shape viewing programs. If the given name
2640+ cannot be found, a warning is produced in the log and the emitter will be attached
2641+ to the main shape object. Similarly, if ``ORTSShapeHierarchy `` isn't defined, the emitter
2642+ will be attached to the main object, similar to the MSTS behavior.
2643+
2644+
2645+ .. index ::
2646+ single: ORTSPosition
2647+ single: ORTSInitialVelocity
2648+ single: ORTSParticleDiameter
2649+
2650+ Alternatively, the legacy MSTS data can be skipped entirely and replaced with
2651+ equivalent OR specific parameters. In this case, order of data entry does not
2652+ matter:
2653+
2654+ FXName (
2655+ ORTSPosition ( -1.0485m 1.0m 2.8m )
2656+ ORTSInitialVelocity ( -1 0 0 )
2657+ ORTSParticleDiameter ( 0.1m )
2658+ Comment ( Insert other ORTS parameters as desired, but skip MSTS data! )
2659+ )
2660+
2661+ - ``ORTSPosition ( x y z ) `` -- defines the width, height, length location of the emitter (in meters by default)
2662+ - ``ORTSInitialVelocity ( x y z ) `` -- defines the right, up, forward components of emission direction
2663+ (unitless, the particle speed is multiplied by this vector to determine the 3D velocity of particles.
2664+ Speed can be divided by inserting values less than 1, or multiplied by inserting values greater than 1.)
2665+ - And ``ORTSParticleDiameter ( d ) `` -- gives the nozzle width (in meters by default), which sets the initial
2666+ size of each particle
2667+
24902668Auxiliary Water Tenders
24912669'''''''''''''''''''''''
24922670
0 commit comments