UE5学习笔记18-使用FABRIK确定骨骼的左手位置

一、在武器的骨骼资产中创建一个新的插槽

二、在动画类中添加代码

        xxx.h

UPROPERTY(BlueprintReadOnly, Category = Character, meta = (AllowPrivateAccess = "true"))/** 蓝图只读 类型是Character 允许私有访问 */
FTransform LeftHandTransform;//拿武器时知道左手在什么位置 当前是右手拿武器

         xxx.cpp 在NativeUpdateAnimation函数中添加

	if (bWeaponEquipped && EquippedWeapon && EquippedWeapon->GetWeaponMesh() && BlasterCharacter->GetMesh()){/* 获得在世界空间中的骨骼的插槽 */LeftHandTransform = EquippedWeapon->GetWeaponMesh()->GetSocketTransform(FName("LeftHandSocket"),ERelativeTransformSpace::RTS_World);/* 转换成骨骼空间,	第一个参数是相对与哪个hand_r是右手骨骼的名字,第二个参数是新插槽的位置,LeftHandSocket是新添加的插槽第三个参数是旋转的度数,FRotator::ZeroRotator零旋转第四个参数输入变换的位置第五个参数输出变换的旋转*/FVector OutPosition;FRotator OutRotation;BlasterCharacter->GetMesh()->TransformToBoneSpace(FName("hand_r"), LeftHandTransform.GetLocation(), FRotator::ZeroRotator, OutPosition, OutRotation);LeftHandTransform.SetLocation(OutPosition);LeftHandTransform.SetRotation(FQuat(OutRotation));}

三、在动画蓝图中创建新的状态机,在将当前动画放在缓存中

 

 四、在三中的新的状态机中添加一个状态

五、在FABRIK状态中

注:在当前动画中直接将Use cached pose Aim offsets 和FABRIK直接连接后 中间的Local To Component 节点会自动出来 另一边的节点一样,直接连接就行 

六、运行调试如果对当前另一只手的位置不满意可以改变在添加的骨骼网格体中的插槽的位置

可以点击结束旁边的按钮移动武器的插槽查看是否满意当前位置 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/409707.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【数模资料包】最新数模国赛word+latex模版|数模常用的算法python+matlab代码

【2024最全国赛研赛数模资料包】C君珍贵国一数模资料|最新数模国赛wordlatex模版|数模常用的算法pythonmatlab代码 国赛指:高教社杯全国大学生数学建模竞赛,研赛指:华为杯研究生数学建模竞赛。资料内容具体看文末卡片…

Java:BigDecimal 解决小数运算失真问题

