Jump to content
  • Overhauled Aerodynamics


    HarvesteR

    Hi again,

    It's time to talk aerodynamics. More specifically, about what we have in mind for the upcoming patch and what you should (and shouldn't) expect from it.

    First off, though, let me go ahead and say that our main goal with this is to make the game more fun. We are not looking to make things more realistic just for the sake of being realistic. If it doesn't make the game more enjoyable overall, then it's not worth adding.

    That said, there are many planned changes that will indeed improve the realism of the flight model, because in many ways, a more realistic model means a more intuitive model, and more intuitive does mean improved overall enjoyment of the game.

    You should keep in mind at all times, however, that KSP is a game first, a simulation second. We are constantly trying to maintain this precarious balance between too much realism vs too much simplicity. Both would frustrate some part of our players. Ultimately though, this is about making the game more fun.

    So, let's first talk about the problems of the current system, from a gameplay point of view. Realism aside, what are the gameplay limitations we have at the moment?

    * Cargo bays and nose cones have no use.
    This is a big one. Nose cones and cargo bays are no more than dead weight (and wasted Funds) if they offer no advantage over launching an exposed payload.

    * Streamlined designs don't fly any faster than non streamlined ones.
    This is important from a gameplay POV because it's counterintuitive. If I build a javelin-shaped ship, I would expect it to cut through the air with far less resistance than a disk-shaped craft flying flat-side-first. This isn't happening with the current system, and it should be improved, if nothing else just because it makes sense that streamlined looking things should fly faster than flat-looking things.

    * Wings are inefficient, making it overly difficult to design a spaceplane that will reach orbit with a meaningful amount of payload
    At the moment, the lift and control surfaces are producing less lift than they ought to, which of course, affects gameplay negatively in that you need excessive wing parts or excessive speed to lift any amount of payload. This is further aggravated when climbing out of the thicker parts of the atmosphere, as the reduced air density provides even less lift there.

    * Spaceplanes are fiddly to design and build
    This doesn't concern the realism of the simulation so much as it does the UI around building spaceplanes. At the moment, there isn't enough information displayed to help players intuitively build aircraft that will fly properly and be controllable.

    There are, of course, other issues, but these are our main concerns for the upcoming overhaul. Some of these issues will in fact require solutions that improve realism. Others will require some lateral thinking.

    Another big concern that must be kept in mind here is that many players are already used to the existing system, and have build their fleets of spaceplanes based on the existing conditions. As much as possible, we want to ensure existing functional designs will still perform acceptably. It would be no fun to find out your spaceplanes aren't controllable anymore because of the new system. That wouldn't be an improvement at all from a fun point of view.

    So that brings us to the core of the matter. These are the changes we are planning to change as of today (needless to say, this is all subject to change as we develop further):


    * Improved Lift Model
    We are revising the lift model on lift and ctrl surface modules so that the lift force follows the standard lift equation, where lift is a function of the square of velocity. This will mean all lifting surfaces will produce a lot more lift as speed increases.

    Increased lift output will change quite a lot more than just how much payload you can carry. With wings requiring less speed or less air density to produce enough force to take off, we can tune other parameters to solve other problems, without compromising the air-worthiness of existing craft. Furthermore, early testing shows that planes now fly at much more reasonable angles of attack, fly faster at low altitudes (due to less drag from wing surfaces at lower AoAs), and remain controllable when flying fast at high altitudes. This was already a marked improvement even without any changes to the drag itself.

    * Improved Drag simulation
    The current drag model is flawed not just because it isn't unrealistic. It precludes nose cones and cargo bays from being of any use, and generally behaves in unauthentic and unintuitive ways. This goes beyond the problem of realism. The current drag model isn't capable of simulating things that are essential aspects of a space program, like ejecting fairings and the importance of a streamlined design.

    There is one caveat however. The drag model as it is has one good aspect to it: it is far more forgiving to outrageous designs than a more realistic one. To some this further compounds the problem, but from a gameplay standpoint, being able to construct ridiculous designs and get away with it (if you can manage) is a good thing. It wouldn't be much fun if the game simply made it impossible to control those ridiculous contraptions that are so entertaining to build and attempt to fly.

    The solution here then must be in either a happy middle ground, which may not exist; or, if that's the case, be somehow adaptable to each player's style of playing. Needless to say, this is not an easy problem to tackle, as it's quite clear to us that a move in either direction will upset some group of players. Too simple will upset those who like things to be realistic. Too realistic will upset those who like to build crazy things for fun.

    This problem is further complicated by the very nature of the system we are trying to simulate. Airflow is a notoriously complicated system to simulate accurately, and even more so when you can't know in advance the flight characteristics of the aircraft. All flight simulations use approximations, in varying degrees of realism, for how air behaves around an aircraft. So whatever solution we come up with must not only fit the gameplay requirements above, it must also be computationally viable to not reduce the game into a slideshow.

    The main goal of a new drag model then, is to allow the game to properly simulate payloads being protected from the airstream by a cargo bay or fairing, and nose cones properly reducing the drag of parts stacked behind it.

    We are implementing a new system already, which is a solution we had planned for quite a while already, but so far hadn't had enough time to attempt. It's a large-ish implementation, but it should give us a new drag model in which parts can be obscured by others, and in which pointy objects will be able to fly faster than flat-faced ones.

    This level of realism is what we are aiming for. It's not going to be an intricately realistic flight model, but it should at least be accurate enough to portray the important effects which are currently missing from the game.

    That is about as much as I can talk about it without getting into uncertainty territory, but there is more to the overhaul as a whole still:

    * Craft Design Difficulties:
    From an engineering standpoint, a rocket is a much simpler machine than an airplane. Rockets essentially fire a lot of mass towards the ground, and get pushed towards the sky. That means construction-wise, as long as you've got a nicely balanced craft where engines balance out, things should be quite straightforward.

    An airplane is quite another matter. They require a much more complex set of forces acting on it in carefully balanced ways in order to achieve level flight. It's no wonder that rockets existed as fireworks thousands of years before fixed-wing flight was a thing.

    Airplanes fly as a result of several forces balancing out: Wings produce lift, which must be balanced so as to not cause the craft to rotate out of control. Try launching a poorly thought out paper airplane to see what an imbalanced plane flies like (it doesn't). But balance alone is not enough. To maintain controlled flight, you must be able to influence this balance to cause the plane to pitch up or down, and thus be able to keep the thing in the air. Elevators are the common solution to that, but the way they work is not immediately obvious. The tail stabilizers on most aircraft doesn't actually keep the tail up, they actually push the tail down, acting on the plane as a lever, to push the nose up. Given enough airspeed, the downforce from the tail will force the nose up enough that the wings will catch enough air to produce the proper amount of lift to counteract gravity. Level flight is achieved when all these forces are in equilibrium.

    Now, all that is usually done already for you in a normal flight simulator. Your job is simply to fly using the already-there controls. In our case, however, these concepts must somehow be made apparent to players, in a way that will help you see if your airplane is going to be stable or not.

    There is a little-known trick to gauge the stability of a spaceplane before flight. Turn on the CoL and CoM overlays in the editor, then grab the root part with the rotate gizmo, and pitch the craft up and down. Note how the CoL shifts as the craft is subjected to airflow from different angles. A stable craft generally is one where the CoL stays behind the CoM at all times, and flips direction when the plane pitches nose down (i.e., pushing the tail down).

    Using this trick, one can almost always achieve level flight without too much trial and error, and even if it's not completely right, level flight can be achieved by trimming the craft.

    We can't expect people to figure this out, however, so the plan here is to come up with an improved UI for the SPH, where a more useful overlay will display this information for you in a way which will (hopefully) be clear enough to help you construct a decently stable craft without relying on excessive trial and error.

    We don't expect this UI to be enough, however, so we are also working on other systems to warn players of potential issues (possibly based on the upgrade level of the SPH also), and also planning new tutorials where the basics of spaceplane design are explained.



    This about covers the extent of our plans for overhauling aerodynamics. Hopefully this will clear up what we intend to do and dispel the concerns about what to expect from it.

    There is one last thing to address of course, Modding support. This I think is one of the most frequently heard concerns, that our overhaul will prevent aerodynamics mods from functioning. This, as much as possible, is something we don't want to cause. Mods may very well become incompatible after the upgrade, as they often do, but we are by no means trying to prevent mods from functioning afterwards. If the new system is not to your liking, it should still be moddable just as much as the existing system is. We are changing how the stock aeros work internally, but as much as possible, we're striving to make the transition as transparent as we can to all other components, keeping the changes contained to their original modules.

    That's all for now then. More news as they develop. :)

    Cheers

    Update:

    From the comments it's evident that some clarification of what 'preserving functionality in old designs' should be taken to mean. First of, we don't expect any of the planned changes should require breaking the craft file format in any way, so this is a minor concern already.

    But most importantly, the only way to really judge whether the new system is an improvement over the old one is to compare both under equal circumstances, and for that we need a control. The stock crafts are coming in very handy for this. We know how they handle in the old system, and for the most part, we like how they fly (with some exceptions which do need improvement).

    The point is, the stock craft are our measuring stick for comparing, tweaking and tuning the many variables of the new system, and for that reason they must stay, as much as possible, compatible. This does not mean we aren't willing to compromise on a few designs if others are performing better (not in terms of service performance, in terms of feel when flying). But take for instance, the change over to the new lift model. There is one constant which is used to scale the lift coefficient of all wing sections, defined in the part cfg, so that it translates into a nice, controllable flight model. How do we tune something like that? We have to have some reference to compare it to. For now, this scale was set so the takeoff speed of most craft remains unaffected. This means the new lift model is producing values in the same order of magniture as the old one, in one particular situation, so we can start from there to have a solid basis to tune from. We will probably end up tweaking this value further based on feedback during testing, but the importance of having a basis for comparison can't be understated when working on something like this. On my first attempt, this value was set to 1.0, and ships simply exploded on physics start, because the forces were orders of magnitude off. Without a benchmark, it would have been very difficult to even find out what should be changed to fix it.

    In any case, the short version is: don't worry too much about us worrying too much about backwards compatibility. It's not even likely to be such a big deal after all.

    Cheers


    User Feedback

    Recommended Comments

    There are no comments to display.


×
×
  • Create New...