1
0
mirror of https://github.com/xiaopeng12138/MaiDXR.git synced 2024-11-14 16:17:35 +01:00
VR Arcade Simulator
Go to file
2022-08-11 17:07:27 +02:00
.gitignore update framework and add more button 2022-02-15 00:37:33 +01:00
CHANGES.md update changes 2022-03-15 20:01:14 +01:00
LICENSE Initial commit 2022-01-05 19:32:56 +01:00
README_zh.md Update README_zh.md 2022-04-02 00:55:11 +02:00
README.md Update README.md 2022-04-08 19:04:50 +02:00

MaiDXR

Open Source VR Arcade Simulator

Chinese 中文 README

About this project

  • This project is an update of https://github.com/xiaopeng12138/MaiMai-VR.
  • Support DX version or above
  • The model is almost 1:1 to DX cabinet/framework
  • Native touch input and light outupt
  • 90hz or 120hz capture (Bitblt) (Thanks @Thalesalex for the recommendation)
  • Customizable haptic feedback
  • 3rd person camera and smooth camera
  • 4 customizable buttons (+ 1 select button)
  • only 1 player

Inspired by

Used repository

Build requirements

  • Current Unity version: 2020.3.30f1
  • InputSimulator (You need to extract the .dll file and put it in to assets folder)
  • uWindowCapture (just import/install it on your unity project)

Supported platform

  • All SteamVR device
  • All Oculus device
  • Tested on Quest 2 through Oculus link (Native and via SteamVR) and ALVR (via SteamVR). The Hand Balls position is by default adjusted for the Quest 2 controller.

Declaimer

  • This project is non-profit and some resources came from Internet!
  • Although this is under the MIT license, do not use this in commercial/profitable scenarios!
  • Please support your local arcade if you can!

Changelog

Please see Changes.md

How to use

  • Get game somehow and make sure it will run properly. (DO NOT ASK ANYTHING THAT IS DIRECTLY RELATED TO THE GAME IT SELF)
  • Download latest version of MaiDXR
  • Download and install com0com
  • Configure com0com to bind COM3 and COM5 (it must be these two ports), COM4 and COM6 is optional (bind them will make your startup process faster).
  • You must enable the enable buffer option in com2com on both ports of all pairs. Otherwise, your MaiDXR will crash after the Unity logo.
  • Disable DummyTouchPanel in xxxx.ini.
  • If you need button light, pls bind COM21 to COM51 (it must be these two ports)(Do not disable DummyLED!).
  • Run the game in window mode by adding Unity Standalone Player command line arguments in xxxxx.bat and make sure there is no black bar. Recommend setting for 1080p display: "xxxxxx.exe -screen-fullscreen 0 -screen-width 1170 -screen-height 1050"
  • Start MaiDXR.
  • Enable somehow Test mod then exit Test mode.

Configuration

In MaiDXR window press "M" on the keyboard to toggle local motion on-off.

Edit Settings.json file under the root directory. Press F5 in the MaiDXR window or defocus then focus window again to update settings.

HandSize, HandPosition, PlayerHigh: in CM

CaptureFrameRate, TouchRefreshRate: in FPS

Capture1PlayerOnly: true (9:16 aspect ratio) or false (default) (2*9:16 aspect ratio)

CameraSmooth: 0.0 - 1.0, 1.0 = no smoothing

CameraFOV: in degree

CameraPosition: in M

To enable 3rd person mod: set CameraSmooth to 0 then move your headset to where your camera wants to be. Then focus/select MaiDXR window to lock position. You can show your head by enabling the setting below.

ShowHeadCube: true or false

HapticDuration: in second

HapticAmplitude: 0.0 - 1.0, 1.0 = max vibration

SelectButton and Button(1-4: top to bottom): Pls see VK Code. Some keys do not require "VK_" at the beginning.

Preview

Image Capture

ToDo

  • √ Add user-adjustable settings (controller position etc.)
  • √ Add non-VR window and camera smooth
  • √ Add button light
  • √ Add button vibration
  • √ Add 3rd person camera
  • Add 2p
  • √ Add custom button
  • √ Support 1p only capture
  • Add visual touch and button feedback
  • Add in game setting panel

Huge thanks to HelloKS and derole1

If you want to add any function pls commit PR, I will accept it as soon as possible and make a new build/release.