Interpolation tests & better skeleton test class #442

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

Originally created by @ButterscotchV on 3/29/2025

Skeleton intepolation handling is a bit of a mess right now, this PR adds some extra unit tests and a new function for joint interpolation. No longer interferes with #1352.

Branched off from #1349 but without any of the actual functionality changes. This should be safe to merge at any time for additional testing and a cleaner unit test setup without breaking anything! :3

Also just a small note, we will likely remove the joint interpolation stuff entirely, but the function added here can be used to verify functionality in that regard, especially to ensure that we don't have functionality regression.

*Originally created by @ButterscotchV on 3/29/2025* Skeleton intepolation handling is a bit of a mess right now, this PR adds some extra unit tests and a new function for joint interpolation. No longer interferes with #1352. Branched off from #1349 but without any of the actual functionality changes. This should be safe to merge at any time for additional testing and a cleaner unit test setup without breaking anything! :3 Also just a small note, we will likely remove the joint interpolation stuff entirely, but the function added here can be used to verify functionality in that regard, especially to ensure that we don't have functionality regression.
MrUnknownDE added the Area: Continuous IntegrationArea: Skeletal ModelArea: ServerPriority: HighType: EnhancementArea: 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: 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 ModelPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighPriority: HighType: 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: EnhancementArea: 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: Server labels 2026-04-05 18:54:58 +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: 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 Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High Priority: High 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#442