-
Notifications
You must be signed in to change notification settings - Fork 53
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WIP: MSTS consist / vehicle parser #684
base: master
Are you sure you want to change the base?
Conversation
Have picked out the fixes to the format parser, through piped brake type and the renderer tweaks and rebased this back onto the head of master. |
Took a little more bashing, but we can now load a MSTS consist into the main game. Large detailed consists are rather slower than I'd like though, although this is poly-count related as opposed to anything else. We still need to find some speedups in the GL3 renderer. Further Thoughts:
|
A little more work done. Cabviews now load, but need a lot of components integrating. Camera restriction also appears to be broken. If wheelspin is disabled, we can actually move our trains. No sound, brakes or power notch simulation at the minute mind, so not exactly useful. |
Animation changes really want pulling to master when completed & working- This is a common method of doing things. Haven't tested performance yet, perhaps this would be better in shader when completed?! Unsure how complete the rest of this is at the minute.... |
API changes pulled out and merged into master, just to try and keep things in better sync. |
This branch will now load the new hierarchy objects. However, it doesn't get them into train exteriors, as the CarSection is tied to the current animated object. Still fiddling, heavy WIP. |
5f23a6d
to
a53fd14
Compare
If this were to create, and I were able to create my own MSTS object, would it be possible to move the rod of a SL like this? bigboy.mp4 |
Abolutely. If we add an appropriate controller (for valve gear, this would primarily be the wheel radius), then the animations actually work correctly in the current build. (It'd be reasonably simple to add the wheel radii to train.xml so that a MSTS shape had working wheel animations, but the issue is that wheels can be attached to parent objects and stuff, which isn't yet really there) Unfortunately though, we don't yet have many of the actual controllers implemented in-game. MSTS has a reasonably readable textual format, and I'm basically currently using it to start to implement these missing systems, as a known working prototype. |
c8354a0
to
b3312df
Compare
ac8b68d
to
d701478
Compare
7dc4b0b
to
9eac9fb
Compare
Only does RPM and fuel usage for the minute, no physics effects
Change: Improve MSTS vehicle search tree Change: Pull out brake system enums, implement flipped cars Change: Work on brake systems in MSTS parser Change: Work on cabviews in MSTS parser Change: Internal work to get closer to main program loading Change: More internal work Change: Get in-game loading working right Change: Get the MSTS train parser loading a description Change: Cleaning... Change: Work on cabview loading Change: Work on getting the thing moving Change: Partial implementation of some MSTS bits Rebase fixing Minor fixes for missing properties Start wheel animation loading Link unlinked animations to base wheels Camera restriction should be turned on for CVF Minor CVF bits Don't throw exceptions in CVF Start implementing SMS parser Separate the handle files into subdirectories WIP Fix allowed empty blocks in MSTS parser Start parsing / validating some more SMS bits More work on SMS parser Handle incorrect number of triggers in block More WIP Improve wagon type parsing Add some missing cab component types More WIP Validate H/W/L of read wagon More WIP Change acceleration calculations to account for uncoupling possibility Handle current method of MSTS acceleration curve output Parse basic handle sounds Alter deceleration curves Use averages pressure distribution for the minute Start basic implementation of some more bits Hook in MSTS wipers Only cab control works for the minute Improve wheel radius reading from ENG file Change: Generate default rotations for MSTS wheels if not specified MSTS does this by default (yuck) New: Implement moving bogies for MSTS models
Only panel simulation for headlights at the minute, need to think about lighting cones and stuff....
Heavy work in progress here, highly likely to explode unexpectedly.....
n.b. Contains the changes from #167 although not hooked up to anything yet, should work when this is done.
This will load (some) MSTS consists to a working visual train.
Not even thought about physics and stuff yet.
The new renderer is absolutely required for these to get a sensible framerate, and even this is still a little slow. We need to detect somehow if the proportion of texture in use for any given face uses alpha.
Unfortunately, the inbuilt consist / vehicle parser seems to have been very forgiving of errors in the textual block, which means that I'm still very much rehacking the base parser as I go along.....
Proabably want to cherry-pick the parser changes into the mainline branch.
30-odd van train from the 3DTS Cambrian route.
Class 47 & TEA tankers from Making Tracks' Network South East route.