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