Jump to content

All my products and services are free. All my costs are met by donations I receive from my users. If you enjoy using any of my products, please donate to support me. My bare hosting costs are currently not met so please consider donating by either clicking this text or the Patreon link on the right.

Patreon

Recommended Posts

Posted

Just wanted to share my setup with VR on my cabinet and with PinballX as front end.

I could not use a single version/config of PinballX, so I ended up by installing PinballXSetup_XP_and_32bit in a different directory.
This is not ideally yet as PinballX is not aware of the VR environment, but Tom will work on that :D 


There is an awesome VP VR launcher, that is created in unity and work directly on my VR glasses, but when using this launcher I have several issues :

  • Pressing the exit button, won't exit VPX tables 
  • Tables are populate automaticlly from the VPX tables dir, but I don't see them all

Because of this 2 issues, I wanted a good and trusted front end.
 

My setup :

Full cabinet, with Real DMD, DOFlinx, Pinscape joy controller and SSF
As VR VP need some other settings than VP itself, I created some batch files and registry keys (i will discuss those later)
I didn't want to screw up my complete cabinet, because that is working fine.

Directory structure to keep all seperated :

 

C:\Pinball                                <-- Base Pinball Directory
        ..\PinballX                       <-- PinballX core for cabinet use
        ..\PinballXLegacy                 <-- PinballX XP and 32 version for VR
        ..\PinballX Database Manager      <-- Database manger to manage both PinballX versions
        ..\Visual Pinball                 <-- Complete Visual Pinball Directory (version 10.7.3 at the moment)
                       ..\Tables\VPX      <-- Directory with only VPX tables for cabinet
                       ..\Tables\VR_VPX   <-- Directory for VPX tables use in VR
        ..\Visual Pinball VR              <-- minimal VPinballX_GL.exe 10.8 version. No pinmame
        ..\Tools                          <-- All kind of tools are located here
              ..\DisplayTools\DC          <-- Easy tool to rotate screen
              ..\PBX Tools\StartScripts   <-- All my PinballX launch/start scripts

The "c:\pinball\Visual Pinball VR" only contains the VpinballX_GL_xx.x.x-xxx zip file from https://github.com/vpinball/vpinball/actions
As this is still a beta and some files are shared with Visual Pinball itself, it will be safe to have it next to each other.
NOTE : This doesn't means that the settings for key's, graphics etc are stored on 2 differences places. These are located in the registry 

As I have a real DMD that is using Freezy's DMDdevice.dll.
Within Visual Pinball the VR DMD won't work if the real DMD is running.
So using the VR, I need to disable the real DMD when launching VR and do when using cabinet, I need to enable my real DMD again.

