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

Tracked vehicles not working correctly. #381

Closed
DarthCainRor opened this Issue Aug 12, 2015 · 14 comments

Comments

Projects
None yet
6 participants
@DarthCainRor

DarthCainRor commented Aug 12, 2015

It appears as if tracked vehicles that use rotators to move slidenodes around the rails, are slightly broken. From what I can see it looks like the submeshes attached to the rotator part are no longer smoothly moving the slidenodes along, causing the tracks to jerk in unrealistic manners.

Vehicles tested with:
http://www.rigsofrods.com/threads/115690-Hitachi-EX1200-5?p=1347026&viewfull=1#post1347026

http://www.rigsofrods.com/threads/112719-volvo-EC140C

And a private tracked vehicle I'm working on.

@Max98

This comment has been minimized.

Show comment
Hide comment
@Max98

Max98 Aug 12, 2015

Contributor

Can you try disabling Intra-Collision from RoRConfig->Advanced.

Contributor

Max98 commented Aug 12, 2015

Can you try disabling Intra-Collision from RoRConfig->Advanced.

@Max98 Max98 added the bug label Aug 12, 2015

@Max98 Max98 added this to the Post-Nextstable milestone Aug 12, 2015

@DarthCainRor

This comment has been minimized.

Show comment
Hide comment
@DarthCainRor

DarthCainRor Aug 12, 2015

That causes them to not work at all, as it needs to collide to move.

DarthCainRor commented Aug 12, 2015

That causes them to not work at all, as it needs to collide to move.

@Max98

This comment has been minimized.

Show comment
Hide comment
@Max98

Max98 Aug 12, 2015

Contributor

Are you sure that you disabled intra and not inter?

Contributor

Max98 commented Aug 12, 2015

Are you sure that you disabled intra and not inter?

@DarthCainRor

This comment has been minimized.

Show comment
Hide comment
@DarthCainRor

DarthCainRor Aug 12, 2015

Quite certain. The way tracks are designed they need intra vehicle collisions. It's how they work. Submeshes are attached to the rotator, which sit between slidenodes and push the nodes along the tracks.

DarthCainRor commented Aug 12, 2015

Quite certain. The way tracks are designed they need intra vehicle collisions. It's how they work. Submeshes are attached to the rotator, which sit between slidenodes and push the nodes along the tracks.

@DarthCainRor

This comment has been minimized.

Show comment
Hide comment
@DarthCainRor

DarthCainRor Aug 17, 2015

No further comments? :-/ I mean they're definitely not working correctly, and there is no error related to them in the log files. >.<

DarthCainRor commented Aug 17, 2015

No further comments? :-/ I mean they're definitely not working correctly, and there is no error related to them in the log files. >.<

@fidoj

This comment has been minimized.

Show comment
Hide comment
@fidoj

fidoj Aug 29, 2015

Contributor

the error seems to be at the looping part of the slide rails, some of the nodes jump at the intersection causing shaking

Contributor

fidoj commented Aug 29, 2015

the error seems to be at the looping part of the slide rails, some of the nodes jump at the intersection causing shaking

@Hiradur Hiradur modified the milestones: Post-Nextstable, 0.4.6.0 Oct 24, 2015

@DarthCainRor

This comment has been minimized.

Show comment
Hide comment
@DarthCainRor

DarthCainRor Jan 1, 2016

any word on this? been working on a few things with tracks, and it'd be nice if they actually worked :-/

DarthCainRor commented Jan 1, 2016

any word on this? been working on a few things with tracks, and it'd be nice if they actually worked :-/

@DarthCainRor

This comment has been minimized.

Show comment
Hide comment
@DarthCainRor

DarthCainRor Jun 13, 2016

I'm still not certain tracked vehicles are operating 100% the same as in .38. I would definitely say they are definitely better now than they were in .4.5, and are semi usuable, but they're still no where near as smooth moving as they used to be.

DarthCainRor commented Jun 13, 2016

I'm still not certain tracked vehicles are operating 100% the same as in .38. I would definitely say they are definitely better now than they were in .4.5, and are semi usuable, but they're still no where near as smooth moving as they used to be.

@only-a-ptr

This comment has been minimized.

Show comment
Hide comment
@only-a-ptr

only-a-ptr Jun 13, 2016

Member

@DarthCainRor I completely understand your point of view, but fixing this isn't a matter of reverting some particular changes or looking into some specific area of simulation. From a developer's standpoint, the only way to restore 0.38's behavior is to roll back all changes since that version and never touch the code again. Or, we may tune the simulation to get closer to what it was before, but to do that, we need a lot more detailed description of the problem. Please do some more testing and describe what exactly is disturbing you.

RoR's simulation code is a house of madness. There are calculations that we know are broken (normalization), but correcting them breaks some vehicles. The collision system is "optimized" for performance by actually skipping collision tests. And until quite recently, everything was subtly dependent on the framerate. However, modders of 0.38 era somehow tuned their vehicles to work well under these broken conditions. Devs today have 2 options: either carefully observe what the broken simulation does and maintain compatibility (= supper annoying work, we all went thru "why did I even touch it" experience) or try to straighten up the logic a bit and hope nothing breaks noticeably. @ulteq and @mikadou did some really big improvements to the simulation, both regarding performance and sanity, but as I explained, it probably had side effect.

Conclusion: we're doing what we can to keep vehicles working right, but we can't do it by not touching the code - we need to make changes and continuously test if we didn't break anything. Perhaps our test should include tracked vehicles more - what should we use? What should we concentrate at? We need more input from you.

Member

only-a-ptr commented Jun 13, 2016

@DarthCainRor I completely understand your point of view, but fixing this isn't a matter of reverting some particular changes or looking into some specific area of simulation. From a developer's standpoint, the only way to restore 0.38's behavior is to roll back all changes since that version and never touch the code again. Or, we may tune the simulation to get closer to what it was before, but to do that, we need a lot more detailed description of the problem. Please do some more testing and describe what exactly is disturbing you.

RoR's simulation code is a house of madness. There are calculations that we know are broken (normalization), but correcting them breaks some vehicles. The collision system is "optimized" for performance by actually skipping collision tests. And until quite recently, everything was subtly dependent on the framerate. However, modders of 0.38 era somehow tuned their vehicles to work well under these broken conditions. Devs today have 2 options: either carefully observe what the broken simulation does and maintain compatibility (= supper annoying work, we all went thru "why did I even touch it" experience) or try to straighten up the logic a bit and hope nothing breaks noticeably. @ulteq and @mikadou did some really big improvements to the simulation, both regarding performance and sanity, but as I explained, it probably had side effect.

Conclusion: we're doing what we can to keep vehicles working right, but we can't do it by not touching the code - we need to make changes and continuously test if we didn't break anything. Perhaps our test should include tracked vehicles more - what should we use? What should we concentrate at? We need more input from you.

@only-a-ptr only-a-ptr reopened this Jun 13, 2016

@DarthCainRor

This comment has been minimized.

Show comment
Hide comment
@DarthCainRor

DarthCainRor Jun 13, 2016

I don't believe I ever stated to revert the code and go back or to not even touch the code at all. I was just adding it's still doing the same thing as when I reported this bug, only it's not as bad as it used to be. Tracked vehicles are semi usable, but they still suffer from the jolting and shuttering I previously reported, because the rotator still seems to be skipping some of the contacter nodes along the slide rails. I only didn't notice this sooner because I don't really "play" RoR, except when I'm taking pictures, or working on one of my mods, of which I recently tried working on my tracked loader/dozer again. The two mods I originally linked are still viable options to use

DarthCainRor commented Jun 13, 2016

I don't believe I ever stated to revert the code and go back or to not even touch the code at all. I was just adding it's still doing the same thing as when I reported this bug, only it's not as bad as it used to be. Tracked vehicles are semi usable, but they still suffer from the jolting and shuttering I previously reported, because the rotator still seems to be skipping some of the contacter nodes along the slide rails. I only didn't notice this sooner because I don't really "play" RoR, except when I'm taking pictures, or working on one of my mods, of which I recently tried working on my tracked loader/dozer again. The two mods I originally linked are still viable options to use

@Hiradur

This comment has been minimized.

Show comment
Hide comment
@Hiradur

Hiradur Jun 13, 2016

Contributor

I only didn't notice this sooner because I don't really "play" RoR

Welcome to the club, I think this is something many developers have in common. We (me at least) are noobs at the game which is why we need pointers by experienced players at what to look at.

Contributor

Hiradur commented Jun 13, 2016

I only didn't notice this sooner because I don't really "play" RoR

Welcome to the club, I think this is something many developers have in common. We (me at least) are noobs at the game which is why we need pointers by experienced players at what to look at.

@only-a-ptr

This comment has been minimized.

Show comment
Hide comment
@only-a-ptr

only-a-ptr Jun 14, 2016

Member

We (me at least) are noobs at the game which is why we need pointers by experienced players at what to look at.

My case exactly. My initial idea about RoR was "hey, this could be fun to drive around, if it just worked a little better and had some meaningful tools". So I started coding.

I don't believe I ever stated to revert the code and go back or to not even touch the code at all. I was just adding

True, I was assuming too much. Anyway, thanks for the extra clarification.

Member

only-a-ptr commented Jun 14, 2016

We (me at least) are noobs at the game which is why we need pointers by experienced players at what to look at.

My case exactly. My initial idea about RoR was "hey, this could be fun to drive around, if it just worked a little better and had some meaningful tools". So I started coding.

I don't believe I ever stated to revert the code and go back or to not even touch the code at all. I was just adding

True, I was assuming too much. Anyway, thanks for the extra clarification.

@ulteq

This comment has been minimized.

Show comment
Hide comment
@ulteq

ulteq Sep 10, 2016

Contributor

the rotator still seems to be skipping some of the contacter nodes along the slide rails

It will be very hard to find the reason for it without knowing which commit introduced the bug.

Contributor

ulteq commented Sep 10, 2016

the rotator still seems to be skipping some of the contacter nodes along the slide rails

It will be very hard to find the reason for it without knowing which commit introduced the bug.

@DarthCainRor

This comment has been minimized.

Show comment
Hide comment

DarthCainRor commented Oct 9, 2016

ulteq added a commit to ulteq/rigs-of-rods that referenced this issue Oct 11, 2016

[Bugfix] Fixes tracked vehicles
Temporarily disables the 'intra_collcabrate' optimization until we have a better solution

Fixes: RigsOfRods#381

ulteq added a commit to ulteq/rigs-of-rods that referenced this issue Oct 11, 2016

ulteq added a commit to ulteq/rigs-of-rods that referenced this issue Oct 11, 2016

ulteq added a commit to ulteq/rigs-of-rods that referenced this issue Oct 11, 2016

@ulteq ulteq closed this in #1146 Oct 13, 2016

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment