Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dabeschte/VRArmIK
Unity Inverse Kinematics solution for arms in VR
https://github.com/dabeschte/VRArmIK
animation arms inverse-kinematics unity unity3d virtual-reality vr
Last synced: 2 months ago
JSON representation
Unity Inverse Kinematics solution for arms in VR
- Host: GitHub
- URL: https://github.com/dabeschte/VRArmIK
- Owner: dabeschte
- License: mit
- Created: 2018-06-05T10:03:19.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2020-06-23T13:35:00.000Z (over 4 years ago)
- Last Synced: 2024-08-02T13:23:36.053Z (6 months ago)
- Topics: animation, arms, inverse-kinematics, unity, unity3d, virtual-reality, vr
- Language: C#
- Size: 61.5 KB
- Stars: 156
- Watchers: 13
- Forks: 19
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# VRArmIK
VRArmIK brings arms into VR without any additional tracking devices.
Using head and hand positions, the shoulders and arms are estimated to create realistic arm movements.[See the Video on Youtube](https://youtu.be/dHgH6Xsi3JQ)
# Features
* VR Tracking to Wrist and Neck estimations (currently only optimized for Oculus Touch)
* Estimates shoulder position and orientation
* 360° movement
* crouching
* distinct shoulder rotations when stretching the arms to their limits
* arm dislocation when the distance between shoulders and controllers is larger than the virtual arm
* Simple Arm IK Solver which connects shoulders with hand target positions
* Complex Elbow Angle calculations
* many variable to optimize the IK for different use cases
* prevents unrealistic hand rotations# How To Use
1. Download package from [Unity Asset Store](http://u3d.as/1d07)
2. Add PoseManager and Avatar Prefab into your scene
3. RunTake a look at the Demo scene to see a working demo.
# Tips & Tricks
1. If the code does not compile, make sure that the Scripting Runtime is set to .NET 4.6 instead of 3.5. [Unity Manual](https://docs.unity3d.com/Manual/ScriptingRuntimeUpgrade.html)
2. If the shoulders are always (or never) facing downwards, try using Unity's "Camera OFfset" with tracking mode set to "Floor" and camera Y offset set to 0. If you do so, you also need to follow the next step:
3. If the avatar is a couple of meters below your head, try setting the "Vr System Offset Height" in the PoseManager to 0.If you have any other questions, please open an issue in the [issue tracker](https://github.com/dabeschte/VRArmIK/issues).