To do this, I did the following steps :

  • Copy current DMDdevice.dll from C:\Pinball\Visual Pinball\VPinMAME to C:\Pinball\Tools\PBX Tools\StartScripts\DMDdeviceINI\dmddevice_Cabinet.ini
  • Make copy of dmddevice_Cabinet.ini to dmddevice_VR.ini
  • Change the following entries in the dmddevice_VR.ini :
    [virtualdmd]
    enabled = true
    [pindmd3]
    enabled = False

    This will show the virtual DMD on screen and disables my real DMD
    Benefit of this, that it also shows the colored DMD in the VR environment (Didn't test the alphanumeric as well, but should work as well

For playing in VR, I need to adjust some settings in Visual Pinball as well.
Settings for Visual pinball are stored in the registry under the users reg key : HKEY_CURRENT_USER\Software\Visual Pinball\VP10

If you want to be save, export the registry key and save it to a file

image.png.7d721eb330076bc54704e63a938269df.png

For VR, the main differences for Visual pinball are :

  • Disable Directb2s (as the backglass should be in the FSS mode of the table)
  • Disable Full screen mode (not sure why ...)
  • Disable antialiasing
  • Capture external DMD
  • set Max texture dimension to 3072 (instead of unlimited)

I created to reg files, with these settings (could be that you need to tweak it yourself a bit)

  • VisualPinballVR.reg (for VR mode) :
    [HKEY_CURRENT_USER\Software\Visual Pinball\Controller]
    "ForceDisableB2S"=dword:00000001
    
    [HKEY_CURRENT_USER\Software\Visual Pinball\VP10\Player]
    "FullScreen"=dword:00000000
    "FXAA"=dword:00000000
    "ForceAnisotropicFiltering"=dword:00000000
    "CaptureExternalDMD"=dword:00000001
    "MaxTexDimension"=dword:00000C00
  • VisualPinballCabinet.reg
    [HKEY_CURRENT_USER\Software\Visual Pinball\Controller]
    "ForceDisableB2S"=dword:00000000
    
    [HKEY_CURRENT_USER\Software\Visual Pinball\VP10\Player]
    "FullScreen"=dword:00000001
    "FXAA"=dword:00000001
    "ForceAnisotropicFiltering"=dword:00000001
    "CaptureExternalDMD"=dword:00000000
    "MaxTexDimension"=dword:00000000

With these files, I was easily to switch between cabinet and VR, but another issue came up :
To show PinballX on my VR, I need to enable Quest link (Air link in my case).
With Quest Link on the VR glasses and the oculus software on my PC, I can show the desktop screen in Quest Link on the VR.
But to do that, my cabinet display needs to be set in portrait mode, otherwise the VR show a landscape with a 90 degrees rotated screen, but Visual Pinball needs to run in landscape mode otherwise the Pinmame would not work in VR.

I created the following batch files :

  • InitVR.cmd
    @echo off
    C:\Pinball\tools\DisplayTools\dc\dc64cmd.exe -rotate=right
    c:\windows\system32\reg.exe import "C:\Pinball\Tools\PBX Tools\StartScripts\vpisualPinballvr.reg"
    copy "C:\Pinball\Tools\PBX Tools\StartScripts\DMDdeviceINI\dmddevice_VR.ini" "C:\Pinball\Visual Pinball\VPinMAME\dmddevice.ini" /y
    exit
  • InitCabinet.CMD
    @echo off
    C:\Pinball\tools\DisplayTools\dc\dc64cmd.exe -rotate=up
    c:\windows\system32\reg.exe import "C:\Pinball\Tools\PBX Tools\StartScripts\VisualPinballCabinet.reg"
    copy "C:\Pinball\Tools\PBX Tools\StartScripts\DMDdeviceINI\dmddevice_Cabinet.ini" "C:\Pinball\Visual Pinball\VPinMAME\dmddevice.ini" /y
    exit

     

I changed the PinballX XP and 32bit version settings.exe

Display :

image.png.2228e571923a6046abe7a78c94f38337.png

Startup script :

image.png.177e70c2e3f3a417f16010ee1c62b3d0.png
 

Visual Pinball system:

image.png.72b983c1661c109e9d0ed8ab77f53a13.png

Exit Script :

image.png.81c9225beafd847398d3693588548a8a.png
 

This means that launching PinballX XP and 32bit version, the screen will be set in portrait mode
PinballX should not rotate it (horizontal)
The DMDdevice.ini for VR will be copied to the pinmame directory
Registry settings for VR will be imported.
 

As Visual Pinball system is set to the VPX_VR tables path and the program is set to VPinballX_GL.exe, gamemanager.exe and DatabaseManager will use the correct path to search your tables.
The screen will be rotated to landscape when launching a table and will be set to portrait mode again when exiting a table.

Exiting PinballX, will set the registry keys for cabinet, use DMDdevice.ini for cabinet and rotate your screen to landscape mode 

When launching PinballX XP and 32 bit version, I can put on the VR glasses, launch Quest Link in VR and connect to the PC.
Here's  a video I tried to grab with my phone.
It gives an impression how it works. 
For some reason the top and bottom part are cut off 

 

 

  • Like 3
Posted

Just a small change.
Sometimes when launching a table, the focus was not on the table, so buttons etc didn't work.
So instead of using the Visual Pinball System, I set it to a custom System :

image.thumb.png.305a5df5e55001e1ee0c2f3a066f1850.png

This works a bit better.
Also in progress to create media to show in PinballX, but pretty hard to create them (all manually)
And for the final touch I used Scutters statistics plugin to show information and ticker :

I also changed to startup logo. Here's a small video how it looks like (I tried keep focus on the middle as the video cuts off top and bottum):

Thanks to @scuttersfor fixing and updating his statistics stats plugin

Posted

I've made a modified startup image :

image.thumb.png.f567f39aa78d53150617139d8e8e21be.png

I also made a video (thanks to @scuttersfor the morphing commands)
It just a bunch of images that I created in VR mode.
Video can be used as system, but I use them for Pinemhi tables as they are changing every week (1 normal and 2nd is just inverted in play)


 

 

  • Like 2
  • 1 month later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...