jMonkeyEngine / jMonkeyEngine/jmonkeyengine

armature.saveBindPose() corrupts model

Open
#2,383 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Java
Stars
4.3k
Forks
1.2k
Avg merge
4d 7h
Merged PRs (30d)
14

Description

As reported here: https://hub.jmonkeyengine.org/t/issue-calling-armature-savebindpose/48046

Essentially, calling saveBindPose() many times will eventually corrupt/distort the model's bind pose.

My best guess so far is that the inverseModelBindMatrix value in this class at this line ends up corrupted from repeatedly being modified one way or another: SeparateJointModelTransform.java#L33

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with SeparateJointModelTransform.java at the referenced inverseModelBindMatrix line and review the saveBindPose() path described in the issue. Reproduce repeated saveBindPose() calls and trace whether the inverseModelBindMatrix is modified; done means repeated calls no longer corrupt or distort the model's bind pose.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
game-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.