ue4 C++设置骨骼网格体的动画序列

描述:在编辑器中有一个骨骼网格体,用C++创建骨骼体并加载动画序列,此处只说设置动画序列的两种方式,区别在于如何获取到动画序列的对象。

方式一:采用ConstructorHelpers创建对象,此函数只能在构造函数中调用。

复制代码
static ConstructorHelpers::FObjectFinder<UAnimSequence> AnimAsset(TEXT("/Game/person/person_Anim.person_Anim"));
if (AnimAsset.Succeeded())
{
    // 获取动画系列对象
    UAnimSequence* AnimationSequence = AnimAsset.Object;

    // 骨骼网格设置动画节点
    SkeletalMeshComponent->SetAnimationMode(EAnimationMode::AnimationSingleNode);
    // 播放动画
    SkeletalMeshComponent->PlayAnimation(AnimationSequence, true); // true for looping
}    

方式二:采用LoadObject,此函数可以在构造函数外调用

复制代码
// 获取动画系列对象
FString AniPath = TEXT("/Game/person/person_Anim.person_Anim");     // 动画路径
UAnimSequence* AnimationSequence = LoadObject<UAnimSequence>(nullptr, *AniPath);

// 骨骼网格设置动画节点
SkeletalMeshComponent->SetAnimationMode(EAnimationMode::AnimationSingleNode);
// 播放动画
SkeletalMeshComponent->PlayAnimation(AnimationSequence, true); // true for looping
  • 两种方式的区别在于获取动画序列的方式不同。
  • 其他对象,比如静态网格,骨骼网格等都可以用这两种方式获取。
相关推荐
夜悊15 小时前
C++代码示例:进制数简单生成工具
c++
郝学胜_神的一滴16 小时前
CMake 021: IF 条件判据详诠
c++·cmake
_wyt0011 天前
洛谷 B3930 [GESP202312 五级] 烹饪问题 题解
c++·gesp
玖玥拾1 天前
C/C++ 数据结构(七)栈、容器适配器
c语言·数据结构·c++··容器适配器
один but you1 天前
constexpr函数
c++
凡人叶枫1 天前
Effective C++ 条款41:了解隐式接口和编译期多态
java·开发语言·c++·effective c++
凡人叶枫1 天前
Effective C++ 条款42:了解 typename 的双重意义
java·linux·服务器·c++
小胖xiaopangss1 天前
BRpc使用
c++·rpc
-森屿安年-2 天前
63. 不同路径 II
c++·算法·动态规划
chase_my_dream2 天前
Cartographer详细讲解
c++·人工智能·自动驾驶