文章目录 BigDecimal代码 BigDecimal 解决小数运算失真问题 解决方法:转换为BigDecimal对象 代码 package com.zhang.math;import java.math.BigDecimal;/*** Author: ggdpzhk* CreateTime: 2024-08-25*/ public class BigDecimalTest {public static void main(…

C++初学者指南-5.标准库(第二部分)–特殊容器

C初学者指南-5.标准库(第二部分)–特殊容器 pair<A , B> 包含两个相同或不同类型的值 tuple<A , B> C11 包含许多相同或不同类型的值 optional C17 包含一个类型为 T 的值或没有值 variant<A,B,C,…> C17 包含一个类型为A、B或C的值…… any C17 包含任…

redis--主从复制,哨兵模式,Redis Cluster模式

源码安装 [rootredis-node1 ~]# tar zxf redis-7.4.0.tar.gz [rootredis-node1 ~]# ls redis-7.4.0 redis-7.4.0.tar.gz#安装编译工具 [rootredis-node1 redis-7.4.0]# dnf install make gcc initscripts-10.11.6- 1.el9.x86_64 -y#执行编译命令 [rootredis-node1 redis-7.4.0…

【计算机网络】名词解释--网络专有名词详解

在网络通信中&#xff0c;有许多专业术语和概念&#xff0c;它们共同构成了网络通信的基础。以下是一些常见的网络术语及其定义和相互之间的关系&#xff1a; 一、网络基础 1.1 电路交换&#xff1a;电路交换是一种在数据传输前建立专用通信路径的通信方式。在通信开始前&…

如何使用ssm实现品牌手机销售信息系统

TOC ssm246品牌手机销售信息系统jsp 第一章 绪 论 1.1背景及意义 系统管理也都将通过计算机进行整体智能化操作&#xff0c;对于品牌手机销售信息系统所牵扯的管理及数据保存都是非常多的&#xff0c;例如管理员&#xff1b;主页、个人中心、用户管理、商品分类管理、商品信…

Linux数据相关第1个服务_备份服务rsync

1、备份服务概述 备份服务&#xff1a;需要使用到脚本&#xff0c;打包备份&#xff0c;定时任务 备份服务&#xff1a;rsyncd 服务&#xff0c;不同主机之间数据传输 特点: rsync是个服务也是命令使用方便&#xff0c;具有多种模式传输数据的时候是增量传输 增量与全量&am…

跟着B站前端面试总结回顾前端基础知识(一)

组件划分标准 组件划分_哔哩哔哩_bilibili 在前端Vue开发中&#xff0c;组件的划分是构建高效、可维护应用的关键步骤。Vue组件的划分标准通常基于多个方面的考虑&#xff0c;包括但不限于功能独立性、复用性、可维护性和可扩展性。以下是一些Vue组件划分的标准&#xff1a; …

使用CORS解决跨域问题

CORS&#xff08;Cross-Origin Resource Sharing&#xff09;跨域资源共享 因为浏览器的同源策略才出现了跨域问题。 CORS是一套机制&#xff0c;用于浏览器校验跨域请求。 它的基本理念是&#xff1a; 只要服务器明确表示允许&#xff0c;则校验通过服务器明确拒绝或没有表…

二分查找【算法 09】

二分查找算法详解 二分查找&#xff08;Binary Search&#xff09;是一种高效的查找算法&#xff0c;前提是数据必须是有序的。相比于线性查找&#xff0c;二分查找的时间复杂度从 O(n) 降低到了 O(log n)&#xff0c;适合处理大规模的数据查找问题。本文将详细介绍二分查找的原…

浅谈二分算法

浅谈二分算法 二分 首先知道一下二分是什么。 二分&#xff0c;是一种快速处理大型数据的方法。基本逻辑是折半查找。 设有一个共有 n n n 个数字的数组&#xff0c;要从中查询某个元素&#xff0c;就可以用二分查找。 注&#xff1a;这里的数组默认其成员数值具有单调性…

【STM32】串口(异步通信部分)

经典的串口接口硬件说实话在现在的电脑上已经很难见到了&#xff0c;而是被USB这种通用的串行接口替代了&#xff0c;哪怕外部设备要以串口连接到电脑&#xff0c;都需要进行各种硬件转换。但不得不说&#xff0c;在工业领域&#xff0c;串口还是一个非常常用的数据传输方式。 …

vue3 语法糖<script setup>

在 Vue 3 中&#xff0c;<script setup>是一种新的语法糖&#xff0c;它极大地简化了组件的编写方式。 <script setup> 是在单文件组件 (SFC) 中使用组合式 API 的编译时语法糖。当同时使用 SFC 与组合式 API 时该语法是默认推荐。 基本概念 简洁的语法&#xf…

国产GD32单片机开发入门(二)GD32单片机详解

文章目录 一.概要二.单片机型号命名规则三.GD32F103系统架构四.GD32F103C8T6单片机启动流程五.GD32F103C8T6单片机主要外设资源六.单片机开发过程中查看芯片数据手册的必要性1.单片机外设资源情况2.GD32单片机内部框图3.GD32单片机管脚图4.GD32单片机每个管脚功能5.单片机功耗数…

解决前端访问IIS服务器发生跨域请求报错的方法

现在WEB开发都是前后端分离的模式了&#xff0c;当前端代码访问后端WEB服务器时&#xff0c;经常会发生跨域请求报错的问题。   如果是IIS服务器&#xff0c;可以通过下面的方式轻松解决。   由于出现跨域问题是因为服务器返回的页面在返回头中没有设置“Access-Control-Al…

SQL Server数据库 创建表,和表的增删改查

打开SQL Server工具,连接服务器 右击数据库&#xff0c;创建新的数据库 新建表 填写列&#xff0c;我添加了Id,Name,Sex,Age,和class列 右键表刷新一下就有了 我又同时创建了一个Class表 点击新建查询&#xff0c;现在写代码添加数据&#xff0c;也可以操作表来对数据进行添加 …

[CLIP-VIT-L + Qwen] 多模态大模型源码阅读 - DataSet篇

[CLIP-VIT-L Qwen] 多模态大模型源码阅读 - DataSet篇 前情提要源码解读完整代码逐行解读导包readjson函数data_collate函数ImageCaptionDataset类&#xff08;init函数&#xff09;ImageCaptionDataset类&#xff08;readImage函数&#xff09; 参考repo:WatchTower-Liu/VLM-…

趋动科技 OrionX on VMware 打造 AI 就绪平台

着科技进步和产业变革的加速演进&#xff0c;人工智能&#xff08;AI&#xff09;已经成为兵家必争之地。今年以来伴随着ChatGPT带来的鲶鱼效应&#xff0c;人工智能成为科技产业创新的焦点&#xff0c;其应用范围越来越广泛&#xff0c;并将持续发展。科技产业龙头正加大在人工…

Redis入门指南

Redis&#xff08;Remote Dictionary Server&#xff09;是一个开源的高性能键值对存储系统&#xff0c;它支持多种数据结构&#xff0c;如字符串、哈希、列表、集合、有序集合等。Redis因其快速的读写能力、丰富的数据类型和灵活的操作而广泛应用于缓存、消息队列、实时分析等…

链接 -- 动静态链接 --特点、区别、静态库安装下载

1.链接是什么&#xff1f; 我们的程序&#xff0c;和 库&#xff08;语言一定会有自己的标准库&#xff09; 结合的过程就叫做链接。 2.为什么有链接&#xff1f; 让开发站在巨人的肩膀&#xff0c;提高开发效率。 c语言库&#xff1a; ls /user/include/ 动静态库的特点与区别…