Based upon the feedback, I would like to add some comments.
Firstly some general contextual comments -
The Steam locomotive model in OR has two aspects to it.
i) the steam physics (ie how it performs against real world performance)
ii) look and feel - ie how it looks compared to the real work
These two elements don't always align nicely, for example the particle drawer does not accept
direct steam quantities from the physics, and therefore doesn't provide the expected look and feel. Thus each of the above components currently require separate calculations.
To achieve a "perfect" simulation of every steam locomotive type would require a huge amount of investigation of their individual physics and relevant formula, and considerable coding variations. Thus I believe that we should be aiming to get the "right" look and feel, within an acceptable level of performance, for the MAJORITY of locomotives. Hence not all locomotives will be able to be modeled accurately.
Thus there will always need to be a balance between what is included, and how it is included, etc.
Based upon the above, I have attached a further patch with some further refinements. Hopefully some of these refinements address some of the suggestions provided.
Based upon the the principle that steam effects should be included for those elements that occur on the majority of locomotives (eg steam whistle), and that they should be clearly visible (eg steam cylinders), otherwise they don't warrant the effort to try and code them, the following effects are now supported:
- Steam cylinders
- Stack
- Compressor
- Generator
- Safety valves
- Whistle
- Injectors
NB: The drain pipe has been disabled in this version of the patch.
In this patch I have tried to model the fact that at speed a lot of the steam effects will dissipate very quickly and will not be readily visible. Thus as the locomotive speeds up some of the steam effects will "disappear", and only reappear as the locomotive slows down.
In regard to some of the comments about user control of the effects, as already alluded to, if a steam effect is not included then it will not be shown. Thus for example in no whistle is defined in the steam effects then no whistle will show when the locomotive is displayed.
In this patch if the generator steam effect is omitted then the generator will not operate ( a linkage has been made to the steam physics). Conversely, if it is defined then it will always be on.
Traindude, on 19 February 2016 - 10:15 PM, said:
There are plenty of other exhaust outlets and vents described in the schematics in the first 25 pages of the Model Railroader Steam Locomotive Cyclopedia--air pumps/compressors, feedwater pumps, mechanical stoker engines, booster engines, too many to list (I even have a CD of ICS' Steam Textbooks if you're interested).
I would still be interested in looking at some of this information. Is it possible to scan a few sample pages, and PM them to me?
Thanks
EDIT: Working example locomotive
here.