载入中...
搜索中...
未找到
OrientationWarpingBindings.cpp
浏览该文件的文档.
33 "OrientationWarping", std::function<OrientationWarping*()>([] { return new OrientationWarping(); }), true);
36 [bind](OrientationWarping* self, AnimSkeleton* skeleton, int root, ssq::Array spine, ssq::Array ik) {
54 script::bindMethod(cls, "setRotationInterpSpeed", [bind](OrientationWarping* self, float speed) {
Per-translation-unit VM + diagnostic-source helper for Squirrel bindings.
The single Squirrel projection for common Result, Status and Value.
Evaluated local (and optional world) pose for an AnimSkeleton. Script type: AnimPose.
Definition AnimPose.h:17
3D bone hierarchy + bind-pose local TRS for skeletal animation. Independent of ik::Skeleton3D (FABRIK...
Definition AnimSkeleton.h:16
Planar orientation warp applied after motion matching, never fed back into search.
Definition OrientationWarping.h:26
eve::Result< void > setDistributedAlpha(float alpha)
Set how much of the warp is distributed onto the spine chain.
Definition OrientationWarping.cpp:112
AnimSkeleton * getSkeleton() const
Borrowed skeleton from the last successful configure, or null. @ownership Borrowed; ownership remains...
Definition OrientationWarping.cpp:228
void reset()
Clear smoothed yaw so the next apply starts from zero.
Definition OrientationWarping.cpp:154
float getRotationInterpSpeed() const
Definition OrientationWarping.cpp:139
float getAngleThreshold() const
Definition OrientationWarping.cpp:129
eve::Result< void > apply(AnimPose &pose, float locomotionX, float locomotionZ, float animatedX, float animatedZ, float dt)
Warp a local pose so animated planar velocity aligns with locomotion velocity.
Definition OrientationWarping.cpp:159
float getDistributedAlpha() const
Definition OrientationWarping.cpp:119
float getAppliedAngle() const
Smoothed yaw last applied to a pose, radians, positive from +Z toward +X.
Definition OrientationWarping.cpp:226
eve::Result< void > setAngleThreshold(float radians)
Set the inclusive planar-angle magnitude that disables warping.
Definition OrientationWarping.cpp:121
eve::Result< void > setMinRootMotionSpeed(float metresPerSecond)
Set the planar speed below which either direction is treated as stationary.
Definition OrientationWarping.cpp:141
eve::Result< void > setRotationInterpSpeed(float speed)
Set how quickly the applied yaw approaches the target, matching Unreal FInterpTo.
Definition OrientationWarping.cpp:131
void setEnabled(bool enabled)
Enable or disable pose mutation. Disabled apply calls still recompute the target.
Definition OrientationWarping.cpp:151
eve::Result< void > configure(AnimSkeleton &skeleton, int rootBone, std::span< const int > spineBones={}, std::span< const int > ikBones={})
Atomically bind a skeleton and bone lists used by later apply calls.
Definition OrientationWarping.cpp:89
float getTargetAngle() const
Unsmoothed target yaw from the last successful apply, radians.
Definition OrientationWarping.cpp:227
float getMinRootMotionSpeed() const
Definition OrientationWarping.cpp:149
Pins the active VM and a stable diagnostic source for one expose() TU.
Definition SquirrelBindContext.h:32
Definition Animation.cpp:58
void exposeOrientationWarpingBindings(ssq::Table &table)
Register the owning OrientationWarping Squirrel surface.
Definition OrientationWarpingBindings.cpp:30
void bindMethod(ssq::Class &cls, const char *name, F &&fn)
Register one script method while keeping a literal name for Binding Contracts.
Definition SquirrelBindContext.h:130
ssq::Table projectResult(HSQUIRRELVM vm, Result< void > &&result)
Consume and project a void native Result using the common schema.
Definition SquirrelBinding.cpp:470