Jump to content

The war against lag: Anti-lag fairings


Recommended Posts

Happily im not Squad. Theyre developing a great game. The world first game trying to give the players the possibility to construct, launch and fly spacecraft to other moons/planets. Launching a spacecraft is the most critical phase!

I remember times when people cried for docking to built big stations in space. They got it.

Now they cry for eliminating physics that they can launch the (rediculous 1000 part whatevers) from kerbin.

Perhaps KSP should just limit the part count that people learn to play the game like it is supposed to be.

Primates are able to press launch with physics disabled but this is not the idea of KSP ... :0.0:

Link to comment
Share on other sites

Can you explain again please? You dont "launch" anything. You cheat it in space.

I think you may be misunderstanding OP's idea . . . the mass of the object being launched is still there, the only thing that's affected is (as I said before) the moment of rotational inertia, the drag (but that's what fairings are for anyways), and the lag (in a good way)

EDIT:

Now they cry for eliminating physics that they can launch the (rediculous 1000 part whatevers) from kerbin.

Perhaps KSP should just limit the part count that people learn to play the game like it is supposed to be.

Limiting the amount of parts you can have (whether through lag or on purpose) is not only unfun, it is physically unrealistic. There are no part counts in real life. And I'm 100% sure that the devs do not intend arbitrary part limits to be "the game like it is supposed to be."

Once again, OP's idea would not be "disabling physics". You would still need the same amount of Dv (though admittedly maybe a bit less control authority because of less wobbles, etc). This idea is primarily as a way to decrease lag during launch.

Edited by chaos_forge
Link to comment
Share on other sites

I can gurantee you its not the same, sorry. But right now im too lazy to explain it, but this is very basic physics - i assume it won't be that hard to find information about it.

Cannot support this suggestion, the game would be messed up. If your therory were right (and it is not) then every rocket could be replaced by one part. Think about it, it is the same?

And yeah, the total mass is the same this is right. But physics is more than the attribute mass...

Providus is correct in saying that it's not the same . . . you can replace it with a point mass for center-of-mass calculations, but the moment of rotational inertia for the rocket would be incorrect.

I am very confident that you can model a set of masses on a rigid body as a single entity. Mass, location of the CoM and moment of inertia should cover everything you need to simulate an equivalent substitute.

The only noticable difference is that there is no wobble. Wobble is effectively a delayed angular momentum because the masses are on a spring. This makes a rocket hard to steer.

Note how all other parts, like a fuel tank, have correct rotational inertia's while being a single entity!

All you need is mass, CoM and the inertia matrix.

2 - If you were to implement the idea, what would happen once you open the fairings? The whole craft would have to render causing lag. So the idea would be cancelled out once you open them.

By then you will have separated most of your lifter; this frees up the CPU budget. Laggy rockets will get incrementally less laggy as you separate stages.

It would ruin the game. Physics simulation is a core feature of KSP and you want to disable it?

Im very sure Squad will never do such a ... folly.

Did you consider the slight possibility that your computer is not powerful enough when you cant have fun due to laggyness? But this is no reason to truncate KSP!

KSP is alpha btw. Usually optimization is low priority. Im sure we will see performance patches in future!

We're not "disabling physics", we are simply optimizing the use of them.

My CPU runs at 4.2 GHz. Pretty sure that it's not the hardware. Since KSP is on Unity and not multithreaded, we are stuck doing heavy physics on one core - no matter how powerful - so we need to optimize. If we can cut the load of parts in half during ascent, then that is an astronomical improvement.

Have you ever tried building something big?

I can build a launcher capable of launching a certain amount of tons and I can build a payload strutted up enough to survive. Combined however, the game is unplayable and I can't

Optimization is not a low priority - look at the changelogs, you will find multiple optimizations in the last patches alone.

Edited by Psycix
Link to comment
Share on other sites

I think you may be misunderstanding OP's idea . . . the mass of the object being launched is still there, the only thing that's affected is (as I said before) the moment of rotational inertia, the drag (but that's what fairings are for anyways), and the lag (in a good way)

I am sure everbody got it. And it is not a good way but the worst way impoving performance one can imagine.

You are the one not willing to think about the consequences of these extreme simplification.

Link to comment
Share on other sites

I am very confident that you can model a set of masses on a rigid body as a single entity. Mass, location of the CoM and moment of inertia should cover everything you need to simulate an equivalent substitute.

Yes, but you would have to pre-calculate the moment of inertia of whatever's going inside the fairing. That could be a possible problem.

Link to comment
Share on other sites

KSP as it is now has some odd physics quirks with high mass objects next to low mass objects that I think would make this idea impractical - those who have played around with KW Rocketry or Nyrath's Orion know what I mean. If those quirks were ever overcome, there's still the lag that would come from ejecting the shroud as it would have to load the craft and following that would be the lag of the physics waiting to kick in. Granted the "time boost" from not lagging on the way up would likely compensate for that, so I don't think those two points negate the OP's points.

That all said, I personally treat the performance issue as a "challenge" in that in order to build the craft I want, I have to build it the most efficient way possible... sort of like treating a limitation as a "feature" so I can engineer a solution to a problem and thus add some depth to the game. Yet, I do feel for those who want to build something big and find themselves unable to do so because of the shortcomings of the physics engine. It may just be that we have to keep our ambitions kerbal-sized.

Link to comment
Share on other sites

Yes, but you would have to pre-calculate the moment of inertia of whatever's going inside the fairing. That could be a possible problem.

Just like the mass and CoM the moment of inertia would indeed be pre-calculated.

This is not very hard to do. A programmer who knows his way around in physics will code this up easily. It won't be very heavy for the CPU to do this calculation either.

If those quirks were ever overcome, there's still the lag that would come from ejecting the shroud as it would have to load the craft and following that would be the lag of the physics waiting to kick in.

It might be possible to have the parts loaded while simply not emulating them as physics objects.

EDIT, how to calculate the subsitute:

CoM calculations:

https://en.wikipedia.org/wiki/Center_of_mass#A_system_of_particles

Moment of ineria calculations:

https://en.wikipedia.org/wiki/Moment_of_inertia#Calculating_moment_of_inertia

The moment of inertia of a body is calculated by summing mr2 for every particle in the body about a given rotation axis. In order to see how moment of inertia arises in the study of the movement of an extended body, it is convenient to consider a rigid assembly of point masses.

Mass calculations:

1+1 = 2

Edited by Psycix
Link to comment
Share on other sites

Just like the mass and CoM the moment of inertia would indeed be pre-calculated.

This is not very hard to do. A programmer who knows his way around in physics will code this up easily. It won't be very heavy for the CPU to do this calculation either.

You don't know what youre talking about, do you?

Would you mind showing me a simple example of "precalculated" "Inertia"?

("Inertia" with " because i strongly believe you have your very own definition of this word)

//Edit:

Nice random links you posted. But this inertia link has nothing, completely nothing in common with a game phyics simulation. ;)

More than that it doesnt really represent the problem with your "lag fairing" you still not understand.

Edited by providus
Link to comment
Share on other sites

Just edited an example into my previous post.

EDIT:

I was already editing that in while you posted. I got ninja'd and used a new post to refer to the edit.

Edited by Psycix
Link to comment
Share on other sites

You don't know what youre talking about, do you?

Would you mind showing me a simple example of "precalculated" "Inertia"?

("Inertia" with " because i strongly believe you have your very own definition of this word)

Actually I do. I am a physics major at The University of Chicago (known for producing more Nobel prize winners than any other university in the US), and I spent this summer writing code to simulate gravitational waves produced by binary black holes (and was paid for it). So think before you resort to Ad Hominem.

EDIT: Whoops, thought you were talking about me. Anyways, I'm sure Psycix knows what (s)he's talking about.

Now, I don't remember exactly how to get it because I took Newtonian last year (I can go find my textbook if you want), but rotational inertia in the continuous case would be at most a triple integral, but since KSP rockets are made of discrete particles, you could just use a simple Riemann sum. Now that I think about it, I agree with Psycix that it would not be extremely difficult to program.

EDIT: And I can corroborate that Psycix's links are in fact relevant. They contain formulae for calculating the moment of inertia and center of mass of objects

Edited by chaos_forge
Link to comment
Share on other sites

Actually I do. I am a physics major at The University of Chicago (known for producing more Nobel prize winners than any other university in the US), and I spent this summer writing code to simulate gravitational waves produced by binary black holes (and was paid for it). So think before you resort to Ad Hominem.

Now, I don't remember exactly how to get it because I took Newtonian last year (I can go find my textbook if you want), but rotational inertia in the continuous case would be at most a triple integral, but since KSP rockets are made of discrete particles, you could just use a simple Riemann sum. Now that I think about it, I agree with Psycix that it would not be extremely difficult to program.

Wow. I even dont need my Master of Science degree in bioinformatics (ant this is real :-P) to tell you that a simplification of basic physics is not hard to implement. No my kindergarden degree is sufficient for this. But the problem is not: "How hard is it to simulate a point mass".

I end my participation now and quote the best post in this thread:

KSP as it is now has some odd physics quirks with high mass objects next to low mass objects that I think would make this idea impractical - those who have played around with KW Rocketry or Nyrath's Orion know what I mean. If those quirks were ever overcome, there's still the lag that would come from ejecting the shroud as it would have to load the craft and following that would be the lag of the physics waiting to kick in. Granted the "time boost" from not lagging on the way up would likely compensate for that, so I don't think those two points negate the OP's points.

That all said, I personally treat the performance issue as a "challenge" in that in order to build the craft I want, I have to build it the most efficient way possible... sort of like treating a limitation as a "feature" so I can engineer a solution to a problem and thus add some depth to the game. Yet, I do feel for those who want to build something big and find themselves unable to do so because of the shortcomings of the physics engine. It may just be that we have to keep our ambitions kerbal-sized.

//Edit: Sorry i had to ROFL ... "FORMULA for COM" ... ROFL. Did you get the nobel prize for it, too? Sorry this had to be. Wish your dreams continue ;) Dont wake up! ^^

Edited by providus
Link to comment
Share on other sites

Wow. I even dont need my Master of Science degree in bioinformatics (ant this is real :-P) to tell you that a simplification of basic physics is not hard to implement. No my kindergarden degree is sufficient for this. But the problem is not: "How hard is it to simulate a point mass".

[email protected]

Email me, ask me what was in this thread, whatever you need to do to convince yourself I'm real. And I'm pretty sure someone with a master's wouldn't resort to Ad Hominem.

And yes, Scoundrel's point about the problems with high mass differences between parts is in fact the most legitimate objection to OP's suggestion. However, that doesn't mean point masses are unrealistic.

Link to comment
Share on other sites

[email protected]

Email me, ask me what was in this thread, whatever you need to do to convince yourself I'm real. And I'm pretty sure someone with a master's wouldn't resort to Ad Hominem.

And yes, Scoundrel's point about the problems with high mass differences between parts is in fact the most legitimate objection to OP's suggestion. However, that doesn't mean point masses are unrealistic.

Sorry but i can't take you seriously. You showed incompetence several times...

Link to comment
Share on other sites

Sorry but i can't take you seriously. You showed incompetence several times...

Please leave the thread if you're not willing to discuss things properly. You've gone from discussing to "ROFL keep dreaming ^^" to calling someone who clearly knows a lot more about physics than you incompetent simply because you do not understand or agree with the matter at hand.

The physics is correct, and from a programmer's perspective the engine should be able to work this way.

If you are really certain that this is impossible, then the game developer who knows his way around the physics engine will be sure to prove me wrong wouldn't he?

Actually, if someone knows who that is, please invite him to this thread. I'd like to hear his opinion on this.

Link to comment
Share on other sites

If I stay in this thread I'm just going to keep arguing with providus, so all I can say is good luck with your suggestion Psycix, and PM me if you can come up with a workaround to the problem that Scoundrel pointed out; I'd be interested in seeing it.

Link to comment
Share on other sites

There is a possible problem with this that hasn't been addressed yet, which is how the payload would be affected by acceleration and jerk during the early launch stages.

With the current system, the payload has to be designed to survive the forces, moments and impulses created by the launch vehicle; it must be solid enough to not flex uncontrollably, it must not break under the stresses imposed. The proposed implementation would effectively remove this constraint and a payload could be designed to be ultra-light and flimsy, unable to take more than 1G of acceleration but still be launched into orbit intact because the physics of the payload under higher launch accelerations would not be simulated. I don't know if a modification to this to reintroduce this constraint would be worthwhile, since it would require some physics calculations to be done on the payload anyway and at that point the main benefit of this proposed system is gone.

All the points made about substituting the payload with a point mass with a set moment of inertia are perfectly accurate, if we're dealing with rigid bodies. However, rockets and payloads are not rigid bodies in this game, they are a bunch of rigid bodies held together by springs and dampers that create a strange kind of deformable body, not a rigid body. Without modelling that we're back to the problem noted above, namely, that a payload can be designed without caring about how it would be affected by the launch conditions. A highly-flexible payload can pull a rocket of course because its deformation offsets the CoM of the rocket from the thrust vector, and thus removes another constraint on payload design.

TL;DR: The current proposal effectively removes the constraints on the strength and flexibility of payloads, allowing ridiculously weak payloads to be put into orbit. Any changes to account for this will require running physics simulations on the payload, removing the primary benefit of the proposal.

Link to comment
Share on other sites

The question is whether or not you regard to the wobbling as a bug or a feature. We wobble because that's how this engine simulates physics: You need dislocation in order to generate force.

Real rockets are pretty rigid - until they break.

Link to comment
Share on other sites

I consider the majority of the wobbling to be unintended, although I don't think it actually counts as a "bug" per se, more as a too-low spring constant between the joints.

However, this doesn't address the strength problem at all; a sufficient jerk is enough to break a payload apart and that can be produced during launch, during MECO, due to poor piloting, etc. It doesn't matter if the joints are all perfectly rigid; a payload should not be able to take an infinite amount of force without breaking, but this current proposal allows that to happen, so long as the fairings are attached.

Link to comment
Share on other sites

I enjoyed reading the back and forth in this thread, especially the posts by providus. I like how he's dismissive and seems too important to explain himself, then just tells everyone he's got a master's degree in bioinformatics, followed by ROFL LOL DON'T WAKE UP. I nearly threw my back out with laughter.

Link to comment
Share on other sites

Okay, moving right along...

Ferram, I think the point you're bringing up is the primary point of contention about this idea. I know you're pretty knowledgeable about physics and the limitations of KSP, considering your work with FAR. Do you think there's a good middle ground wherein fairings can cut the physics load attributed to having a bunch of parts welded together, while also keeping a certain amount of realism?

Link to comment
Share on other sites

[...] this doesn't address the strength problem at all; a sufficient jerk is enough to break a payload apart and that can be produced during launch, during MECO, due to poor piloting, etc. It doesn't matter if the joints are all perfectly rigid; a payload should not be able to take an infinite amount of force without breaking, but this current proposal allows that to happen, so long as the fairings are attached.

As mentioned before, could this be compensated by increased mass, simulating the addition of struts? And furthermore, could a certain amount of stress (precalculated?) trigger an explosion centered at the CoM? Is that reasonable/balanced?

Link to comment
Share on other sites

Now I'm sorry, but why has this thread gotten so out of control?

The argument here is fairly well presented, I couldn't care less either way, but ultimately the physical inaccuracies are easy enough to get around.

The lag spike that would come out of the fairings is also quite legitimate.

From what I'm seeing, this is an argument about whether or not the game is supposed to run well or whether it is meant to be as accurate as possible. It is a balance, but ultimately, when looking at the multibody solution that Squad has implemented, I see the accuracy being thrown out in order to provide a better performing game. Unfortunately we can't leave it at that.

KSP is also meant to be a balanced game, not so much in the sense that it is meant to not have any game-play holes which are exploitable, but in the sense that it is meant to be a reasonable approximation of how difficult planning, building, and executing a successful space agency, but we also all know that we're in this for the flight sim.

This is a discussion about whether or not these kinds of fairings would break the game. Why does that matter enough to make several of you insult each other and demean each other's points? I understand that this is the internet, but still...

How about this, it should be possible to memoize the simulation of the payload inside the fairing by calculating the minimum force required to break the payload, if this limit is reached (within 5%), then the parts inside the fairings are simulated until the force diminishes, if the payload is destroyed or dismantled by the force, then perhaps the contents inside the fairing would be simulated up to and past its breaking point.

---

Either way, the problems are not insurmountable, alternatively, would anybody send up a 10,000 part(counting from the outside) spaceship in real life? The number of modules in real life ships is limited as much as possible because as you add further parts the chance of something going wrong increases.

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...