Ethan Barron
Ethan Barron3w ago

Are there any bandwidth advantages to using RealtimeAvatar over my own model?

What the title says, I have funnily enough just discovered RealtimeAvatar and RealtimeAvatarManager and am wondering if I should transition to them? My current model syncs quaternions and vectors for the position and rotation of the left hand, right hand, and head unreliably. I'm wondering if RealtimeAvatar and such may do some funky things since I know a couple other networking solutions write components with ridiculously efficient custom compression and similar to fit the generic use case of something like a networked transform
3 Replies
kapa.ai
kapa.ai3w ago
Hi @Ethan Barron. I'm kapa.ai, your friendly support bot. I will try to answer your question by searching through the knowledge base. :wave: ---------------------- Based on the available knowledge sources, there is no explicit documentation stating that RealtimeAvatar or RealtimeAvatarManager provide bandwidth advantages over a custom model that synchronizes quaternions and vectors for head and hand positions/rotations. Normcore, in general, is designed for bandwidth efficiency through features like delta updates and intelligent serialization, which only synchronize fields that have changed and avoid sending redundant data. This applies to all RealtimeComponents, including custom ones and built-in ones like RealtimeAvatar. The efficiency comes from how Normcore's datastore and serialization work, not from a special compression algorithm unique to RealtimeAvatar itself. The built-in components are designed to be robust and easy to use, but there is no mention of them using "ridiculously efficient custom compression" beyond what is standard for all Normcore components and models. If your current model is already syncing only the necessary data (positions and rotations, unreliably), you are likely already close to optimal bandwidth usage, as this is the recommended approach for frequently changing data in Normcore. The main advantage of using RealtimeAvatar and RealtimeAvatarManager is convenience and integration with Normcore's XR avatar system, not necessarily lower bandwidth usage compared to a well-implemented custom model. For more details on how Normcore optimizes bandwidth and serialization, see the sections on Intelligent Serialization and Delta Updates. If you want to further optimize bandwidth, focus on: - Only syncing data that changes. - Using unreliable properties for frequently updated data. - Leveraging Normcore's delta update tracking. In summary: RealtimeAvatar does not provide a documented bandwidth advantage over a custom, well-implemented model for syncing head and hand transforms. Its main benefit is ease of use and integration, not a unique compression or bandwidth optimization beyond what Normcore already provides for all components. ---------------------- Note: you can ask me a follow up question by @ mentioning me again :speech_balloon: ----------------------
kapa.ai
kapa.ai3w ago
<@540897871545892884> Kapa.ai is still learning and improving, please let me know how I did by reacting below.
Ethan Barron
Ethan BarronOP3w ago
Lovely thanks

Did you find this page helpful?