GA-Unity: A Production-Ready Unity Package for Seamless Integration of Geometric Algebra in Networked Collaborative Applications
Manos Kamarianakis, Nick Lydatakis, George Papagiannakis
TL;DR
This work addresses the lack of production-ready Geometric Algebra tooling for Unity in networked collaborative applications. It introduces GA-Unity, a Unity package that provides CGA-based multivector representations, an efficient interpolation pipeline, memory pooling, and a user-friendly GUI. Empirical results indicate runtime improvements exceeding 25% and persistent bandwidth savings around 50% when using multivector representations compared with traditional vectors and quaternions, validating both performance and bandwidth benefits in networked scenarios. The case studies span research, game development, and education, demonstrating GA-Unity’s production readiness and broad applicability, with future work focusing on GPU parallelism, additional GA variants, and cross-engine deployment.
Abstract
This paper introduces GA-Unity, the first Unity package specifically designed for seamless integration of Geometric Algebra (GA) into collaborative networked applications. Indeed, in such contexts, it has been demonstrated that using multivectors for interpolation between transmitted poses reduces runtime by 16% and bandwidth usage by an average of 50% compared to traditional representation forms (vectors and quaternions); we demonstrate that GA-Unity further enhances runtime performance. Tailored for 3D Conformal Geometric Algebra, GA-Unity also offers an intuitive interface within the Unity game engine, simplifying GA integration for researchers and programmers. By eliminating the need for users to develop GA functionalities from scratch, GA-Unity expedites GA experimentation and implementation processes. Its seamless integration enables easy representation of transformation properties using multivectors, facilitating deformations and interpolations without necessitating modifications to the rendering pipeline. Furthermore, its graphical interface establishes a GA playground for developers within the familiar confines of a modern game engine. In summary, GA-Unity represents a significant advancement in GA accessibility and usability, particularly in collaborative networked environments, empowering innovation and facilitating widespread adoption across various research and programming domains while upholding high-performance standards.
