Automatic curve squeal sound
#11
Posted 04 February 2017 - 01:07 PM
#12
Posted 06 February 2017 - 07:30 AM
Here is the .dll/.exe pack to be replaced in x.3782
AutoCurveSqueal1.zip (747.74K)
Number of downloads: 710
I have also provided a test sound set, including the internal and external .sms files for auto switch sound, auto curve squeal sound, auto curve squeal + switch sound.
The test sound set can be downloaded from here
http://www.interazio...moAutoSound.zip
Read the Readme file included in the .zip for installation and copyright.
To enable a route to play these sounds three lines must be added at the end of the route's ttype.dat file, as in this example (number at start of file has been increased by 3).
SIMISA@@@@@@@@@@JINX0t1t______ 13 TrackType ( "Default" "egos0In.sms" "egos0Ex.sms" ) TrackType ( "Concrete Supported" "egos1In.sms" "egos1Ex.sms" ) TrackType ( "Wood Supported" "egos2In.sms" "egos2Ex.sms" ) TrackType ( "Cadenza Tunnel" "egos3In.sms" "egos3Ex.sms" ) TrackType ( "Steel Bridge" "egos4In.sms" "egos4Ex.sms" ) TrackType ( "Girder Bridge" "egos5In.sms" "egos5Ex.sms" ) TrackType ( "Under Bridge" "egos6In.sms" "egos6Ex.sms" ) TrackType ( "Default" "egos0In.sms" "egos0Ex.sms" ) TrackType ( "Crossing Platform" "egos8In.sms" "egos8Ex.sms" ) TrackType ( "Wooden Bridge" "egos9In.sms" "egos9Ex.sms" ) TrackType ( "Switch" "DemoAutoSound/switchtrackin.sms" "DemoAutoSound/switchtrackex.sms" ) TrackType ( "Squeal Curve" "DemoAutoSound/curvesquealtrackin.sms" "DemoAutoSound/curvesquealtrackex.sms" ) TrackType ( "Squeal Switch" "DemoAutoSound/curveswitchtrackin.sms" "DemoAutoSound/curveswitchtrackex.sms" )
Moreover three lines must be inserted in the route's .trk include file (to be located as always in an Openrails subfolder within the route's folder, as in following example (first line void!)
include ( "../Riviera di levante.trk" ) ORTSDefaultTurntableSMS ( turntable.sms ) ORTSSwitchSMSNumber ( 10 ) ORTSCurveSMSNumber ( 11 ) ORTSCurveSwitchSMSNumber ( 12 )
The curve squeal is active in curves with a radius of less than 350 meters for freight cars and of less than 301 meters for any other trainset.
It can be discussed wheter these two parameters should be configurable: on a per-route basis or on a per-trainset basis? Second option seems to me more correct.
The sound files are intended as demo items. So, if you don't like them, you can use your own creations or creations by third parties.
7/2/17: .exe/.dll pack upgraded against a crash case
#13
Posted 06 February 2017 - 02:58 PM
Also big thanks for a very good sound set. It needs some tuning but it is great.
Quote
It can be discussed wheter these two parameters should be configurable: on a per-route basis or on a per-trainset basis? Second option seems to me more correct.
Shouldn't be curve force (friction) controlled? You might want to consider. We have curve resistance calculation already implemented. But I can guess that it wouldn't be easy to code if possible at all.
What is more, any limiter you choose should have a possibility to switch off because we can control squeal sound using curve force variable sound trigger in track .sms file (can we?)
#14
Posted 06 February 2017 - 08:04 PM
Csantucci, on 06 February 2017 - 07:30 AM, said:
It can be discussed wheter these two parameters should be configurable: on a per-route basis or on a per-trainset basis? Second option seems to me more correct.
The sound files are intended as demo items. So, if you don't like them, you can use your own creations or creations by third parties.
istvanek, on 06 February 2017 - 02:58 PM, said:
What is more, any limiter you choose should have a possibility to switch off because we can control squeal sound using curve force variable sound trigger in track .sms file (can we?)
I believe that the best way to combine these two desires is to calculate the Angle of Attack (AoA) on a per train basis. AoA forms a prerequisite for wheel squeal.
The current OR curve resistance code allows estimated defaults for wheelbases, and users can put actual wheelbase values in WAG files to override the default values with actual wheelbase values.
Referencing the article that I posted above,
AoA = Rigid Wheelbase / Curve Radius
Typically it appears that wheel squeal is more predominant when the AoA is > then a threshold value. The AoA threshold value should be set as a default value, and then be able to overridden by the user as required in the route design. This threshold value seems to vary according to various authors, but a default figure of 10mRad might be a good starting point, and adjusted if desired by the route builder.
#15
Posted 06 February 2017 - 11:48 PM
I don't see why the threshold should be set at a per-train basis. A train can have trainsets with very different AoAs, if I understood well Peter's words.
#16
Posted 07 February 2017 - 12:17 AM
Csantucci, on 06 February 2017 - 11:48 PM, said:
Perhaps my comments were confusing.
I believe that the threshold value should be set against each route (ie within the relevant TRK file).
Each train may/will, as you suggest, have a different AoA depending upon the wheelbases of its stock. Thus some trains will be more prone to wheel squeal.
Is this what you are thinking?
#17
Posted 07 February 2017 - 11:38 AM
#18
Posted 07 February 2017 - 01:49 PM
steamer_ctn, on 04 February 2017 - 02:49 AM, said:
IMO the really interesting finding in the above document it is that much more common for wheel-rail squeal to occur in specific classes of cars than cars selected at random. This suggests an ideal design would be a combination of rules to select particular track -- such as <=300m radius for example, in combination with user assigned parameter values in .wags that share the same (untectured) mesh.
Because the cause is often in the car class and not simply rail radius perhaps the ideal answer would be to add the necessary data to various .wag and .eng files (not all), perhaps something similar to this:
Squeal (
AngleOfAttack ( real ) <---- this threshold provides for both wheel base size and track raduis.
SquealSound (...path\soundfile.file extension )
ProbabilityOfSqueal ( real ) <---- something less than 1.0 creates a random effect.
ProbabilityOfVolumeVariation ( real ) <---- something less than 1.0 creates a random effect.
SquealVolumeVariation ( real ) <---- plus/minus some fixed value creates a random effect.
)
WRT all of the other suggestions, absent other information, it seem reasonable to think the sounds are location specific, nothing at all to do w/ which car is passing.
#19
Posted 08 February 2017 - 07:32 AM
Christopher
#20
Posted 10 February 2017 - 12:00 AM
Manual updated in x.3789.