10000 fix: missing gesture layer mask can cause bicycle pose in play mode emulation by bdunderscore · Pull Request #602 · bdunderscore/ndmf · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

fix: missing gesture layer mask can cause bicycle pose in play mode emulation #602

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Apr 22, 2025

Conversation

bdunderscore
Copy link
Owner

No description provided.

@bdunderscore bdunderscore requested a review from Copilot April 20, 2025 22:05
Copy link
Contributor
@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR addresses an issue where a missing gesture layer mask could cause incorrect bicycle pose emulation in play mode. The changes add a new unit test to validate that FX and Gesture layers are properly assigned an avatar mask and update the VRChat platform animator bindings to set the mask accordingly.

  • Added a new test in VRChatTests.cs to verify mask assignment.
  • Updated VRChatPlatformAnimatorBindings.cs to assign the mask from the animator controller.

Reviewed Changes

Copilot reviewed 5 out of 7 changed files in this pull request and generated 1 comment.

File Description
UnitTests~/AnimationServices/VRChatTests.cs Added a unit test ensuring that the animator mask is populated for FX and Gesture layers.
Editor/API/AnimatorServices/PlatformBindings/VRChatPlatformAnimatorBindings.cs Updated layer binding logic to assign the avatar mask for FX and Gesture layers.
Files not reviewed (2)
  • UnitTests~/AnimationServices/_CommonAssets.meta: Language not supported
  • UnitTests~/AnimationServices/_CommonAssets/ShapellAvatar.prefab.meta: Language not supported
Comments suppressed due to low confidence (1)

Editor/API/AnimatorServices/PlatformBindings/VRChatPlatformAnimatorBindings.cs:174

  • [nitpick] Consider renaming 'innerLayers' to 'controllerLayers' to clarify its relation to the animator controller layers.
var innerLayers = ((AnimatorController)controller).layers;


if (shouldHaveMask)
{
var controller = (AnimatorController)layer.animatorController;
Copy link
Preview
Copilot AI Apr 20, 2025

Choose a reason for hiding this comment

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

The test assumes that the animator controller always includes at least one layer. Consider adding a check or assertion to verify that controller.layers is not empty before accessing its first element.

Suggested change
var controller = (AnimatorController)layer.animatorController;
var controller = (AnimatorController)layer.animatorController;
Assert.IsTrue(controller.layers.Length > 0, "AnimatorController has no layers.");

Copilot uses AI. Check for mistakes.

@bdunderscore bdunderscore force-pushed the missing-gesture-mask branch 9 times, most recently from 3fc2d68 to 23b37bc Compare April 22, 2025 01:50
@bdunderscore bdunderscore force-pushed the missing-gesture-mask branch from 23b37bc to 4301ef1 Compare April 22, 2025 01:59
@bdunderscore bdunderscore merged commit 62fa517 into main Apr 22, 2025
7 checks passed
@bdunderscore bdunderscore deleted the missing-gesture-mask branch April 22, 2025 02:09
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.

1 participant
0