Fix issues when hand-tracking is disabled in project settings #199
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently, the hand-tracking and body-tracking samples are crashing with Godot v4.3-stable, because the hand-tracking project setting isn't enabled (it was enabled, but the default was changed just before Godot v4.3-stable, causing it to become disabled).
Godot PR godotengine/godot#95959 will fix the crash too, because it's caused by us calling
OpenXRAPI::get_hand_tracker()
.However, we really shouldn't even be trying to call it at all if the hand-tracking project setting is disabled! So, this PR checks the project setting (unfortunately, we can't check it early enough to prevent loading the extensions - this is due to a GDExtension limitation) and prevents the hand-tracking related extension wrappers from doing much if hand-tracking is disabled.
It also enables hand-tracking in the hand-tracking and body-tracking samples so that they actually work too :-)