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 Download Package Now!
  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 here. Do not following these rules will lead to permanent exclusion from this website: Read the forum rules.

Experimental DCS Plugin ready for testing

Discussion in 'Digital Combat Simulators (DCS)' started by Dirty, Jun 28, 2019.

  1. SeatTime

    SeatTime Well-Known Member

    Joined:
    Dec 27, 2013
    Messages:
    2,315
    Location:
    Newcastle Australia
    Balance:
    27,023Coins
    Ratings:
    +2,611 / 29 / -0
    My Motion Simulator:
    DC motor, Motion platform, 6DOF
    @hexpod explained it further back as follows:

    'I mean whatever you do inside the plugin, between normal and inverted flight we have 2G difference which seems perfectly logical.

    Scenario 1 (starting with heave at 0)

    Now, if you output in the plugin the vertical G with a “center value 0G”, (your platform will start cantered) and you will get -2G while inverted.

    Imagine, in this case, if you scale your platform intensity -+ 1 you will get the motion scaled up to 1G in normal conditions. Than if you will do an inverted flight, your cue will clip and you’ll not get any heave motion. Everything below -1 will be skipped and will provide heave clipping cuts while going above -1.

    Scenario 2 (starting with heave +1)

    In this case you might want to scale your heave +- 2 and apply a High Pass filter (washout)

    The washout will bring the heave to the center and you will have 1G travel up and 1G travel down. (I mean 1G room for normal flight and 1G room for inverted flight before Tuning Center will clip)

    In this scenario you will still receive heave cues in inverted flight.

    What do you prefer: scenario 1 or 2 ?

    EDIT:

    If you go with „Scenario 2“, it will reduce your geometrical intensity limit (axis travel) in the plugin.

    Knowing that in this case your axis clips before the assigned max travel, you just have to exaggerate your 6-dof plugin’s heave travel in order to compensate your heave ability.'
    • Like Like x 1
  2. PetroVitallini

    PetroVitallini Member

    Joined:
    Dec 23, 2016
    Messages:
    57
    Location:
    Norway
    Balance:
    632Coins
    Ratings:
    +27 / 0 / -0
    My Motion Simulator:
    2DOF
    Thank you for taking your time answering this. Now I need to spend some time understanding it hehe.
  3. Trip Rodriguez

    Trip Rodriguez VR Pilot

    Joined:
    May 8, 2016
    Messages:
    544
    Location:
    Lake Ariel, Pennsylvania
    Balance:
    3,122Coins
    Ratings:
    +230 / 3 / -0
    My Motion Simulator:
    6DOF
    Ok, I have to make this fast but I will try to help.

    Say you are sitting in a car, and the car is pointed up a steep hill. You feel like you are being pushed back in your seat right? But what is pulling you back in your seat? It's the fact that the 1G force of gravity is now being applied at an angle relative to you instead of straight down, and a portion of that force is now "backward" relative to you because Earth is no longer straight down from your butt.

    Most hobby level sim software has dealt with this with Euler Angles instead of looking at what the G-force is and it's direction. it looks at the angle of the vehicle and moves the platform to a similar angle.

    That's fine in some circumstances, but in other circumstances it creates some serious false cues. This is the problem everyone was having with DCS where rolling through inverted or pitching past vertical caused really bad things to happen.

    Here's a perfect example: You roll your virtual airplane to an inverted position, perfectly upside down and fly straight. Now to return to right side up you roll right wing down (Note: this is always relative to the pilot, not the Earth, so rolling RWD when inverted actually moves the righ wing toward the sky). You will observe that the sim moves the OPPOSITE WAY it should! Why? Because instead of simulating a rotational acceleration it is trying to put the simulator into a position that correlates to the position of the aircraft. When you rolled right wing down from inverted you put yourself into a left wing down position relative to Earth and that is what the simulator is looking at!

    The solution is to use rotational acceleration cues (with washout) instead of Euler angles. So the previous paragraph means that when you roll right wing down from inverted the cue will be 1G of force starting to pull you toward the left, just like the Euler angle method, but now you've got the rotational acceleration so the platform rolls rapidly to the right to cue the rotational acceleration of the right wing down movement. If you maintain a steady roll rate, aileron rolling around and around, the rotational acceleration cue washes out and the only cue will be the changing position of gravity which we use a slower cue for, but when you center the stick the stop the roll suddenly, the sim will roll quickly left wing down to cue the negative acceleration of changing the roll rate from whatever it was back to zero.

    Now that's solved, but if you do an aileron roll (not to be confused with barrel roll) now you feel the proper cue initiating and stopping the maneuver but you aren't feeling the pull of gravity as the direction of Earth changes relative to you. In a barrel roll you don't feel that in real life, but in an aileron roll you do. The solution here is instead of the software looking at the Euler angle of the vehicle and trying to simulate that, you have it look at gravity from a proper scientific perspective where it's a continuous 1G force toward the center of the Earth. Now using that you can simulate things like being parked on a hill or flying in a straight line rolled 90 degrees and you will still get the expected effect, but you are simulating it correctly. Simulating the pull of gravity instead of the Euler angle will allow the various g-forces to interact more naturally and will eliminate many false cues. Here the example is pitching past vertical. When you pitch past vertical the feel of gravity pulling you backward will gradually ease off as you come inverted, then gradually increase as you come nose down from inverted. Using Euler angles the aircraft suddenly went from MAXIMUM pitch up, to pitch down and the software demands that the platform instantly return to at least level, usually even more. This results in a very sudden maximum pitch down cue that shouldn't be there.

    If you want clarification please don't hesitate to ask, I'm trying to type this in a hurry so it's not as clear as it should be and might have mistakes in it, but hopefully you get the idea.

    PS- To get rid of that heave axis offset you can put in a little bit of washout. This means if you are flying in a straight line (not turning) you will slowly lose the pull of gravity toward Earth, but that is something most pilots will rarely do, if ever. Make it super slow and you likely won't ever notice. Likewise if you are parked on a hill you will slowly lose the cue for the angle, and if you are in a tail dragger you will slowly lose the feeling of being tail low on the ground etc. The ideal solution there is to have zero washout when "on ground" is detected. This is possible with FlyPT Mover. I'm not sure about Nutkicker yet, but I'm sure Dirty will add it if he hasn't already.
    • Informative Informative x 1
    Last edited: Oct 16, 2019
  4. PetroVitallini

    PetroVitallini Member

    Joined:
    Dec 23, 2016
    Messages:
    57
    Location:
    Norway
    Balance:
    632Coins
    Ratings:
    +27 / 0 / -0
    My Motion Simulator:
    2DOF
    Well thank you for this. Kind of impressed that you had to make it fast and this was the result. I'll have to work on understanding this, but as I'm a bit thick and struggle a bit with the terminology (have to google and understand the terms). Do not spend any time trying to explain it better hehe. I'll ask instead.

    Now, I have gotten quite good settings for dcs witht the experimental plugin and its very enjoyable, but that is without using any form of washout at all. I'm going to try to experiement a bit more with washout now that I got a baseline that feels good. I use a 4 actuator prosimu rig btw. I've tried a washout of 25 and gain of 1, but can't really detect it feeling better. I up'ed the gain to 10 and my rig jumps all over the place.

    Anyways, on with the experimenting!
  5. Vedran Guculj

    Vedran Guculj New Member

    Joined:
    Mar 31, 2019
    Messages:
    13
    Balance:
    81Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    3DOF
    Hello!
    I have one question regarding setings in DCS! I have 3dof reality, and if you can't put your settings here? Thx in advance!
  6. Trip Rodriguez

    Trip Rodriguez VR Pilot

    Joined:
    May 8, 2016
    Messages:
    544
    Location:
    Lake Ariel, Pennsylvania
    Balance:
    3,122Coins
    Ratings:
    +230 / 3 / -0
    My Motion Simulator:
    6DOF
    @PetroVitallini I realize you may already know this but just in case wanted to explain the purpose of washout filters.

    The idea is to have the servos gradually return to center (ideally without the user being aware of it) so that the actuator is ready for the next move.

    In many cases this isn't necessary, so be sure to evaluate your situation.

    Let's say you pull back on the stick halfway and initiate a climb. We will look at only the heave axis for this. Now let's say that this motion used all of your heave travel so the sim is as high as it can go. Now you pull back the stick the rest of the way climbing even faster. Well you get no heave cue because the sim can't go any farther. If it had washed out after the first move it would have been ready to heave up again.

    Not a great example but it's what I came up with on short notice. Anyway, use washout only where you find you need it. Washout falls under the category of "a necessary evil" so you don't want to use it when it isn't needed.

    Also bear in mind though, that depending on your sim design, having the heave sitting at max for any period of time might mean that there is no actuator travel in one direction available for other different cues as well so don't fail to consider that.
    • Like Like x 1
  7. PetroVitallini

    PetroVitallini Member

    Joined:
    Dec 23, 2016
    Messages:
    57
    Location:
    Norway
    Balance:
    632Coins
    Ratings:
    +27 / 0 / -0
    My Motion Simulator:
    2DOF
    Thank you for your input Trip. I'm aware of the possibility of clipping, but seeing you writing that washout is a necessary evil and that you don't have to use it opens up my way of thinking about this. I'm quite satisfied with my current settings, but I always wonder if there is some ultimate setting out there that eludes me.

    Speaking of clipping. I've been wondering if it would be possible for simtools to make a log of dof and axis output. I have no monitors on my rig and use vr so its hard to observe the output screen. Somekind of logger that would log indefinately or in a set amount of time and present the percentage of clipping for an axis of dof at the end would be great.
    • Agree Agree x 1
  8. noorbeast

    noorbeast VR - The Next Generation Staff Member Moderator

    Joined:
    Jul 13, 2014
    Messages:
    13,560
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    102,303Coins
    Ratings:
    +8,504 / 42 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    Have a look at the Axis Analysis app: https://www.xsimulator.net/community/faq/axis-analysis-app.282/
    • Informative Informative x 1