Repository navigation
Add owner LookAt direction evaluation API - #270
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
What changed?
Live gaze directions cannot use the existing point-only LookAt API without inventing a target distance or introducing eye-offset parallax. Add
LookAtEvaluator::EvaluateDirectionfor a world unit vector, head orientation and explicit timestamp, using the existing owner angle/range-map/output implementation for both bone and expression rigs.Directions ignore head translation, avatar/clip eye offsets and the point-only distance threshold. Invalid vectors resolve to no gaze with diagnostics.
VRMRIG_LOOKAT_DIRECTION_APIadvertises the additive entry point for separately built consumers. Update the library documentation and motion policy.Validation
Checks run on Windows x64/MSVC 19.51 with OpenUSD 26.08 and installed motionCore 0.5.0:
vrmRig_unitandvrmRig_boundaries: 2/2 passed, including signed direction yaw, both output types, invalid vectors, timestamp/diagnostics and independence from placement/offsets/distance threshold.git diff --checkpassed.Notes for reviewers
Existing value layouts and point/pose overloads remain unchanged. Consumers using the new entry point need a rebuilt owner library as well as updated headers. This does not publish a new package version or change clip
MotionPose::lookAtTargetpoint semantics.The companion runtime PR, animu-sphere/usd-avatar-runtime#6, connects world/joint-local point/direction observations to this owner API. Merge/rebuild/install this owner change before adopting the runtime adapter change. Integration evidence uses constructed rigs and test input; real avatar/motion/connector acceptance remains open.