1. Do not share user accounts! Any account that is shared by another person will be blocked and closed. This means: we will close not only the account that is shared, but also the main account of the user who uses another person's account. We have the ability to detect account sharing, so please do not try to cheat the system. This action will take place on 04/18/2023. Read all forum rules.
    Dismiss Notice
  2. 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!
  3. 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
  4. 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

Tutorial GameVibe Manual

Discussion in 'Tutorials and Tips by the Developer' started by yobuddy, Dec 25, 2017.

  1. paulopsx2

    paulopsx2 Active Member

    Joined:
    Apr 2, 2016
    Messages:
    616
    Location:
    brasil
    Balance:
    647Coins
    Ratings:
    +165 / 2 / -0
    My Motion Simulator:
    2DOF, Arduino, Motion platform
    well it depends. some games like NLS2, elite dangerous, haves a diferent patterns. racing games have intuitive rpm vibes... generally betwen 700 and 9.000 for rpm.
    • Informative Informative x 1
  2. PetroVitallini

    PetroVitallini Member Gold Contributor

    Joined:
    Dec 23, 2016
    Messages:
    71
    Location:
    Norway
    Balance:
    248Coins
    Ratings:
    +31 / 0 / -0
    My Motion Simulator:
    2DOF
    I haven't been able to try gamevibe because of the regional issue. Should be fixed, but my rig is not operational at the moment.

    I'm wondering if it is a good assumption that running gamevibe would provide tactile effects more in tune with a motion rig running simtools than for example using simtools for motion and simvibe (simxperience) for tactile?
  3. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    21,712
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    151,979Coins
    Ratings:
    +11,061 / 56 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    Game Vibe lets you customise tactile effects,which are different from motion, but both use telemetry data.
    • Agree Agree x 1
  4. PetroVitallini

    PetroVitallini Member Gold Contributor

    Joined:
    Dec 23, 2016
    Messages:
    71
    Location:
    Norway
    Balance:
    248Coins
    Ratings:
    +31 / 0 / -0
    My Motion Simulator:
    2DOF
    Hmm, it might be I badly frased my question. Because gamevibe and simtools are part of the same application and interpret telemetry in the same way. Or atleast being created by the same person. Would it mean that the tactile effects sync better with the motion when using gamevibe, opposed to using other software alongside simtools motion to drive the tactile effects?

    I can check this my self in a few weeks time, but just being curious.
  5. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    21,712
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    151,979Coins
    Ratings:
    +11,061 / 56 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    The telemetry driving both motion with SimTools and transducer for Game Vibe is the same, but is used differently to what outputs they drive. In both cases the telemetry data is dealt with quite efficiently. That said using different software for say transducers and SimTools for motion will work, at times there are some port conflicts to manage, but other than that the main differences is in having differences of approach in the two software as to how they lay out and manage controls.
    • Like Like x 1
    • Agree Agree x 1
  6. PetroVitallini

    PetroVitallini Member Gold Contributor

    Joined:
    Dec 23, 2016
    Messages:
    71
    Location:
    Norway
    Balance:
    248Coins
    Ratings:
    +31 / 0 / -0
    My Motion Simulator:
    2DOF
    That makes sense. Thank you for the insights noorbeast .
    • Like Like x 1
  7. The Iron Wolf

    The Iron Wolf Active Member

    Joined:
    May 2, 2018
    Messages:
    137
    Location:
    Bellevue, WA
    Balance:
    375Coins
    Ratings:
    +37 / 0 / -0
    My Motion Simulator:
    3DOF, SCN6
    Hi, I am still in progress of figuring GameVibe out, but I am writing to report a crash I am seeing sometimes:
    Application: GameVibe.exe
    Framework Version: v4.0.30319
    Description: The process was terminated due to an unhandled exception.
    Exception Info: System.AccessViolationException
    at <Module>.CoCreateInstance(_GUID*, IUnknown*, UInt32, _GUID*, Void**)
    at SlimDX.XAudio2.XAudio2..ctor()
    at XAudio2_GameVibePlugin.GameVibePlugin.PlayNote_GameVibe(IntPtr, System.Guid)
    at GameVibe.MyAudio.Note.PlayNote_GameVibe(IntPtr, System.Guid)
    at GameVibe.cls_ActiveNote.CreateNoise()
    at System.Threading.ThreadHelper.ThreadStart_Context(System.Object)
    at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
    at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
    at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
    at System.Threading.ThreadHelper.ThreadStart()

    I feels like it has to do with order of startup of Game (rF2) vs GameVibe - I hope stack helps :) Note that it does not crash all the time, just sometimes - I have not figured out exact repro sequence yet.

    PS: I wonder if order of available devices changes when I start VR HMD or something?
  8. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    21,712
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    151,979Coins
    Ratings:
    +11,061 / 56 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    Try this and see if it makes a difference: https://www.microsoft.com/en-us/download/details.aspx?id=8109
  9. yobuddy

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

    Joined:
    Feb 9, 2007
    Messages:
    5,432
    Occupation:
    Computer Technician
    Location:
    Portland, Oregon - USA
    Balance:
    50,997Coins
    Ratings:
    +5,180 / 19 / -0
    Hi @The Iron Wolf,
    Please make sure you are running the newest GameVibe version, as it has all the prerequisites in the installer now.
    I only say this because I see this in your post "Framework Version: v4.0.30319" and its now compiled against v4.6.
    Take care,
    yobuddy
    • Like Like x 1
  10. The Iron Wolf

    The Iron Wolf Active Member

    Joined:
    May 2, 2018
    Messages:
    137
    Location:
    Bellevue, WA
    Balance:
    375Coins
    Ratings:
    +37 / 0 / -0
    My Motion Simulator:
    3DOF, SCN6
    Thanks @yobuddy, I grabbed my mine from the simtools site after upgrade of license. It appears to be v2.0:
    upload_2019-7-26_7-12-4.png
    But I installed Simtools v2.4 on top of v2.3, I wonder if there's some conflict. To my surprise, I still see v2.3 in the control panel:
    upload_2019-7-26_7-14-43.png

    Lastly, I do not think I have .NET 4.6 installed, highest I see is 4.5.1, I wonder if that is the issue. Also, crash seems to be in SlimDX/Xaudio - are those built against 4.6 as well?

    However, if it was dependency issue, wouldn't tool crash all the time? It crashes only sometimes, and it seems to be related to the startup order of SimTools/GameVibe/Game. I am getting my transducers/amp today and will update if I figure out the exact sequence that leads to crash.
    Last edited: Jul 26, 2019
  11. yobuddy

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

    Joined:
    Feb 9, 2007
    Messages:
    5,432
    Occupation:
    Computer Technician
    Location:
    Portland, Oregon - USA
    Balance:
    50,997Coins
    Ratings:
    +5,180 / 19 / -0
    It's worth it I think to simply update you .net to the latest version.
    just so we can cross that possible problem off the list.
  12. The Iron Wolf

    The Iron Wolf Active Member

    Joined:
    May 2, 2018
    Messages:
    137
    Location:
    Bellevue, WA
    Balance:
    375Coins
    Ratings:
    +37 / 0 / -0
    My Motion Simulator:
    3DOF, SCN6
    would you recommend exactly v4.6 or the latest? (4.7.2?)
  13. yobuddy

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

    Joined:
    Feb 9, 2007
    Messages:
    5,432
    Occupation:
    Computer Technician
    Location:
    Portland, Oregon - USA
    Balance:
    50,997Coins
    Ratings:
    +5,180 / 19 / -0
    I'd simply load the latest.
    Take care!
    • Like Like x 1
  14. The Iron Wolf

    The Iron Wolf Active Member

    Joined:
    May 2, 2018
    Messages:
    137
    Location:
    Bellevue, WA
    Balance:
    375Coins
    Ratings:
    +37 / 0 / -0
    My Motion Simulator:
    3DOF, SCN6
    It looks like my system already has that, so that is not the cause of crashes.
  15. yobuddy

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

    Joined:
    Feb 9, 2007
    Messages:
    5,432
    Occupation:
    Computer Technician
    Location:
    Portland, Oregon - USA
    Balance:
    50,997Coins
    Ratings:
    +5,180 / 19 / -0
    @The Iron Wolf,
    Maybe remove GameVibe completely, say "yes" to the popup remove old settings and files" and then reinstall it.
    I'm unable to get that problem after trying to for a couple of days.
    Take care!
    yobuddy
    • Like Like x 1
  16. The Iron Wolf

    The Iron Wolf Active Member

    Joined:
    May 2, 2018
    Messages:
    137
    Location:
    Bellevue, WA
    Balance:
    375Coins
    Ratings:
    +37 / 0 / -0
    My Motion Simulator:
    3DOF, SCN6
    Thank you for trying to reproduce it. It did not crash in multiple sessions I had (fantastic work @yobuddy and team, what a great set of lightweight tools). One thing is on my mind is that when it crashed, I had GV tuning center opened while launching rF2. Another thought maybe device enumeration got messed up because I turned on Pimax headset while GV was running (it has USB Audio device)? I'll try again when I get a chance, but I am too excited about my new addition of transducers to test anything :D

    One thing I do not blame GV, but I had a freeze while racing (which is typically due to CPU spike somewhere), and on my PC I never had freezes, I wonder if some GV code paths need optimization. Hope this is helpful.

    Edit: just crashed with the same stack I posted previously. I will try reinstall, but before I do I'd really like to catch what causes it. I could send my settings over for a diff.
    Edit2: reinstalled, still crashes. Now it crashes every time I start the game, so the workaround is to start GameVibe after rF2.
    Edit3: this PC has multiple versions of Visual Studio installed, however - if it was dependency issue, crash would happen all the time, but it happens often, not all the time.
    Last edited: Jul 29, 2019
  17. The Iron Wolf

    The Iron Wolf Active Member

    Joined:
    May 2, 2018
    Messages:
    137
    Location:
    Bellevue, WA
    Balance:
    375Coins
    Ratings:
    +37 / 0 / -0
    My Motion Simulator:
    3DOF, SCN6
    Hi @yobuddy,

    I wanted to suggest some Game Vibe features and report some minor issues.

    The reason I got myself transducers is to get hints of when tires lock and skid. To my surprise, I did not find that in Game Vibe and, from reading docs, SimVibe cannot do that too. So there goes:
    • Feature: Individual wheel lockup hints (3D): I know for sure that rFactor 2 and Raceroom expose rotational wheel speed. On top of that, rF2 exposes exact wheel size. Combined with speed of vehicle, it should be possible to detect when the wheel is locked up and issue an effect. Information about surface under the wheel is available as well, so surface could be taken into account. Such an effect would be great addition to overall realism, because locked tire is felt very strongly in real life. Wheel lockup detection works fairly reliably in the Crew Chief, so I am pretty confident wheel lockup vibe is possible.
    • Feature: individual wheel skid. This one is trickier, but in rF2 vehicle orientation is exposed, so maybe something can be done by using direction of motion, orientation and steering values?
    • Issue: would it be possible to mute transducers when game is paused?
    Also, I wanted to ask, would it be possible to make Road Details Vibe 3D? I might be missing something, or maybe it is game/plugin issue, but I get kerbs (for example) from the Road Detail vibe. I followed Tutorial to set up my min/max ranges. (I actually do not get much info from Chassis vibe at all, but that is another topic). It would be nice if kerbs were felt on the side they are hit.

    Thank for the consideration!
    Last edited: Jul 31, 2019
  18. The Iron Wolf

    The Iron Wolf Active Member

    Joined:
    May 2, 2018
    Messages:
    137
    Location:
    Bellevue, WA
    Balance:
    375Coins
    Ratings:
    +37 / 0 / -0
    My Motion Simulator:
    3DOF, SCN6
    @yobuddy,

    I think I caught what causes GV crash on my system. I have a USB Audio card that I turn on only sometimes, to listen music (it has on/off button). So, if I ever turn on that card in Windows session, GV will crash later, even if card is off when I start game/GV. The workaround is the OS reboot.

    I am not deeply familiar with device enumeration in Windows, but, I noticed weird things around joysticks, for example. Depending on which joysticks I turn on during Windows session, some games lose assignments of buttons (what was considered Joy1 becomes Joy3, for example). I wonder, if something like that happens to the enumeration of audio devices.

    I don't suppose device Guid changes, but maybe some order number is used for audio cards known to system, somewhere in GV? Cheers!
    Last edited: Aug 1, 2019
  19. yobuddy

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

    Joined:
    Feb 9, 2007
    Messages:
    5,432
    Occupation:
    Computer Technician
    Location:
    Portland, Oregon - USA
    Balance:
    50,997Coins
    Ratings:
    +5,180 / 19 / -0
    Sure, I may work.
    But I don't think you can use the input as the trigger for the effect.
    (Like RPM does with higher numbers = more volume etc..)
    So the output effect may be a bot made up..
    It would probably take some experiments.

    Not really sure what effect you would use to make the user feel individual wheel skid?

    If the game stops sending telemetry when pause, then the system will be muted.
    (this just depends on the game a bit.)

    No, it only uses the heave input for making the sounds. (so there is simply not enough info for 3d)
    If you want top use 3D, you need to use Chassis mode.

    Sounds like a windows error to me??
    As the Guid does not change, adding sound cards should not cause any errors.

    Take care man!
    yobuddy
  20. The Iron Wolf

    The Iron Wolf Active Member

    Joined:
    May 2, 2018
    Messages:
    137
    Location:
    Bellevue, WA
    Balance:
    375Coins
    Ratings:
    +37 / 0 / -0
    My Motion Simulator:
    3DOF, SCN6
    You are right, this will require a lot of experementation. But there's not just one on/off variable. Here are variables:
    * Wheel rotation speed
    * Vehicle motion speed
    * Vehicle motion direction
    * Surface type underneath the wheel

    All that said, while I do not have a sports car with slicks to test, in regular road car locking wheel produces rumble of rather narrow frequency range, but it is strong sensation. I truly think wheel lockup vibe will be great addition. Just imagine how will it feel with ABS on - it will be very immersive. And, it will also be appreciated with ABS off, because driver will know when to ease up on the pedal.

    I do agree it will be kind of artificial, because ideally, game should simply transfer such vibration via motion physics. But, I hope you would agree, transducer stuff is more artificial in general - take Vibe gear shift effect, it isn't physics based, is it? :) Good thing is that game vibe allows on/off and volume for each effect, so it will be up to the user.

    I do not know - but suggestion comes from someone who drove GT3 car. He told me the sensation of wheel losing grip/jumping on the tarmac is strong. How to implement that, no idea - maybe something to consider on a backlog? In any case, IMHO this is lower priority compared to wheel lockup sensation.

    It does not work in rFactor 2. Pausing game leaves RPM vibe on forever. Not sure if it is plugin issue or GV. If you have access to game fields, I can tell how to detect pause state in game? One of the easiest is to test if Elapsed Time changed since last tick.

    Thanks. Specifically in rF2 I have difficulty getting any info from chassis. I used your guide for setting lo/hi, but range is very small: 0.08-0.12. Maybe game simply does not implement suspension dynamics well. EDIT: fixed this by manually setting lower bound to 0.001.

    Yes, most likely 3rd party driver issue. I'll keep rebooting my PC before GV session. I do not have much time to test, but if you ever came up with and idea of re-enumeration of audio devices or something (maybe Xaudio has some cache that needs to be invalidated?) I'll gladly test private .exe.

    Have a good weekend!
    Last edited: Aug 5, 2019