diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 021860a..4d00cf8 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -28,7 +28,7 @@ jobs: pip install -r requirements.txt - name: Build with pyinstaller - run: pyinstaller --add-binary "./owo/OWO.dll;OWO.dll" --onefile --distpath ./build --name=vrc-owo-suit main.py + run: pyinstaller --hidden-import=clr --add-binary "./owo/OWO.dll;owo" --onefile --distpath ./build --name=vrc-owo-suit main.py - name: Deploy EXE uses: actions/upload-artifact@v3 diff --git a/README.md b/README.md index d70d7ff..a0ff926 100644 --- a/README.md +++ b/README.md @@ -13,8 +13,25 @@ A python application for VRChat players to use OWO Suits in game Head over to the [Releases](https://github.com/uzair-ashraf/vrc-owo-suit/releases) page to get the latest release. -- Download the executable and run it after you start VRChat. -- Download the Unity Package and add the Prefab to your avatar. ([More Instructions](#setting-up-your-avatar) on this below) +1. Download the executable. + +1. Download the Unity Package. + +1. In the same directory where you put your executable, create a new file named `vrc-owo-suit.config.json`. + +1. In `vrc-owo-suit.config.json` paste the following values: + + ```json + { + "server_port": 9001, + "owo_ip": "YOUR OWO SUIT'S IP ADDRESS HERE" + } + ``` + +1. In your OWO Suit's application, copy the IP Address and replace the provided value in the `owo_ip` property. + + +1. Open your Unity Project and open the provided Unity package. ([More Instructions](#setting-up-your-avatar) on this below) ## Contributing @@ -24,7 +41,7 @@ Head over to the [Releases](https://github.com/uzair-ashraf/vrc-owo-suit/release - Python 3.10.9 - Windows 10 -- OWO Suit +- OWO Suit or Visualizer 1. Clone the repository @@ -51,10 +68,55 @@ Head over to the [Releases](https://github.com/uzair-ashraf/vrc-owo-suit/release ## Setting up your avatar +If this your first time working with OSC head over to the [VRChat docs to learn more](https://docs.vrchat.com/docs/osc-overview). + +This doc assumes you have a Unity Package with an avatar already set up to be published to VRChat along with some knowledge of how to use Unity. + +1. Head over to the [releases](https://github.com/uzair-ashraf/vrc-owo-suit/releases) page and download the unity package from the latest release. + +1. Open your Unity Project with your avatar. + +1. Import the unity package from the latest release. + +1. In the toolbar click `Shadoki > OWOSuit`, add your avatar to the field, and click add. + +

+ +

+ +1. Place the newly generated game objects in the armature of your avatar. In a future update I expect to automatically place them in the generation, but for the initial release you will have to do it manually. Keep in mind the names of your bones may differ, but their placements should just match where they would be on your body. + + - Place both `owo_suit_Lumbar_R` and `owo_suit_Lumbar_L` into your Hip Bone. + +

+ +

+ + - Place `owo_suit_Abdominal_R`, `owo_suit_Abdominal_L`, `owo_suit_Dorsal_R`, and `owo_suit_Dorsal_L` into your Spine Bone. + +

+ +

+ + - Place `owo_suit_Pectoral_L` and `owo_suit_Pectoral_R` into your corresponding Breast bones. If you do not have Breast bones, then your Chest bone will suffice. + +

+ +

+ + - Place `owo_suit_Arm_R` and `owo_suit_Arm_L` into your corresponding UpperArm bones. + +

+ +

+1. Every avatar is different in size therefore every avatar's collissions will be different. Go through each game object starting with `owo_suit` and adjust the `VRC Contact Receiver` script to change the size of the capsule collider. This is where the detection will occur, so you can make the area for each collision bigger or smaller if you'd like. -## Notes + In the example below you can see that this contact is for the right abdomen. I adjusted the capsule size to map out the right portion of the abdomen. + +

+ +

-So it looks like when I send a sensation it cancels out the previous one -Looks Like what I'll have to do is keep track of what sensations are in contact, and if they end up being triggered then I can chain them directly \ No newline at end of file +1. If you are having trouble getting the OSC program to communicate with VRChat, checkout this troubleshooting doc that Wizard wrote for their TTS App: https://github.com/VRCWizard/TTS-Voice-Wizard/wiki/OSC-Troubleshooting diff --git a/img/screenshot-abdominal.png b/img/screenshot-abdominal.png new file mode 100644 index 0000000..fec2a47 Binary files /dev/null and b/img/screenshot-abdominal.png differ diff --git a/img/screenshot-arm.png b/img/screenshot-arm.png new file mode 100644 index 0000000..92c9f1b Binary files /dev/null and b/img/screenshot-arm.png differ diff --git a/img/screenshot-contacts.png b/img/screenshot-contacts.png new file mode 100644 index 0000000..75aa440 Binary files /dev/null and b/img/screenshot-contacts.png differ diff --git a/img/screenshot-install.gif b/img/screenshot-install.gif new file mode 100644 index 0000000..d1cdfb8 Binary files /dev/null and b/img/screenshot-install.gif differ diff --git a/img/screenshot-lumbar.png b/img/screenshot-lumbar.png new file mode 100644 index 0000000..bbd267d Binary files /dev/null and b/img/screenshot-lumbar.png differ diff --git a/img/screenshot-pectoral.png b/img/screenshot-pectoral.png new file mode 100644 index 0000000..49a0d7e Binary files /dev/null and b/img/screenshot-pectoral.png differ