Skip to content

Commit 5b1c6a4

Browse files
committed
Add tests for mesh skinning
1 parent 19888c7 commit 5b1c6a4

12 files changed

+5218
-48
lines changed
Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1 @@
11
# AGENT_NEXT_STEPS
2-
3-
## Align OMF → ozz Animation Conversion with Blender-XRay Workflow
4-
- Blender-XRay bakes animations in local joint space using parent-inverted matrices plus a +90° X rotation (MATRIX_BONE) before writing keys. Our converter currently does `inv_bind * parent_bind`, which leaves animations in mixed spaces.
5-
- In `ConvertSingleMotionWithBindMatrices`, switch to computing local transforms exactly like Blender-XRay: `local = parent_bind.inverted() * child_bind` (root uses the same +90° basis), then decompose.
6-
- Apply the consistent axis remap `(X, Y, Z) → (X, -Z, Y)` and matching quaternion reorder/sign adjustments when writing translation and rotation keys (use `TransformConverter` helpers).
7-
- Re-run the bind pose + animation frame comparisons (with `OZZ_SAMPLE_RATIO` for frame alignment) to confirm positional/rotational deltas drop near zero.

src/xrAnimation/CMakeLists.txt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ include_directories(
1313
${CMAKE_CURRENT_SOURCE_DIR}/../xrEngine
1414
${CMAKE_CURRENT_SOURCE_DIR}/../Common
1515
${CMAKE_CURRENT_SOURCE_DIR}/../../Externals/ozz-animation/include
16+
${CMAKE_CURRENT_SOURCE_DIR}/../../Externals/ozz-animation/samples
1617
${CMAKE_CURRENT_SOURCE_DIR}/../../Externals/imgui
1718
${CMAKE_CURRENT_SOURCE_DIR}/../../Externals/imgui-proj
1819
)
@@ -21,6 +22,10 @@ include_directories(
2122
set(SOURCES
2223
stdafx.cpp
2324
stdafx.h
25+
Skinning.cpp
26+
Skinning.h
27+
OgfMeshLoader.cpp
28+
OgfMeshLoader.h
2429
)
2530

2631
# Create static library
@@ -65,4 +70,4 @@ install(TARGETS xrAnimation
6570
add_subdirectory(tests)
6671

6772
# Add tools
68-
add_subdirectory(tools)
73+
add_subdirectory(tools)

0 commit comments

Comments
 (0)