Sandbox repository for SteamVR.
This sandbox repository is moving forward with the goal of creating a VR game as the main.
- Unity 2019.2.x
- Arktoon Shaders (used in Avatar Material)
- DynamicBone (used in Avatar)
- Final IK (required)
- SteamVR Plugin (required)
- Vive Stereo Rendering Toolkit (required)
- Applying patch to SteamVR Input
- You must apply this Pull Request to your copy of SteamVR Unity Plugin
Each scene has a new implementation added to implemented in the previous scene (Rows above the table).
For example, AvatarCalibration
includes VRMirror
implementations.
If you want to try all implementations in this repository, play the last scene.
Scene Name | Description | Status |
---|---|---|
001_VRMirror |
Mirror in VR World | OK |
002_AvatarCalibration |
Calibrate VR Avatar by Player Height | OK |
003_IndexControllerFingerTracking |
Finger Tracking by Valve Index Controller inputs | OK |
004_FingerTrackingWithAnimation |
Finger Tracking by Valve Index Controller with Animation Controller | OK |
005_FingerEmotions |
Face Emotions using finger pose | OK |
006_SteamVRCustomInputModule |
Implementation of Input Module for SteamVR | OK |
007_FullBodyTracking |
Full Body Tracking with extra Vive Trackers | WIP |
If you want to use your own (original/purchased) 3D model, please configure it as following steps:
- Attach
VRIK
component to your own 3D model and configure it.- For some Solver values, set the following values:
Solver/Spine/Head Target
:SteamVRObjects/[CameraRig]/Camera/Head_Target
Solver/Left Arm/Target
:SteamVRObjects/[CameraRig]/Controller (left)/LeftHand_Target
Solver/Right Arm/Target
:SteamVRObjects/[CameraRig]/Controller (right)/RightHand_Target
- For some Solver values, set the following values:
- Replace
Animator
,Transform
andIK
values set in theWorld/VR_Player
with your own 3D model. - The ViewPosition of the
AvatarCalibrator
needs to be set to an optimal value for each 3D model.- Examples
- Quiche :
(x, y, z) = (0, 1.22, 0.19)
- Shapell:
(x, y, z) = (0, 1.18, 0.155)
- Quiche :
- This is the same value as the View Position setting on VRChat Avatar Descriptor. However, the Z value uses +0.1f.
- Examples
- In the scene after
FingerTrackingWithAnimation
, attach theIKPass
component to 3D model as shown in the image.
This project may be contain some bugs.
You can tracked bugs in issues.
This project is licensed under the MIT license.
However, Assets/Booth/Shapell
and below files are licensed separately.
Please refer to the distributor for details.
This repository uses "Shapell" that published in CC0 as an example of a 3D model.
You can download original 3D model from here.