1
0
mirror of https://github.com/xiaopeng12138/MaiDXR.git synced 2024-11-30 13:44:28 +01:00
MaiDXR/README.md

128 lines
5.4 KiB
Markdown
Raw Normal View History

2022-01-05 19:32:56 +01:00
# MaiDXR
2022-01-09 03:43:57 +01:00
Open Source VR Arcade Simulator
2022-08-20 22:09:26 +02:00
2022-10-09 04:41:23 +02:00
Discord: [Discord](https://discord.gg/4aFV5QJWN5)
2022-01-05 20:09:02 +01:00
2022-04-02 00:54:30 +02:00
[Chinese 中文 README](https://github.com/xiaopeng12138/MaiDXR/blob/main/README_zh.md)
2022-04-02 00:49:45 +02:00
2022-08-26 02:42:44 +02:00
2022-08-26 03:44:23 +02:00
**About this project**
2022-08-26 02:42:44 +02:00
---
2022-02-01 18:26:02 +01:00
- This project is an update of https://github.com/xiaopeng12138/MaiMai-VR.
2022-03-08 01:00:38 +01:00
- Support DX version or above
- The model is almost 1:1 to DX cabinet/framework
2022-10-07 17:56:47 +02:00
- Using native touch input and light outupt
2022-03-08 23:54:53 +01:00
- 90hz or 120hz capture (Bitblt) (Thanks @Thalesalex for the recommendation)
2022-03-08 01:00:38 +01:00
- Customizable haptic feedback
- 3rd person camera and smooth camera
2022-08-19 21:37:56 +02:00
- 3 customizable buttons
2022-01-05 20:09:02 +01:00
2022-08-26 02:42:44 +02:00
2022-08-26 03:44:23 +02:00
**Preview**
2022-08-26 02:42:44 +02:00
---
<img src="https://github.com/xiaopeng12138/MaiDXR/blob/main/PreviewImage/MaiDXR_PreviewImage.png?raw=true" width="250" />
2022-08-26 03:44:23 +02:00
**Inspired by**
2022-08-26 02:42:44 +02:00
---
2022-01-05 20:43:34 +01:00
- https://github.com/derole1/MaiMai-VR
- https://github.com/HelloKS/MaiMai-VR
2022-01-05 20:09:02 +01:00
2022-08-26 02:42:44 +02:00
2022-08-26 03:44:23 +02:00
**Used repository**
2022-08-26 02:42:44 +02:00
---
- [MaiMai-VR](https://github.com/HelloKS/MaiMai-VR)
- [Mai2Touch](https://github.com/Sucareto/Mai2Touch)
- [MrcXrtHelpers](https://github.com/TonyViT/MrcXrtHelpers)
- [uWindowCapture](https://github.com/hecomi/uWindowCapture)
- [uNvEncoder](https://github.com/hecomi/uNvEncoder)
- [uNvPipe](https://github.com/hecomi/uNvPipe)
- [uPacketDivision](https://github.com/hecomi/uPacketDivision)
- [WACVR](https://github.com/xiaopeng12138/WACVR)
2022-08-19 21:37:56 +02:00
2022-08-19 22:28:41 +02:00
**Special thanks to [@V17AMax](https://github.com/V17AMax) for the beautiful logo and designs**
2022-01-05 20:09:02 +01:00
2022-08-26 03:44:23 +02:00
**Build requirements**
2022-08-26 02:42:44 +02:00
---
- Current Unity version: 2021.3.8f1
2022-02-26 21:39:20 +01:00
2022-08-26 03:44:23 +02:00
**Supported platform**
2022-08-26 02:42:44 +02:00
---
- All SteamVR device (IndexHTCOculus)
- All Oculus device (Oculus Desktop App)
2022-03-04 21:34:27 +01:00
- 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.
2022-01-05 20:09:02 +01:00
2022-08-26 03:44:23 +02:00
**Declaimer**
2022-08-26 02:42:44 +02:00
---
2022-01-05 20:44:58 +01:00
- This project is non-profit and some resources came from Internet!
2022-01-29 18:30:21 +01:00
- Although this is under the MIT license, do not use this in commercial/profitable scenarios!
2022-01-05 20:44:58 +01:00
- Please support your local arcade if you can!
2022-01-05 20:09:02 +01:00
2022-08-26 02:42:44 +02:00
2022-08-26 03:44:23 +02:00
**Changelog**
2022-08-26 02:42:44 +02:00
---
2022-01-05 20:09:02 +01:00
Please see Changes.md
2022-08-26 02:42:44 +02:00
2022-08-26 03:44:23 +02:00
**How to use**
2022-08-26 02:42:44 +02:00
---
2022-04-02 00:14:23 +02:00
- Get game somehow and make sure it will run properly. (DO NOT ASK ANYTHING THAT IS DIRECTLY RELATED TO THE GAME IT SELF)
2022-01-05 20:09:02 +01:00
- Download [latest version of MaiDXR](https://github.com/xiaopeng12138/MaiDXR/releases)
- Download and install [com0com](https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/powersdr-iq/setup_com0com_W7_x64_signed.exe)
2022-02-01 18:26:02 +01:00
- 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 com0com on both ports of all pairs. Otherwise, your MaiDXR will crash after the logo.
2022-08-19 21:37:56 +02:00
- Disable DummyTouchPanel in mai2.ini.
2022-02-27 14:04:51 +01:00
- If you need button light, pls bind COM21 to COM51 (it must be these two ports)(Do not disable DummyLED!).
2022-04-02 00:18:11 +02:00
- Run the game in window mode by adding [Unity Standalone Player command line arguments](https://docs.unity3d.com/Manual/PlayerCommandLineArguments.html) 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"
2022-08-19 21:37:56 +02:00
- Start MaiDXR first then start the game.
- If your touch is not working, try to enable somehow Test mod then exit Test mode.
2022-01-05 20:09:02 +01:00
2022-08-26 02:42:44 +02:00
2022-08-26 03:44:23 +02:00
**Configuration**
2022-08-26 02:42:44 +02:00
---
2022-08-19 21:37:56 +02:00
The green button on the bottom of the cabinet is lock button. Long press it will disable all unnecessary buttons, controller pointer, and the config panel.
2022-01-26 00:17:26 +01:00
2022-08-19 21:37:56 +02:00
You can adjust all settings in the config panel or via config.json. The changes of config.json will only apply after the MaiDXR reboot.
2022-02-01 18:26:02 +01:00
2022-08-19 21:37:56 +02:00
If you want to adjust the settings, please take a step back. The controller pointer will automatically be disabled when the controller are too close to the cabinet.
2022-03-04 21:28:25 +01:00
2022-08-19 21:37:56 +02:00
Some configs in config.json are only the index of the dropdown.
2022-03-04 21:28:25 +01:00
2022-08-19 21:37:56 +02:00
You can use the pointer to point the third-person camera and grab it to the position where you want to be.
2022-01-26 00:17:26 +01:00
2022-08-26 03:44:23 +02:00
**Multiplayer Configuration**
2022-08-26 03:38:31 +02:00
---
All the settings related to multiplayer are inside config.json.
2022-08-26 03:55:07 +02:00
- **HostIP:** IP address of the host to be connected by the client, supports IPV4/6. IPV6 format: **HostIP: "[fe80::1145:1400:1919:8100]"**
2022-08-26 03:38:31 +02:00
- **HostPort:** the port of the host, also the port to which the client will connect. The protocol is UDP.
- If you need to forward the port on top of the router, you only need to forward one of the above UDP ports.
**EncoderSetting:**
- **bitRate:** bit rate (unit: bit; default: 196608)
- **frameRate:** frame rate (in FPS; default: 24)
- **maxFrameSize:** maximum single frame size (unit: bit; default: 8192)
- **ResolutionDivider:** Reduce the encoding resolution, i.e. the input window screen resolution. Does not affect the local display. Inputting 2 will divide the window's width and height by 2. (default: 2)
**Too high bit rate and resolution will cause all kinds of lag and issues, it is recommended to divide the resolution by 3 and adjust the frame rate to less than 20 fps, which can solve the problem of compression mosaic and encoding lag to some extent.**
2022-02-17 00:35:29 +01:00
2022-08-26 03:44:23 +02:00
ToDo
2022-08-26 02:42:44 +02:00
---
2022-01-26 00:28:06 +01:00
- √ Add user-adjustable settings (controller position etc.)
2022-01-19 15:05:10 +01:00
- √ Add non-VR window and camera smooth
2022-02-17 00:35:29 +01:00
- √ Add button light
2022-02-04 15:50:57 +01:00
- √ Add button vibration
2022-03-04 21:28:25 +01:00
- √ Add 3rd person camera
- √ Add 2p
2022-02-17 00:35:29 +01:00
- √ Add custom button
2022-04-06 13:56:25 +02:00
- √ Support 1p only capture
- √ Add in game setting panel
2022-08-19 21:37:56 +02:00
- Add Multiplay
- Add visual touch and button feedback
2022-01-05 20:09:02 +01:00
2022-08-26 02:42:44 +02:00
Huge thanks to HelloKS, derole1, hecomi, V17AMax, and every one in BSAH
2022-03-24 17:54:03 +01:00
2022-08-26 03:44:23 +02:00
If you want to add any function pls commit PR, I will accept it as soon as possible and make a new build/release.