UE4换装系统

角色骨骼模型换装原理无非就是把角色模型拆分多个部分,每部份必须使用同一套骨骼,拆解的部分根据所在骨骼空间位置找到相应父主骨骼空间位置,然后设置合成输出。

举个简单例子:假如把角色拆分四部分,分别如下

USkeletalMeshComponent* BodySMC;//作为父主骨骼模型

USkeletalMeshComponent* HeadSMC;//作为头骨骼模型

USkeletalMeshComponent* HandArmSMC;//作为手臂膀骨骼模型

USkeletalMeshComponent* FootSMC;//作为下半身模型

假如以上组件已经初始化,然后进行代码设置,总的来说每部分骨骼模型与父主骨骼模型合并,除了皮肤,一切使用父主骨骼模型属性。

HeadSMC->SetupAttachment(BodySMC);//绑定到父主骨骼模型
HeadSMC->SetMasterPoseComponent(BodySMC);//当前骨骼控制交给父主骨骼
HeadSMC->RegisterComponent();//注册组件,创建相应渲染和物理
HeadSMC->bUseAttachParentBound = true;//使用父类Bound

HandArmSMC->SetupAttachment(BodySMC);
HandArmSMC->SetMasterPoseComponent(BodySMC);
HandArmSMC->RegisterComponent();
HandArmSMC->bUseAttachParentBound = true;

FootSMC->SetupAttachment(BodySMC);
FootSMC->SetMasterPoseComponent(BodySMC);
FootSMC->RegisterComponent();
FootSMC->bUseAttachParentBound = true;

合成结束。

你可能感兴趣的:(UE4骨骼和动画)