Skip to content

Add protected constructor for ArmatureNode#2594

Closed
capdevon wants to merge 1 commit into
jMonkeyEngine:masterfrom
capdevon:capdevon-ArmatureNode
Closed

Add protected constructor for ArmatureNode#2594
capdevon wants to merge 1 commit into
jMonkeyEngine:masterfrom
capdevon:capdevon-ArmatureNode

Conversation

@capdevon
Copy link
Copy Markdown
Contributor

@capdevon capdevon commented Feb 2, 2026

Added a protected constructor for serialization purposes.

Added a protected constructor for serialization purposes.
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Feb 2, 2026

🖼️ Screenshot tests have failed.

The purpose of these tests is to ensure that changes introduced in this PR don't break visual features. They are visual unit tests.

📄 Where to find the report:

  • Go to the (failed run) > Summary > Artifacts > screenshot-test-report
  • Download the zip and open jme3-screenshot-tests/build/reports/ScreenshotDiffReport.html

⚠️ If you didn't expect to change anything visual:
Fix your changes so the screenshot tests pass.

If you did mean to change things:
Review the replacement images in jme3-screenshot-tests/build/changed-images to make sure they really are improvements and then replace and commit the replacement images at jme3-screenshot-tests/src/test/resources.

If you are creating entirely new tests:
Find the new images in jme3-screenshot-tests/build/changed-images and commit the new images at jme3-screenshot-tests/src/test/resources.

Note; it is very important that the committed reference images are created on the build pipeline, locally created images are not reliable. Similarly tests will fail locally but you can look at the report to check they are "visually similar".

See https://github.com/jMonkeyEngine/jmonkeyengine/blob/master/jme3-screenshot-tests/README.md for more information

Contact @richardTingle (aka richtea) for guidance if required

/**
* The armature to be displayed.
*/
private final Armature armature;
Copy link
Copy Markdown
Member

@yaRnMcDonuts yaRnMcDonuts Feb 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like the empty constructor causes a compile error in this class because final fields are not initialized.

Either this class is meant to be serialized via a no-arg constructor (in which case the fields can’t be final), or the fields are intentionally final and the no-arg constructor shouldn’t exist. But I don't have much experience using this class to know if it requires serialization or not, so I can't definitively say which is right.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @yaRnMcDonuts , sorry, my mistake. The whole class doesn’t seem suitable for serialization, or at least it would require many more changes to make it work. It’s probably not necessary for this class to follow the serialization contract of jME’s Node, which it extends. From my point of view, this PR can be closed; we can revisit the topic in the future if needed.

@capdevon capdevon closed this Feb 7, 2026
@capdevon capdevon deleted the capdevon-ArmatureNode branch February 9, 2026 23:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants