Grapple 2.0
An open-source framework specialized in hand tracking for Unity.
Project Overview
Grapple is an open-source framework, the overarching objective of which was to build a universally adaptable hand tracking framework. This was achieved by managing unique data structures for joint information tracking from devices like the Oculus Quest 2 and Pro using the XRHands package, and developing an interaction toolkit for our core framework to facilitate application interactions.
My Role
During my tenure as an intern at Rhinox, I took a leading role in the development of Grapple 2.0 in collaboration with Glenn Quintyn. My responsibilities included the Gesture system and hand visualization components in the Grapple 2.0 Core, and I played a major role in constructing most of the interactable system in the Interaction Toolkit, including the Interactable manager, group, base interactables, and all lever types.
Key Features
Grapple 2.0 Core includes:
- Joint management
- Hand visualization
- Gesture recognition
- Extension methods for Unity types
Grapple 2.0 Interaction Toolkit encapsulates:
- Interactable system
- Teleport functionality
- Mesh baking functionality
- 3D math functions
- Gizmo extensions to generate 3D shapes in the scene view
Release
I took the initiative to produce comprehensive documentation to accompany the release of both packages, starting with XML and later converting it into a Markdown file using ModularDoc . To make the documentation accessible, I hosted it on GitHub Pages after researching GitHub Pages and Jekyll. I also ensured the packages were publicly accessible and could be directly imported into Unity.
Links
Reflections
Working on the development of the Grapple 2.0 framework marked a crucial milestone in my professional journey. It wasn't just an exercise in self-management and project planning, but also in teamwork and effective communication. Balancing the project's complexities required honed organizational skills, resourcefulness, and strategic time management. Simultaneously, the collaborative environment emphasized the importance of clear documentation and articulation of coding decisions, fostering a shared understanding and smooth integration of components within the team.
The Grapple 2.0 project was a rich learning experience, offering invaluable lessons in software development, framework architecture, project planning, and team collaboration. These acquired knowledge and skills are indispensable assets that I will bring into all my future professional pursuits, reinforcing my capacity to build resilient and efficient systems while maintaining effective communication and transparency in my practices.