1. For downloading SimTools plugins you need a Download Package. Get it with virtual coins that you receive for forum activity or Buy Download Package - We have a zero Spam tolerance so read our forum rules first.

    Buy Now a Download Plan!
  2. Do not try to cheat our system and do not post an unnecessary amount of useless posts only to earn credits here. We have a zero spam tolerance policy and this will cause a ban of your user account. Otherwise we wish you a pleasant stay here! Read the forum rules
  3. We have a few rules which you need to read and accept before posting anything here! Following these rules will keep the forum clean and your stay pleasant. Do not follow these rules can lead to permanent exclusion from this website: Read the forum rules.
    Are you a company? Read our company rules
value1

X-Plane V10 Plugin 2.0.2.0

SimTools game plugin for X-Plane V10

  1. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    931
    Location:
    berlin
    Balance:
    6,001Coins
    Ratings:
    +282 / 3 / -0
    My Motion Simulator:
    DC motor, 6DOF
    I love this kind of “thought experiments” but I guess what disturbs @yobuddy is the simple fact that by going from normal to inverted flight instead of loosing 1G, with floating G you loose 2G.

    That why he writes “you add it twice” (emulate again)

    Since 10 years until now, tons of SimTools users never had a chance to apply a working High Pass Filter. The only choice was to cancel the “floating G”.

    Yea, I don’t think it’s related to 6-dof either. I believe 3-dof users can maximize their workspace by applying washout on heave as well. They can use the coordination channel as well and they can benefit from “floating G” as well.

    It’s easy to get lost and as @value1 says, this “funny 1G added” can mislead you and make you think the forces are world coordinated.

    Interesting debate :)
  2. Dirty

    Dirty Well-Known Member Gold Contributor

    Joined:
    Oct 15, 2017
    Messages:
    575
    Occupation:
    All the way up front.
    Location:
    Germany
    Balance:
    6,239Coins
    Ratings:
    +661 / 1 / -0
    ...not sure if that is what @yobuddy meant, but IF it is :
    It makes perfect sense for there to be a 2G change in that case. Before the roll, the wings were generating lift upwards (towards the pilots head). After the roll they generate lift towards the pilots feet. Thats a change of 2G seen from within the vehicle reference system.

    -

    -

    And I agree: An interesting and much needed debate. And also a debate with people I highly respect in a respectful tone. Thank a lot for that!

    Dirty hug:
  3. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    931
    Location:
    berlin
    Balance:
    6,001Coins
    Ratings:
    +282 / 3 / -0
    My Motion Simulator:
    DC motor, 6DOF
    Believing is not enough as argument, please explain why you think the heave side effect while banking appears to you as false.

    Whatever how you approach it, whatever the origin of it, (“gravity doesn’t exists as a force” 4D bend space time etc. is Dirty’s way), floating G IS the most correct representation of “the world” acceleration which is pushing on your back, on your feet on your side etc. depending on your orientation.

    Tilting, banking is nothing else as a transferring the push vector. If your frame of reference is coordinated xyz, what you take from one coordinate you put to another.

    That’s why you loose heave when you bank.

    Willing getting rid of the floating G is getting rig of “the world” acceleration. That will induce false cueing much more than our “funny 1G”

    Although in free-fall we have the feeling we are accelerating, locally, if you take only your body as a frame of reference, there is NO acceleration at all. Once on earth, standing still, you’re starting to accelerate.
    • Agree Agree x 1
  4. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    931
    Location:
    berlin
    Balance:
    6,001Coins
    Ratings:
    +282 / 3 / -0
    My Motion Simulator:
    DC motor, 6DOF
    @Dirty , @yobuddy gave an interesting example:

    If you rotate in reality a suspended “real chair“, in comparison with the simulation with “floating G” included, the “simulated chair” will sink.

    That’s what he calls a false cue I think.
  5. Dirty

    Dirty Well-Known Member Gold Contributor

    Joined:
    Oct 15, 2017
    Messages:
    575
    Occupation:
    All the way up front.
    Location:
    Germany
    Balance:
    6,239Coins
    Ratings:
    +661 / 1 / -0
    OK :)

    If we play that scenario through in our heads, we start with an upright chair in a gimbal that allows the chair to rotate.

    In the beginning the occupant sits upright and the gimbal exerts a force on the chair that is towards the chair referenced "up" direction. If we rotate the chair, after 90° we reach a point where the gimbal exerts a force on the chair directed towards the chair referenced "left" direction. After another 90° the gimbal exerts a force towards the chair referenced "down" direction, and after another 90° it exerts a force towards the "right". ...you get the idea....

    I find it important to note that the gimbal exerts a force on the chair and it is THIS force that the occupant feels, not gravity. If it didn't exert that force you'd still have gravity, but you'd be in freefall and wouldn't feel anything. At least no accelerations.

    Now, if you want to know how that would be displayed in a 6DOF rig, it's important to understand the idea of highpass filters and what it means "to allow certain frequencies to pass". It depends a lot on how fast the rotation takes place.

    For very slow rotations of the chair, the rig would pretty much ignore all translation signals and display the side loads through tilt coordination (rotations).
    For very fast rotations of the chair, the rig would display the changing accelerations of the chair almost exclusively through the translations, because those are the only signals allowed to pass through the highpass filter of the washout.

    Yes of course, the rig would jump down and left and up and right,.... but it would thereby push the chair against your butt, or make it slide along your skin, or pull it away from under you.... just like the gimbal-chair would.

    So far, I see absolutely no sign of false cues. At least not fundamentally. There will always be discrepancies, inaccuracies, mismatches but those are minor and simply unavoidable. Make sure you understood the Limitations section of this article in-depth.

    Dirty :)
    • Informative Informative x 1
  6. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    931
    Location:
    berlin
    Balance:
    6,001Coins
    Ratings:
    +282 / 3 / -0
    My Motion Simulator:
    DC motor, 6DOF
    Yea, that’s all being confronted, I realize that not only the amount of output may drastically mismatch the real conditions (I am thinking about heave up to 13 G in high performance aircrafts or sustainable longitudinal and lateral forces up to 8 G in high performance cars) but also I realize that whatever the algorithm you choose, the false cueing is simply inevitable.

    The main questions which could be put on the table now are:

    1.) Whatever the amount of workspace or the number of available degrees of freedom, (6-dof, 3dof), for both scenarios - car and plane, will the approach with velocities andfloating G” (with well tuned classical washout algorithm) always be more effective than Euler and accels without gravity ?

    2.) If yes, worth it the hassle to add our funny “missing” “floating G” to the titles which doesn’t have it ?

    @yobuddy , @value1 , without the will of trying and comparing it from the developers and users, we will certainly never know.

    Thanks and sorry for this small parenthesis in this thread.

    Best to all.
  7. yobuddy

    yobuddy Well-Known Member Staff Member Moderator SimAxe Beta Tester SimTools Developer Gold Contributor

    Joined:
    Feb 9, 2007
    Messages:
    3,896
    Occupation:
    Computer Technician
    Location:
    Portland, Oregon - USA
    Balance:
    36,099Coins
    Ratings:
    +4,045 / 11 / -0
    I'm behind a bit, and don't have time right now to catch-up on the thread.
    But here is what I passed out writing last night and forgot to post lol :thumbs

    it's beer'30 and your late lol
    Sounds like a plan!

    I think there is already gravity in real life, so I don't need to replicate it from the game again.

    Nope, but the problem always comes off as a force.

    Take a car game, I want heave to be bumps in the road, so I'm using not washout.
    Every-time I roll to the left or right the sim lowers, when I'm un-tipped to the left or the right, the sim moves back up to center.
    This bobbing up and down is just from going around banked corners.

    On top of that, if the sim was on a sway table, every-time I go into a banked corner, the sim also moves from side to side a bit.
    (Because part of the 1g transfers there and gets seen as acceleration)

    For the record, I am not arguing the theory behind what you are saying.
    I'm saying standing back and looking at the results of doing this way causes problems that I can feel during a ride.

    Imaging if you used 1 and -1 for the min/max on Heave.
    Every-time you tip to the side 90deg the sim will bottom out.
    It does not matter what the game is doing or the data it is sending.
    Because of the 1g, heave is not usable.
  8. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    931
    Location:
    berlin
    Balance:
    6,001Coins
    Ratings:
    +282 / 3 / -0
    My Motion Simulator:
    DC motor, 6DOF
    To my knowledge, washout is a HPF, it pass every bumps. It passes High frequency content through.

    Are we in the good scenario ?

    Did you tried what you describe since you’ve repaired your HPF’s ? - just a simple check.
    Last edited: Jul 31, 2019
  9. Psionic001

    Psionic001 Active Member Gold Contributor

    Joined:
    Mar 5, 2017
    Messages:
    123
    Location:
    Sydney
    Balance:
    901Coins
    Ratings:
    +50 / 0 / -0
    My Motion Simulator:
    Motion platform, 6DOF
    @hexpod That video looks very good, and the cues as I imagined for that sort of plane.
    But I think the sway force is too slow to react to the knife edge.

  10. yobuddy

    yobuddy Well-Known Member Staff Member Moderator SimAxe Beta Tester SimTools Developer Gold Contributor

    Joined:
    Feb 9, 2007
    Messages:
    3,896
    Occupation:
    Computer Technician
    Location:
    Portland, Oregon - USA
    Balance:
    36,099Coins
    Ratings:
    +4,045 / 11 / -0
    I agree, and since we have the version with the 1g added...
    Maybe you should be willing to give it a shot without the floating 1g and see how it feels...
  11. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    931
    Location:
    berlin
    Balance:
    6,001Coins
    Ratings:
    +282 / 3 / -0
    My Motion Simulator:
    DC motor, 6DOF
    Sure I would try it but I dont know the math formula how to cancel or add it.

    @value1 has tried multiple times but everything except simply subtracting the 1 from heave was not usable.
    Last edited: Jul 31, 2019
  12. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    1,501
    Location:
    Portugal
    Balance:
    11,595Coins
    Ratings:
    +1,593 / 13 / -0
    My Motion Simulator:
    6DOF
    This is what I use in Mover:
    Code:
            protected Point3D GetGravity(double yaw, double roll, double pitch) // Angles in radians
            {
                double cy = Math.Cos(yaw);
                double sy = Math.Sin(yaw);
                double cp = Math.Cos(roll);
                double sp = Math.Sin(roll);
                double cr = Math.Cos(pitch);
                double sr = Math.Sin(pitch);
                double qw = cy * cp * cr + sy * sp * sr;
                double qx = cy * cp * sr - sy * sp * cr;
                double qy = sy * cp * sr + cy * sp * cr;
                double qz = sy * cp * cr - cy * sp * sr;
                double n1 = qx * 2f;
                double n2 = qy * 2f;
                double n3 = qz * 2f;
                double n4 = qx * n1;
                double n5 = qy * n2;
                double n8 = qx * n3;
                double n9 = qy * n3;
                double n10 = qw * n1;
                double n11 = qw * n2;
                return new Point3D(
                    (n8 + n11) * G_TO_MSS,
                    (n9 - n10) * G_TO_MSS,
                    (1 - (n4 + n5)) * G_TO_MSS
                    );
            }
    
    Send degrees in radians.
    Returns a Point3D with the value of G in each direction due to rotation.
    Point3D is:
    Code:
    public class Point3D
        {
            public double X { get; set; }
            public double Y { get; set; }
            public double Z { get; set; }
    }
    Now add or subtract the value to the accelerations

    EDIT: G_TO_MSS is a constant to convert from g to m/s^2
    • Like Like x 1
    Last edited: Jul 31, 2019
  13. value1

    value1 Nerd Staff Member Moderator SimAxe Beta Tester SimTools Developer Gold Contributor

    Joined:
    Jan 9, 2011
    Messages:
    2,182
    Location:
    Zug, Switzerland
    Balance:
    10,433Coins
    Ratings:
    +3,258 / 11 / -1
    My Motion Simulator:
    2DOF, DC motor, JRK, Joyrider
    I'm still a terrible pilot.
    If someone would be capable and willing to fly the following positions (as stable as possible for a few seconds) and record the acc-x, acc-y, acc-z and Gloads normal, axial and side, that would be great and clarify a lot!
    Propellerflugzeug.jpg
    1: normal
    2: rotated sideways
    3: headlong
    4: rotated sideways (other side)
    5: vertically down
    6: vertically up
    • Like Like x 1
  14. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    931
    Location:
    berlin
    Balance:
    6,001Coins
    Ratings:
    +282 / 3 / -0
    My Motion Simulator:
    DC motor, 6DOF
    Sure ! Tell me what is supposed to keep the platform tilted when the aircraft is flying on the side in the scenario you propose ? Euler without washout I guess. Right ?
    Last edited: Jul 31, 2019
  15. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    931
    Location:
    berlin
    Balance:
    6,001Coins
    Ratings:
    +282 / 3 / -0
    My Motion Simulator:
    DC motor, 6DOF
    I assume you want all this with a maintained straight line flight at constant speed. right ?

    Even for a good pilot it’s not so easy. Maybe with a delta wing aircraft with supermaneuverability
    characteristics it will be easier....
    • Agree Agree x 1
  16. Dirty

    Dirty Well-Known Member Gold Contributor

    Joined:
    Oct 15, 2017
    Messages:
    575
    Occupation:
    All the way up front.
    Location:
    Germany
    Balance:
    6,239Coins
    Ratings:
    +661 / 1 / -0
    Oh,.. :) Looks like I'm gradually starting to understand the problem. If you are not using any washout, then you will indeed get this strange behaviour. Have you tried using washout? You do know that washout only "washes out" the low frequency content of the signal, right? It is essentially just a smoothened-out highpass filter.

    The two examples you gave (bump vs. bank) are great examples, because they lay on opposite ends of the frequency spectrum. Both are vertical accelerations, but a bump is high frequency content while a banked turn is almost als low a frequency as it gets. Meaning a bump comes and goes within say 100ms while the banked turn is present for a few seconds. The bump will be present in the output signal of the filter quasi completely unaltered. The bank will only be shown as a slight up/down motion when you enter/exit the turn. Which makes sense. If you want this to be smoother, you can tune the filters to almost eliminate it, but I'd leave it in there at least as a faint hint.

    I know you are probably gonna wanna kill me, but I would even go one step further and argue that if gravity is not present in the exported values ( I think @pmvcda had that problem in some racing sim) it should be mathematically ADDED to the data.

    Dirty :)
    Last edited: Jul 31, 2019
  17. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    931
    Location:
    berlin
    Balance:
    6,001Coins
    Ratings:
    +282 / 3 / -0
    My Motion Simulator:
    DC motor, 6DOF
    Maybe it’s the amount of LPF on coord channel. A matter of tuning I think
  18. Dirty

    Dirty Well-Known Member Gold Contributor

    Joined:
    Oct 15, 2017
    Messages:
    575
    Occupation:
    All the way up front.
    Location:
    Germany
    Balance:
    6,239Coins
    Ratings:
    +661 / 1 / -0
    :) Pragmatic approach! Me Like! :thumbs

    acc-x = Gload_lateral
    acc-y = Gload_vertical
    acc-z = Gload_longitudinal

    ...it's just that Gload is given in G while acc-x/y/z is given in m/s^2. Other than that, they're the same. Conversion factor is 9.81

    Scenario 1:
    acc-x = 0.00
    acc-y = 9.81
    acc-z = 0.00

    Scenario 2:
    acc-x = 9.81
    acc-y = 0.00
    acc-z = 0.00

    Scenario 3:
    acc-x = 0.00
    acc-y = -9.81
    acc-z = 0.00

    Scenario 4:
    acc-x = -9.81
    acc-y = 0.00
    acc-z = 0.00

    Scenario 5: (Only valid if terminal velocity is reached)
    acc-x = 0.00
    acc-y = 0.00
    acc-z = -9.81

    Scenario 6: (depends a lot on weight, thrust and speed)
    acc-x = 0.00
    acc-y = 0.00
    acc-z = 2.54 (my best guess)

    Dirty :)
  19. pmvcda

    pmvcda aka FlyPT

    Joined:
    Nov 3, 2010
    Messages:
    1,501
    Location:
    Portugal
    Balance:
    11,595Coins
    Ratings:
    +1,593 / 13 / -0
    My Motion Simulator:
    6DOF
    With the above code, we calculate g in each direction, and then add or remove depending on what the Sim sends to you and what you want.
    In cars, from the most known, only iRacing includes gravity in accelerations, so I use that code to calculate it and remove gravity if wished by the user.
    In others, I use that code to add gravity in accelerations if selected by the user
    • Like Like x 2
  20. hexpod

    hexpod http://heXpod.xyz

    Joined:
    Apr 18, 2016
    Messages:
    931
    Location:
    berlin
    Balance:
    6,001Coins
    Ratings:
    +282 / 3 / -0
    My Motion Simulator:
    DC motor, 6DOF
    Stupid question:

    Is there a possibility to cancel the « floating G » only from local heave and keep the surge sway behavior as is ?