BAM FP BAM OpenVR Guide (by TerryRed)

Future Pinball
If you use PinEvent pup-packs and pup stream, changing the Text Scaling to anything other than 100 may mess up the text for PUP DMD. It will be all wrong and zoomed in, etc.

You can disable DPI scaling on FP itself if needed (to keep it from zooming in, etc).... but I'm not sure if that will work with PinupPlayer.exe to prevent the text scaling issue if using pupdmd / pup-packs / pupstream (not required just to play PinEvent tables in VR).


BAM Open VR update - 1.5-348

Ravarcade just released a new update for BAM and BAM OpenVR. This release includes the following highlights

- includes the VR stutter fixes mentioned before
- includes a fix for ray cast shadows that affected the ambient light's shadow in VR. Sometimes it would point upward like a candle)
- includes an update for miniplayfields that allow them to report their current position in realtime (very handy for my Star Wars DSA update that's coming)
- important! includes a major fix for a long running memory leak that was causing some newer tables (such as Sonic Pinball Mania) to crash after playing for a while.

"Everyone" should update to this new BAM 1.5-348! For VR or normal FP usage.
Also I think it may include rotation of room view assigned to keycodes...but I haven't figured out how yet. This is nice for walking around the VR room , but will also be nice for unconventional games like Billiards where you need to move around the table , and for tables like Rat Race where playing across the side of the table is better.

We'll see if I can figure it out...
 
Since "everyone" should now be updating to the latest BAM 1.5-348 update that was just released (read my response on the previous page)...

....something else that most everyone can do is update FP and BAM to use up to 4 GB of ram (assuming you have 6 GB or more of ram and are using 64 bit Windows).

It is very likely that my future releases such as Silent Hill and RetroFlair 2 (maybe the new Star Wars DSA update) will "require" the 4 GB patch to run, since now it allows me to have MUCH more room to add more stuff I wanted to add. It also gives FP more room to breath, and in general it should run better with newer more demanding tables.

All the info on how to do so can be found here:

 
Last edited:
@StevOz @JonPurpleHaze @xenonph

Maybe this BAM update info/release notes should have its own thread here ?
Just for the sake of organization and not being lost in a thread that so far, is 7 pages long.
 
@StevOz @JonPurpleHaze @xenonph

Maybe this BAM update info/release notes should have its own thread here ?
Just for the sake of organization and not being lost in a thread that so far, is 7 pages long.

I'd rather it not, as this is a VR specific section, and I also link to this Topic from my other Guides, and from other VR based groups.

The first post of this topic gets updated with the latest / most relevant info regarding BAM Open VR.

If you mean the BAM release notes / updates info only.... well yah there can be a separate thread made for that where you linked. No different that any other BAM update.
 
Last edited:
Since "everyone" should now be updating to the latest BAM 1.5-348 update that was just released (read my response on the previous page)...

....something else that most everyone can do is update FP and BAM to use up to 4 GB of ram (assuming you have 6 GB or more of ram and are using 64 bit Windows).

It is very likely that my future releases such as Silent Hill and RetroFlair 2 (maybe the new Star Wars DSA update) will "require" the 4 GB patch to run, since now it allows me to have MUCH more room to add more stuff I wanted to add. It also gives FP more room to breath, and in general it should run better with newer more demanding tables.

All the info on how to do so can be found here:

I tried VRPerfKit last night which essentially is just pasting 2 files into your future pinball directory where the futurepinball.exe is it did seem to improve FPS and quality?

 
I tried VRPerfKit last night which essentially is just pasting 2 files into your future pinball directory where the futurepinball.exe is it did seem to improve FPS and quality?


Are you using it with VD? For me, if I copy the two files over (using the 32 bit version), it just causes FP to crash when the table is about to start.

Keep in mind... if you have a newer GPU like an RTX video card, things may work better for you (or just work at all) compared to non RTX cards (like me with my GTX 1080).
 
OK.... turns out..... I had to use the normal DLL instead of the 32 bit (x86) DLL. This could be the result of using the 4 GB patch on the FuturePinball.exe... but either way... just try both and use the one that works.

So it works for me, but I didn't play around with it much yet. I tried changing it to FSR, but not much else.
 
OK.... turns out..... I had to use the normal DLL instead of the 32 bit (x86) DLL. This could be the result of using the 4 GB patch on the FuturePinball.exe... but either way... just try both and use the one that works.

So it works for me, but I didn't play around with it much yet. I tried changing it to FSR, but not much else.
I used the 4 g patch and the normal DLL. I didn't play around with the settings or scientifically measure the FPS with Virtual desktop monitor overlay.

I was playing Star Wars DSA Epic with BB8 and the newest BAM

It didn't crash and played smoother IMO , it could be just the 4 g patch or this new "toolkit"
but I thought it was worth posting as some of the people on the forums using this have noted major gains in certain VR Games
 
I'd rather it not, as this is a VR specific section, and I also link to this Topic from my other Guides, and from other VR based groups.

The first post of this topic gets updated with the latest / most relevant info regarding BAM Open VR.

If you mean the BAM release notes / updates info only.... well yah there can be a separate thread made for that where you linked. No different that any other BAM update.

Not clear enough indeed but I was talking about BAM release notes, yes.
 
Also I think it may include rotation of room view assigned to keycodes...but I haven't figured out how yet. This is nice for walking around the VR room , but will also be nice for unconventional games like Billiards where you need to move around the table , and for tables like Rat Race where playing across the side of the table is better.

We'll see if I can figure it out...
I will check tonight , but Rav just updated the most recent BAM VR link on his site (still version "348")
with a new openvr.dll file that has left and right room rotation added as options to the room Move options.

I think it is just a matter of replacing the previous openvr.dll with this:
 

Attachments

  • OpenVR.zip
    143.1 KB · Views: 19
@TerryRed
Ya the new OpenVR.dll does allow rotations and it works perfectly. It is at the bottom of the Free Cam Options part of BAM menu
You can set the key and the speed of rotation. Nice !

BAM moves.jpg
 
I will post here and in the Rat Race thread as well....

I have been working on the VR version of Rat Race, here is what I have added:

1. The new VR room rotation CODE for easily rotating around the table
2. I added Steve (Polygames VR Room)
3. I coded tilt mechanics with either arrow keys or mouse moves to reconfigure based on table rotation view
4. I hope to get a 3d Rat Model that I can code with Mixamo

Heres a video where I demonstrate the new Rotation features

 
Does Rat Race work with gamepad axis? That would work nicely and similar to the real thing since gamepad thumbsticks are analogue.
 
Does Rat Race work with gamepad axis? That would work nicely and similar to the real thing since gamepad thumbsticks are analogue.
Yes
Fp allows gamepad I believe and I have an app , was it it called wsad ? that allows assigning various devices to key presses

I use the X-Arcade TankStick and it has dual joysticks and a trackball….

I configure one joystick as arrow keys (up, down,left ,right). for tilting table and the other joystick
To w,s,a,d for Bam “moves”

I find the trackball excellent which is basically a mouse and I have used the BAM code for mouse function to also tilt the the table

I prefer the trackball but both work well….the joystick feels more authentic but the trackball is smoother
 
Last edited:
@ravarcade
@TerryRed

Rav has provided Coding and an updated OpenVR.dll that allows rotation of the VR game room with a center of rotation that can be altered in game to rotate around any objects and miniplayfields ! For billiards I can now enable the rotation around the Cue Ball for aiming. It works great but I need to refine my process.
but here is a demo on my previous Billiards table that requires serious rescaling of all objects for the VR experience but it will give you an idea.

Code:
Added command: CenterRoom x, y, z
Note: That x,y,z are not in FP coord system. It is internal 3D system, where position 0,0,0 is center of table playfield. X axis direction is sams as FP, but Y is Z and Z is Y....

To make life easier, there in demo table there is helper function to convert coords systems:
Code:
Sub SetCenterRoom(ByRef item, z)
    If os Is Nothing Then Exit Sub
    Dim w : w = xBAM.Table.Width
    Dim h : h = xBAM.Table.Length
    os.CenterRoom item.X - w * 0.5, z, item.Y - h * 0.5
End Sub
This function have 2 args, first is any object with X and Y property. So, it may be any FP object with coords X, Y or xBAM.Ball.Position or MP.currentPosition. Second arg is Z axis. My adivce it to keep Z = 0, because it you change it in room scale VR you will move floor up, down. That may be very confusing.

Samples how to set new room center:
Code:
SetCenterRoom MP1.CurrentPosition, 0
SetCenterRoom MP1.TrackedBall.Position, 0
SetCenterRoom MP1.TrackedBall.PositionGlobal, 0
SetCenterRoom Bumper1, 0
SetCenterRoom xBAM.Ball.Position, 0

Rav provided a demo "table" with the VR room rotating around a ball. You have to been in VR to appreciate its effects.
Attached below with the OpenVR.dll ( Rav has updated the BAM OVR link on his site with this)


Thanks RAV !!!
View attachment VR pool.mp4
 

Attachments

  • OpenVR-beta.zip
    181.4 KB · Views: 13
Last edited:
I need a little help and I've read and searched til my eyes are about bleeding. I have VPVR running and looking good so I decided with the release of Terry's Sonic table with the Fizx I'd give FP VR a try. After a long night of fiddling - several things went wrong. The MAIN problem I have is that (this is hard to describe - bear with me) the ball itself - the sign that rotates - the propeller on the drain plane - flashing dmd letters etc all look to be 'out of sync' ? When the ball is moving it's almost transparent making it very hard and uneasy to play. When it stops it's solid. When it moves it looks abnormal. Hard to describe. I have a Quest 2 and a 3080 and changed everything according to this guide and even tried some other options - lighting etc, but nothing fixed it. Then I broke it further, but lets start with this main problem. I have tried both fizx options 1 and 2 as well.
 
I need a little help and I've read and searched til my eyes are about bleeding. I have VPVR running and looking good so I decided with the release of Terry's Sonic table with the Fizx I'd give FP VR a try. After a long night of fiddling - several things went wrong. The MAIN problem I have is that (this is hard to describe - bear with me) the ball itself - the sign that rotates - the propeller on the drain plane - flashing dmd letters etc all look to be 'out of sync' ? When the ball is moving it's almost transparent making it very hard and uneasy to play. When it stops it's solid. When it moves it looks abnormal. Hard to describe. I have a Quest 2 and a 3080 and changed everything according to this guide and even tried some other options - lighting etc, but nothing fixed it. Then I broke it further, but lets start with this main problem. I have tried both fizx options 1 and 2 as well.
I have Quest2
Are you using virtual desktop ?
Does a simpler table play ok in vr?

I always start with the simple “new table” and see if that runs
 
Forgot that tidbit. I'm using a cable. I tried the open composite dll and it errored out so I went back to having to use steamvr. ( I know those are details that I omitted.) Yes to your third question - the problem is there on other tables too. It's not just the ball - it's just more apparent because the ball moves so quickly. Like I said - any quick movement - like the rotating sign or the propeller causes it too. The PLANE does not - the propeller does. ?
 
Forgot that tidbit. I'm using a cable. I tried the open composite dll and it errored out so I went back to having to use steamvr. ( I know those are details that I omitted.) Yes to your third question - the problem is there on other tables too. It's not just the ball - it's just more apparent because the ball moves so quickly. Like I said - any quick movement - like the rotating sign or the propeller causes it too. The PLANE does not - the propeller does. ?
Do you have high speed internet?
If so virtual desktop is the way to go

Opps this is the thread
 
Do you have high speed internet?
If so virtual desktop is the way to go

Opps this is the thread
A picture or video would help
And a screen shot of bam menu settings….
 
I have gigabit and Wifi 6 - I just thought it was best to plug directly in. I'm certainly willing to give that a go. I'll be surprised if it's my saving grace, but I'll try anything.
Unfortunately THIS thread has the most information and troubleshooting answers I've found so far.
I don't think what I'm viewing will show up with the screen captured - it would have to be video. I'll try to make that happen and report back.
 
I have gigabit and Wifi 6 - I just thought it was best to plug directly in. I'm certainly willing to give that a go. I'll be surprised if it's my saving grace, but I'll try anything.
Unfortunately THIS thread has the most information and troubleshooting answers I've found so far.
I don't think what I'm viewing will show up with the screen captured - it would have to be video. I'll try to make that happen and report back.
Virtual desktop has a ton of options for enhancing things

BAM has a snapshot key and you can take a snap of your BAM menu settings

Press Q to bring up menu
 
Doesn't oculus have a mirror option so you can see what's going on the monitor?

I think by default you just need to press PrtScr on your keyboard to take a screenshot and that it takes the screenshot of what is being rendered regardless of the output device and if BAM menu is opened it will be included as well.

screenshots are saved in drive:\pathTo\FPInstall\BAM if I'm not mistaken
 
I'm back. I've been fighting this son of a gun all night, BUT --- I have info. I redid everything to the letter in this post including nvidia settings all bam etc and I connected with Virtual Desktop. Guess what? When I record the video it's not ON the video. So it's something happening between the render and my headset. /sigh SO I can't show you what it's doing. (unless you come over, lol) Secondly - I decided to try again on the open composite. Same error and when I do research on it - no one has ever given a fix other than - your headset wasn't ready. Well.... it was. So any other information I can get for you fellas?
 

Attachments

  • Open Composite.jpg
    Open Composite.jpg
    119.4 KB · Views: 15
Here's the video even though it's absolutely no help. I was flipping the flippers like this because it was happening quite badly with the flppers - a little less so with the ball on this table because it's not particularly fast. You can see however that it looks reasonably normal.
 

Attachments

  • VirtualDesktop.Android-20220818-203619.mp4
    23.6 MB
General chit-chat
Help Users
You can interact with the ChatGPT Bot in any Chat Room and there is a dedicated room. The command is /ai followed by a space and then your ? or inquiry.
ie: /ai What is a EM Pinball Machine?
  • No one is chatting at the moment.
      Chat Bot Mibs Chat Bot Mibs: qinnuendo has left the room.
      Back
      Top