Versioned, forward-compatible dynamic-bone asset definition. 更多...
#include <ProceduralBoneConfig.h>
Public 成员函数 | |
| Result< void > | validate () const |
| Validate ranges and structural resource invariants. | |
| Result< Value > | toValue () const |
| Encode schema v1 while preserving unknown root fields. | |
| Result< void > | apply (AnimSkeleton &skeleton, DynamicBoneSolver &solver) const |
| Resolve bone names and atomically replace a solver configuration. | |
| Result< void > | apply (AnimSkeleton &skeleton, DynamicBoneSolver &dynamicSolver, FootIKSolver &footSolver) const |
| Resolve names and atomically replace both procedural solvers. | |
静态 Public 成员函数 | |
| static Result< DynamicBoneConfig > | fromValue (const Value &value) |
| Decode schema v1 transactionally; future versions are rejected. | |
Public 属性 | |
| float | gravityX =0.f |
| float | gravityY =-9.8f |
| float | gravityZ =0.f |
| float | externalX =0.f |
| float | externalY =0.f |
| float | externalZ =0.f |
| float | weight =1.f |
| float | updateRate =60.f |
| float | teleportThreshold =2.f |
| float | objectMoveResponse =1.f |
| float | distanceLimit =0.f |
| std::vector< DynamicBoneChainConfig > | chains |
| std::vector< DynamicBoneColliderConfig > | colliders |
| FootIKConfig | footIK |
| Value::Object | unknownFields |
静态 Public 属性 | |
| static constexpr std::string_view | SchemaId ="eve.dynamic-bone" |
| static constexpr std::uint32_t | SchemaVersion =1 |
详细描述
Versioned, forward-compatible dynamic-bone asset definition.
在文件 ProceduralBoneConfig.h 第 56 行定义.
成员函数说明
◆ apply() [1/2]
| Result< void > eve::animation::DynamicBoneConfig::apply | ( | AnimSkeleton & | skeleton, |
| DynamicBoneSolver & | dynamicSolver, | ||
| FootIKSolver & | footSolver | ||
| ) | const |
Resolve names and atomically replace both procedural solvers.
在文件 ProceduralBoneConfig.cpp 第 62 行定义.
引用了 apply(), eve::animation::FootIKSolver::configureLeftLeg(), eve::animation::FootIKSolver::configureLeftToe(), eve::animation::FootIKSolver::configureRightLeg(), eve::animation::FootIKSolver::configureRightToe(), eve::animation::FootIKConfig::contactGraceTime, eve::animation::FootIKConfig::enabled, eve::Diagnostic::error(), eve::Result< T >::failure(), eve::animation::AnimSkeleton::findBone(), eve::animation::FootIKLegConfig::foot, footIK, eve::animation::FootIKConfig::footLockEnabled, eve::animation::FootIKConfig::groundQueryDistance, eve::animation::FootIKConfig::groundStartHeight, eve::animation::FootIKLegConfig::hip, eve::InvalidArgument, eve::animation::FootIKLegConfig::knee, eve::animation::FootIKConfig::left, eve::animation::FootIKConfig::lockEnterWeight, eve::animation::FootIKConfig::lockExitWeight, eve::animation::FootIKConfig::maxPelvisOffset, eve::animation::FootIKConfig::minGroundNormalY, eve::animation::FootIKConfig::pelvisBone, eve::animation::FootIKConfig::positionResponse, eve::animation::FootIKConfig::right, eve::animation::FootIKConfig::rotationResponse, eve::animation::FootIKSolver::setContactGraceTime(), eve::animation::FootIKSolver::setFootLockEnabled(), eve::animation::FootIKSolver::setFootLockThresholds(), eve::animation::FootIKSolver::setGroundQuery(), eve::animation::FootIKSolver::setMaxPelvisOffset(), eve::animation::FootIKSolver::setMinGroundNormalY(), eve::animation::FootIKSolver::setPelvisBone(), eve::animation::FootIKSolver::setPositionResponse(), eve::animation::FootIKSolver::setRotationResponse(), eve::animation::FootIKLegConfig::soleOffset, eve::Result< T >::success(), eve::animation::FootIKLegConfig::toe , 以及 eve::animation::FootIKLegConfig::toeSoleOffset.
◆ apply() [2/2]
| Result< void > eve::animation::DynamicBoneConfig::apply | ( | AnimSkeleton & | skeleton, |
| DynamicBoneSolver & | solver | ||
| ) | const |
Resolve bone names and atomically replace a solver configuration.
在文件 ProceduralBoneConfig.cpp 第 55 行定义.
引用了 eve::animation::DynamicBoneSolver::addBoneColliderCapsule(), eve::animation::DynamicBoneSolver::addBoneColliderSphere(), eve::animation::DynamicBoneSolver::addChainByName(), eve::animation::DynamicBoneSolver::addColliderCapsule(), eve::animation::DynamicBoneSolver::addColliderSphere(), bone, c, chains, colliders, distanceLimit, eve::Diagnostic::error(), externalX, externalY, externalZ, eve::Result< T >::failure(), eve::animation::AnimSkeleton::findBone(), eve::animation::DynamicBoneSolver::getColliderCount(), gravityX, gravityY, gravityZ, index, eve::InvalidArgument, objectMoveResponse, p, eve::animation::DynamicBoneSolver::setChainEndLength(), eve::animation::DynamicBoneSolver::setChainEndOffset(), eve::animation::DynamicBoneSolver::setChainFreezeAxis(), eve::animation::DynamicBoneSolver::setChainParticleParameters(), eve::animation::DynamicBoneSolver::setChainSelfCollision(), eve::animation::DynamicBoneSolver::setColliderEnabled(), eve::animation::DynamicBoneSolver::setColliderInside(), eve::animation::DynamicBoneSolver::setDistanceLimit(), eve::animation::DynamicBoneSolver::setExternalForce(), eve::animation::DynamicBoneSolver::setGlobalGravity(), eve::animation::DynamicBoneSolver::setObjectMoveResponse(), eve::animation::DynamicBoneSolver::setTeleportThreshold(), eve::animation::DynamicBoneSolver::setUpdateRate(), eve::animation::DynamicBoneSolver::setWeight(), eve::Result< T >::success(), teleportThreshold, updateRate, valid, validate() , 以及 weight.
被这些函数引用 apply().
◆ fromValue()
|
static |
Decode schema v1 transactionally; future versions are rejected.
在文件 ProceduralBoneConfig.cpp 第 41 行定义.
引用了 boolean, c, chains, colliders, eve::animation::FootIKConfig::contactGraceTime, distanceLimit, eve::animation::FootIKConfig::enabled, eve::Diagnostic::error(), externalX, externalY, externalZ, eve::Result< T >::failure(), footIK, eve::animation::FootIKConfig::footLockEnabled, eve::Value::getIf(), gravityX, gravityY, gravityZ, eve::animation::FootIKConfig::groundQueryDistance, eve::animation::FootIKConfig::groundStartHeight, eve::InvalidArgument, eve::Value::isArray(), eve::Value::isObject(), key, eve::animation::FootIKConfig::left, eve::animation::FootIKConfig::lockEnterWeight, eve::animation::FootIKConfig::lockExitWeight, eve::animation::FootIKConfig::maxPelvisOffset, eve::animation::FootIKConfig::minGroundNormalY, name, number, objectMoveResponse, p, eve::animation::FootIKConfig::pelvisBone, eve::animation::FootIKConfig::positionResponse, eve::animation::FootIKConfig::right, eve::animation::FootIKConfig::rotationResponse, SchemaId, string, eve::Result< T >::success(), teleportThreshold, unknownFields, updateRate, valid, validate(), value , 以及 weight.
◆ toValue()
Encode schema v1 while preserving unknown root fields.
在文件 ProceduralBoneConfig.cpp 第 31 行定义.
引用了 c, chains, colliders, eve::animation::FootIKConfig::contactGraceTime, distanceLimit, eve::animation::FootIKConfig::enabled, externalX, externalY, externalZ, eve::Result< T >::failure(), footIK, eve::animation::FootIKConfig::footLockEnabled, gravityX, gravityY, gravityZ, eve::animation::FootIKConfig::groundQueryDistance, eve::animation::FootIKConfig::groundStartHeight, eve::animation::FootIKConfig::left, eve::animation::FootIKConfig::lockEnterWeight, eve::animation::FootIKConfig::lockExitWeight, eve::animation::FootIKConfig::maxPelvisOffset, eve::animation::FootIKConfig::minGroundNormalY, objectMoveResponse, p, eve::animation::FootIKConfig::pelvisBone, eve::animation::FootIKConfig::positionResponse, eve::animation::FootIKConfig::right, root, eve::animation::FootIKConfig::rotationResponse, SchemaId, SchemaVersion, eve::Result< T >::success(), teleportThreshold, unknownFields, updateRate, valid, validate() , 以及 weight.
◆ validate()
| Result< void > eve::animation::DynamicBoneConfig::validate | ( | ) | const |
Validate ranges and structural resource invariants.
在文件 ProceduralBoneConfig.cpp 第 21 行定义.
引用了 c, chains, colliders, eve::animation::FootIKConfig::contactGraceTime, distanceLimit, eve::animation::FootIKConfig::enabled, eve::Diagnostic::error(), eve::Result< T >::failure(), eve::animation::FootIKLegConfig::foot, footIK, eve::animation::FootIKConfig::groundQueryDistance, eve::animation::FootIKConfig::groundStartHeight, eve::animation::FootIKLegConfig::hip, eve::InvalidArgument, eve::animation::FootIKLegConfig::knee, eve::animation::FootIKConfig::left, eve::animation::FootIKConfig::lockEnterWeight, eve::animation::FootIKConfig::lockExitWeight, eve::animation::FootIKConfig::maxPelvisOffset, eve::animation::FootIKConfig::minGroundNormalY, objectMoveResponse, p, eve::animation::FootIKConfig::pelvisBone, eve::animation::FootIKConfig::positionResponse, radius, eve::animation::FootIKConfig::rotationResponse, eve::Result< T >::success(), teleportThreshold, unit, updateRate, v , 以及 weight.
被这些函数引用 apply(), fromValue() , 以及 toValue().
类成员变量说明
◆ chains
| std::vector<DynamicBoneChainConfig> eve::animation::DynamicBoneConfig::chains |
在文件 ProceduralBoneConfig.h 第 63 行定义.
被这些函数引用 apply(), fromValue(), toValue() , 以及 validate().
◆ colliders
| std::vector<DynamicBoneColliderConfig> eve::animation::DynamicBoneConfig::colliders |
在文件 ProceduralBoneConfig.h 第 64 行定义.
被这些函数引用 apply(), fromValue(), toValue() , 以及 validate().
◆ distanceLimit
| float eve::animation::DynamicBoneConfig::distanceLimit =0.f |
在文件 ProceduralBoneConfig.h 第 62 行定义.
被这些函数引用 apply(), fromValue(), toValue() , 以及 validate().
◆ externalX
| float eve::animation::DynamicBoneConfig::externalX =0.f |
在文件 ProceduralBoneConfig.h 第 61 行定义.
被这些函数引用 apply(), fromValue() , 以及 toValue().
◆ externalY
| float eve::animation::DynamicBoneConfig::externalY =0.f |
在文件 ProceduralBoneConfig.h 第 61 行定义.
被这些函数引用 apply(), fromValue() , 以及 toValue().
◆ externalZ
| float eve::animation::DynamicBoneConfig::externalZ =0.f |
在文件 ProceduralBoneConfig.h 第 61 行定义.
被这些函数引用 apply(), fromValue() , 以及 toValue().
◆ footIK
| FootIKConfig eve::animation::DynamicBoneConfig::footIK |
在文件 ProceduralBoneConfig.h 第 65 行定义.
被这些函数引用 apply(), fromValue(), toValue() , 以及 validate().
◆ gravityX
| float eve::animation::DynamicBoneConfig::gravityX =0.f |
在文件 ProceduralBoneConfig.h 第 60 行定义.
被这些函数引用 apply(), fromValue() , 以及 toValue().
◆ gravityY
| float eve::animation::DynamicBoneConfig::gravityY =-9.8f |
在文件 ProceduralBoneConfig.h 第 60 行定义.
被这些函数引用 apply(), fromValue() , 以及 toValue().
◆ gravityZ
| float eve::animation::DynamicBoneConfig::gravityZ =0.f |
在文件 ProceduralBoneConfig.h 第 60 行定义.
被这些函数引用 apply(), fromValue() , 以及 toValue().
◆ objectMoveResponse
| float eve::animation::DynamicBoneConfig::objectMoveResponse =1.f |
在文件 ProceduralBoneConfig.h 第 62 行定义.
被这些函数引用 apply(), fromValue(), toValue() , 以及 validate().
◆ SchemaId
|
staticconstexpr |
在文件 ProceduralBoneConfig.h 第 57 行定义.
被这些函数引用 fromValue() , 以及 toValue().
◆ SchemaVersion
|
staticconstexpr |
在文件 ProceduralBoneConfig.h 第 58 行定义.
被这些函数引用 toValue().
◆ teleportThreshold
| float eve::animation::DynamicBoneConfig::teleportThreshold =2.f |
在文件 ProceduralBoneConfig.h 第 62 行定义.
被这些函数引用 apply(), fromValue(), toValue() , 以及 validate().
◆ unknownFields
| Value::Object eve::animation::DynamicBoneConfig::unknownFields |
在文件 ProceduralBoneConfig.h 第 66 行定义.
被这些函数引用 fromValue() , 以及 toValue().
◆ updateRate
| float eve::animation::DynamicBoneConfig::updateRate =60.f |
在文件 ProceduralBoneConfig.h 第 62 行定义.
被这些函数引用 apply(), fromValue(), toValue() , 以及 validate().
◆ weight
| float eve::animation::DynamicBoneConfig::weight =1.f |
在文件 ProceduralBoneConfig.h 第 62 行定义.
被这些函数引用 apply(), fromValue(), toValue() , 以及 validate().
该结构体的文档由以下文件生成:
- src/modules/animation/ProceduralBoneConfig.h
- src/modules/animation/ProceduralBoneConfig.cpp