Using a Leap Motion Controller from Ultraleap for finger tracking in VRChat without mods

Overview

Leap Motion Controller finger tracking for VRChat OSC

Using a Leap Motion Controller from Ultraleap for finger tracking in VRChat without mods.

Description

This project uses two npm packages, leapjs and node-osc, to send finger tracking data from a Leap Motion Controller to VRChat via OSC.

leapmotion-osc.mp4

Getting Started

Dependencies

Installing

  • Make sure that your operating system has NodeJS installed and can execute npm commands.
  • Clone the repo and run npm install in its root directory.

Executing program

  • Run the script with npm start.

Additional notes

The default mode for the controllers is optimizeHMD, if you want to use this on a flat surface instead, make sure you set optimizeHMD:true to optimizeHMD:false at the very beginning of the Leap.loop function.

Avatar Setup

Your avatar receives OSC inputs for 10 float parameters that you need to add to your avatar. You also need to create or use the animations provided in the animations repo folder to create blendtrees that transition from the retracted to the extended state of each finger.

  • leftThumb (float)
  • leftIndex (float)
  • leftMiddle (float)
  • leftRing (float)
  • leftPinky (float)
  • rightThumb (float)
  • rightIndex (float)
  • rightMiddle (float)
  • rightRing (float)
  • rightPinky (float)

To do this, I created two layers in my gesture layer (one hand each) and added a custom bool parameter called "leapmotion" to turn OSC value playback on and off ingame. I recommend using a threshold of 0.4 to 0.9 for the blendtrees, as I have had the best results with this. Please note that the animations provided in the repo are customized to my avatar and have not been tested on other avatars yet. In the worst case you will have to set up the animations and blendtrees yourself.

image

image

You can edit my code at any time to add or remove prefixes or change the name of the fingers as you like.

Contributors

Zedzeen

Version History

  • 1.0.1
    • split distance calculation and OSC sending to separate functions
  • 1.0.0
    • Pull changes from Zedzeen, cleanup code, update license
  • 0.1
    • Initial Release

License

MIT License: Check the LICENSE file

Comments
  • windows defender detected a trojan

    windows defender detected a trojan

    when running the 1.0.3 windows exe, defender warned me of a severe trojan threat. virustotal says the same: https://www.virustotal.com/gui/file/4c7959375e5229106a02383aca38f811456ce0d27c3a4b9a737ab065a47292a2

    what's up with that? :)

    wontfix 
    opened by loremgetsum 2
  • finger spread

    finger spread

    f2 f https://github.com/SDraw/ml_mods_vrc it used to be have one simple plug and use and one day vrc decide to kill every mod i already have valve index but i still want leap and finger spread on it sorry for bothering you and stealing photo form some weird site i know nothing about coding :/

    duplicate 
    opened by somecat2015r 1
  • Does this support hand tracking from the Leap Motion as well? + Can we have a tutorial

    Does this support hand tracking from the Leap Motion as well? + Can we have a tutorial

    Does this support hand tracking?

    Can we also have a tutorial on this :)? I believe I set up everything correctly, but I don't see my hands moving nor fingys.

    documentation question 
    opened by NataIynn 1
  • Why is it so hard to do?

    Why is it so hard to do?

    could you leave a tutorial, currently the app itself is working I just can't get my vrc model to do what it's supposed to, otherwise the program might not be accessing my camera pls help!

    documentation help wanted 
    opened by lawlerboy1 1
  • Finger Splay?

    Finger Splay?

    Hello! I created this to check if it's possible to get finger splay data over OSC also? One of the old VRC mods that supported the Leap Motion could provide only splay data for an animator to use with the raw hand and finger position from the Index Controllers.

    I assume the library supports it and if the data is accessible I would be happy to file a PR to add it.

    enhancement 
    opened by bluejorts 1
Releases(release-1.0.3)
Owner
adeleine
Pidgin Signed English (PSE) / EN / RU
adeleine
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Mi Band/Amazfit heart rate monitor with OSC integration for VRChat

Mi Band/Amazfit OSC heart rate monitor for VRChat By Vard Based on Jaapp-'s miband-5-heart-rate-monitor and gzalo's miband-6-heart-rate-monitor Thanks

Vard 34 Jan 1, 2023
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
Extra modifications and enhancements for Discord Bot Maker. Mods you won't find on the DBM Network!

DBM Extended is a open source project meant to enhance and extend Discord Bot Maker. Downloads This repository is not meant to be downloaded or cloned

DBM Extended 11 Oct 10, 2022
Plugin builder that compiles to several different discord client mods.

Builder Plugin builder that compiles to several different discord client mods. Supports Powercord Unbound Asstra BetterDiscord Installation git submod

Strencher 5 Dec 1, 2022
Este projeto acelara o desenvolvimento com express, gerando uma estrutura completa e opções de gerar controller mode e view pelo cmd.

fast-developer-express Este projeto acelara o desenvolvimento com express, gerando uma estrutura completa e opções de gerar controller mode e view pel

Rodrino Adolfo Kupessala 1 Dec 21, 2021
A first person character controller for the Three.js graphics library

charactercontroller A first person character controller for the Three.js graphics library Demo Installation npm install charactercontroller Usage impo

Malted 10 Aug 17, 2022
View component and controller of YouTube Player API, for fresh framework.

fresh-youtube View component and controller of YouTube Player API, for fresh framework. Try it now! git clone [email protected]:otiai10/fresh-youtube.git

Hiromu OCHIAI 10 Nov 2, 2022
GPU Drops' captcha solving extension without affiliate tracking code injection

Noptcha, without affiliate link injection Noptcha is a reCaptcha and hCaptcha solving extension created by GPU Drops. This fork was made because I hat

Sqaaakoi 201 Dec 26, 2022
This shows NFT tracking in the certain wallet using express back-end.

nft-tracking-for-solana-wallet Express backend for NFT tracking in the certain wallet. Webhook for scraping secondary marketplace information for part

null 10 Nov 16, 2022
A react and framer motion app to play some quizzes !

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: ya

Belkacem Berras 2 Jan 7, 2022
Portfólio de projetos pessoais feito com NextJs e lib de animação Framer Motion

Portfólio - Carlos Amorim Esse portfólio foi criado para mostrar meus projetos e habilidades. ?? Projeto criado com as seguintes tecnologias: ✔️ NextJ

Carlos Amorim 13 May 12, 2022
My personal website built with Next.js, TypeScript, twin.macro, Framer Motion, MDX and deployed on Vercel.

chrvaskos.com My personal website / blog built with some of my favorite technologies where I can showcase my work and write articles about anything ne

Vasilis Christoforidis 4 Mar 25, 2022
Careers page made with Next.js, Framer Motion & Tailwind CSS

Careers Page Tech Stack: Next.js / Framer Motion / Tailwind CSS This is a Next.js project bootstrapped with create-next-app. Getting Started First, ru

Jack Latimer 7 Nov 16, 2022
A 3rd year University physics project for simulating satellites motion in orbit.

Satellite Simulator VI - Deluxe Edition A university physics project for simulating satellites in orbit. Installation instructions Clone the git repos

Rami Sabbagh 8 Jun 26, 2022
Experiment with motion blur website scrolling

Motion Blur Scrolling demo I've created this demo to see if it's possible to achieve more 'smooth' motion experience of scrolling and any other moveme

Adam Pietrasiak 29 Nov 30, 2022
Lightweight JavaScript library that allows you add motion blur to your CSS animations

MotionBlurJS For more information and examples please visit: https://www.motionblurjs.com What is MotionBlurJS MotionBlurJS is a lightweight JavaScrip

Adir 52 Oct 6, 2022