Clean up skeleton interpolation and make tests #452

Closed
opened 2026-04-05 18:58:07 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @ButterscotchV on 3/14/2025

Skeleton intepolation handling is a bit of a mess right now, this PR cleans things up, documents parts of it that are confusing, and adds unit tests to ensure functionality.

This is yet to be tested, so it should remain a draft. Please wait until after v0.14.0 to merge this, as this is a scary change.

*Originally created by @ButterscotchV on 3/14/2025* Skeleton intepolation handling is a bit of a mess right now, this PR cleans things up, documents parts of it that are confusing, and adds unit tests to ensure functionality. This is yet to be tested, so it should remain a draft. Please wait until after v0.14.0 to merge this, as this is a scary change.
MrUnknownDE added the Difficulty: Math HeavyPriority: LowArea: Skeletal ModelType: EnhancementArea: ServerArea: Continuous IntegrationDifficulty: Math HeavyDifficulty: Math HeavyPriority: LowPriority: LowPriority: LowPriority: LowPriority: LowPriority: LowPriority: LowPriority: LowPriority: LowPriority: LowPriority: LowPriority: LowArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: Skeletal ModelArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: ServerArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationArea: Continuous IntegrationType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: EnhancementType: Enhancement labels 2026-04-05 18:58:36 +02:00
Sign in to join this conversation.
No Label Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Continuous Integration Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Server Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Area: Skeletal Model Difficulty: Math Heavy Difficulty: Math Heavy Difficulty: Math Heavy Priority: Low Priority: Low Priority: Low Priority: Low Priority: Low Priority: Low Priority: Low Priority: Low Priority: Low Priority: Low Priority: Low Priority: Low Priority: Low Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement Type: Enhancement
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/SlimeVR-Server#452