开启插件

首先安装插件,然后重启。
在这里插入图片描述
打开显示插件内容
在这里插入图片描述
我们就可以找到插件自带的转换内容
在这里插入图片描述
将骨骼网格体转换为顶点动画有两种方式:

  1. 最简单的记录每个顶点的位置然后通过切换拾取颜色偏移实现
  2. 记录骨骼的变换,然后通过贴图去修改骨骼位置计算
    这两种方式都可以实现,记录顶点位置的如果模型顶点数量太多,生成的贴图也就越大,骨骼则是根据骨骼数量,所以生成的贴图会小很多,在渲染时会增加计算量,所以大家可以根据需求选择。

我们如果不会使用,则可以通过自带的案例学习查看。
在Mannequin目录下
在这里插入图片描述
你会发现案例使用的转换蓝图
在这里插入图片描述
鼠标右键会有运行编辑工具蓝图用来生成我们需要的数据。
在这里插入图片描述
然后我们通过旁边的生成的动画找到材质使用的父材质
在这里插入图片描述
材质里,左侧部分为颜色渲染相关,红框内为动画相关,我们可以复制所需内容(注意要复制出来到项目去修改,不要直接在插件文件里修改)
在这里插入图片描述
接下来,重要的是我们需要制作生成使用的配置文件,我们可以在Data里找到案例使用的配置。
在这里插入图片描述
最主要的配置就是设置模型和生成到的目标贴图
在这里插入图片描述
然后设置需要生成的动画帧率和动画,可以选择多个动画,还有自动播放功能
在这里插入图片描述

准备资源

首先,我们先通过骨骼网格体生成静态网格体,找到标准姿势的骨骼网格体,点击制作静态网格体
在这里插入图片描述
然后查看骨骼网格体使用的材质,有几个复制几个
在这里插入图片描述
我们需要将案例里的一些节点复制到新创建的材质中
在这里插入图片描述
在细节这里开启使用材质属性
在这里插入图片描述
会发现有多个接口的节点变为一个
在这里插入图片描述
然后我们通过节点创建一个属性集合
在这里插入图片描述
然后把节点按之前的顺序链接起来
在这里插入图片描述
如果你需要修改,可以创建材质实例,然后在图层参数这里进行修改,图层的概念可以不会造成命名污染代码维护等优势
在这里插入图片描述

材质准备完毕,我们准备使用的纹理,这个纹理位置在
在这里插入图片描述
复制到自己的文件夹并重新命名,这三种图片分别记录骨骼的位置,骨骼的旋转,骨骼的权重
在这里插入图片描述
我们再讲案例中的蓝图和数据复制出来
在这里插入图片描述
数据在Data目录
在这里插入图片描述
然后重新命名
在这里插入图片描述

生成并设置顶点动画数据

打开蓝图,我们将生成顶点动画的数据取消,如果你需要也可以设置生成
在这里插入图片描述
我们还需要更新材质参数,我们需要将所有需要修改的材质设置进去,如果不够可以在后面继续复制
在这里插入图片描述

在蓝图类默认值这里,我们设置数据文件
在这里插入图片描述
然后打开DA,将数据修改成需要修改的资源,
在这里插入图片描述
然后添加几个动画测试效果
在这里插入图片描述
鼠标右键,选择运行工具蓝图
在这里插入图片描述
运行完成后,你会发现这两个材质参数都已经被修改掉
在这里插入图片描述
在这里插入图片描述

最后,把静态网格体的材质替换为顶点动画材质实例,你会发现模型会播放动作
在这里插入图片描述

使用蓝图播放动画

数据我们实现了设置,那么,资源如何在蓝图中使用呢,我们在案例中找到一个蓝图专门用于播放,这个可以随机四个动画然后通过模型去播放。
在这里插入图片描述
由于我项目中的资源比较多,就不编译c++代码分析函数实现,只讲解一下如何使用此蓝图。
我们将其复制出来,修改蓝图的静态网格体和配置使用的配置项
在这里插入图片描述
在这里插入图片描述
接着编译,你可以发现视口中的四个模型都在播放不同的动作,即使相同的动画,播放的帧也不同
在这里插入图片描述
打开蓝图,我们查看构造函数,会发现在构造函数中调用了两个函数,一个生成自动播放数据,另一个是合批,就是在一次drawcall中,将所有的模型渲染出来
在这里插入图片描述
蓝图的组件使用的是实例化静态网格体组件,组件可以一次性渲染多个不同的模型实例。
在这里插入图片描述
首先调用父蓝图的构造函数,构建位置矩阵,并将生成的位置数量设置给实例化静态网格体组件
在这里插入图片描述
生成矩阵函数就是生成函数
在这里插入图片描述
它的个数生成按照我们设置生成Div:行列数,最终数量为Div X 乘 Div Y ,然后在Size里均匀排列,并可以设置随机偏移。
在这里插入图片描述
在子蓝图的构造函数里,设置为自动播放,并调用父蓝图构造函数,并生成自动播放的数据,将所有实例的矩阵传入播放。
在这里插入图片描述
在生成自动播放数据函数里,我们可以通过之前配置的生成顶点数据的配置项去生成每个实例的播放数据
当前可以选择播放哪个动画,设置动画播放开始位置,和动画播放速率。
在这里插入图片描述
自动播放数据的参数有四项,播放起始位置,播放速率,当前动画的起始帧和结束帧。
在这里插入图片描述
最后将每个实例的自动播放数据和位置变换数据提供给实例化静态网格体组件,它将会生成多个实例并播放
在这里插入图片描述
我们可以调整参数生成更过的实力来查看效果
在这里插入图片描述
最终效果
在这里插入图片描述

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

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

相关文章

如何搭建Appium环境?

🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快1、安装Java Development Kit(JDK)前往Oracle官网下载JDK。在https://www.oracle.com/java/technologies/javase-jdk11-downloads.html 找到…

Android kotlin 协程的详细使用指南

Android Kotlin 协程的详细使用指南,结合核心概念、实战场景和最佳实践:一、协程基础概念‌协程本质‌协程是轻量级线程,通过挂起/恢复机制实现并发,相比线程节省90%以上的内存开销。其核心优势在于结构化并发和挂起函数的协作式调…

什么是 AMR 格式?简鹿音频转换器轻松批量转换 AMR 为 MP3

AMR 格式是一种比较特殊但又常见的音频格式,而MP3 格式则是大家耳熟能详的通用音频格式。那么,它们之间有什么区别?又该如何把 AMR 文件转换成更常用的 MP3 呢?下面我们就来通俗地了解一下。一、什么是 AMR 格式?AMR&a…

C++11 std::move与std::move_backward深度解析

文章目录移动语义的革命性意义std::move:正向范围移动函数原型与核心功能关键特性与实现原理适用场景与代码示例危险区域:重叠范围的未定义行为std::move_backward:反向安全移动函数原型与核心功能关键特性与实现原理适用场景与代码示例重叠范…

订单初版—2.生单链路中的技术问题说明文档

大纲1.生单链路的业务代码2.生单链路中可能会出现数据不一致的问题3.Seata AT模式下的分布式事务的原理4.Seata AT模式下的分布式事务的读写隔离原理5.Seata AT模式下的死锁问题以及超时机制6.Seata AT模式下的读写隔离机制的影响7.生单链路使用Seata AT模式的具体步骤8.生单链…

跨平台ROS2视觉数据流:服务器运行IsaacSim+Foxglove本地可视化全攻略

任务目标 本教程将完整实现: 在服务器无头模式下运行IsaacSim,并在本地显示GUI界面 通过IsaacSim的ROS2 Bridge发布图像数据 在本地Foxglove中实时可视化服务器端的ROS2数据流 实现步骤 1. 服务器无头运行IsaacSim 本地GUI显示 在服务器端执行&am…

【机器学习笔记Ⅰ】 8 多元梯度下降法

多元线性回归的梯度下降法详解 多元线性回归(Multiple Linear Regression)是多个自变量(特征)与一个因变量(目标)之间的线性关系建模,梯度下降法用于优化模型参数(权重和偏置&#x…

C++——从结构体到类与对象

C 类与对象详解:从结构体到面向对象编程C 的面向对象编程(OOP)核心是 类(Class) 和 对象(Object)。类是用户自定义的数据类型,用于封装数据(属性)和操作数据的…

专题:2025数据资产AI价值化:安全、战略与应用报告|附400+份报告PDF、原数据表汇总下载

原文链接:https://tecdat.cn/?p42885 在数字经济加速渗透的今天,数据作为核心生产要素的价值愈发凸显。上市公司作为经济高质量发展的微观主体,其数据价值化进程不仅关乎企业自身竞争力,更折射出中国产业数字化转型的深度与广度。…

泛微虚拟视图-数据虚拟化集成

文章目录一、核心概念对比二、功能特性对比1. 数据操作能力2. 业务逻辑支持3. 性能表现三、技术实现差异1. 虚拟表单实现原理2. 视图实现原理四、典型应用场景对比1. 虚拟表单适用场景2. 视图适用场景五、配置与管理对比六、性能优化差异虚拟表单优化策略视图优化策略七、企业级…

Ubuntu 下 MySql 使用

1.开发背景开发项目需要使用到数据库,相对于轻量级的 SQLite,MySql 相对复杂一下,但是可以远程访问,还是比较舒服的。2.开发需求Ubuntu 安装 MySql 服务端,Window 客户端访问 Ubuntu 数据库。3.开发环境Ubuntu20.04 W…

QT开发技术 【qt应用限制只能启动一个】

限制 Qt 程序只能启动一个实例 在开发 Qt 应用程序时,可能需要限制程序只能运行一个实例,以避免重复启动。以下是实现这一功能的几种常用方法。 使用 QSharedMemory 限制单实例 通过共享内存判断是否已有程序运行,如果存在则退出当前实例。 #include <QApplication&g…

Android 禁用beam传输

1、打开/packages/apps/Nfc/src/com/android/nfc/beam/BeamManager.java找到startBeamReceive、startBeamSend方法public boolean startBeamReceive(Context context,HandoverDataParser.BluetoothHandoverData handoverData) {synchronized (mLock) {if (mBeamInProgress) {re…

基于 ETL 工具实现人大金仓数据库的数据迁移与整合实操指南

在企业数字化转型的浪潮下&#xff0c;数据已经成为企业发展的核心资产。人大金仓数据库凭借其稳定可靠的性能&#xff0c;在国内众多企业中得到了广泛应用。但随着业务的不断拓展和系统的更新迭代&#xff0c;数据迁移与整合的需求也日益凸显。无论是将人大金仓数据库的数据迁…

TCP 事务全面研究:从原理到优化与故障排除

一、引言 TCP&#xff08;传输控制协议&#xff09;作为互联网的核心协议之一&#xff0c;已经在全球范围内运行了近 50 年。自 1974 年由文顿・瑟夫和罗伯特・卡恩设计以来&#xff0c;TCP 经历了多次修订和优化&#xff0c;以适应不断变化的网络环境和应用需求。TCP 事务是指…

java实战-Milvus 2.5.x版本向量库-通过集合字段变更示例学习相关api demo

文章目录前言java实战-Milvus 2.5.x版本向量库-通过集合字段变更示例学习相关api demo1. Milvus版本2. 示例逻辑分析3. 集合字段变更示例demo4. 测试前言 如果您觉得有用的话&#xff0c;记得给博主点个赞&#xff0c;评论&#xff0c;收藏一键三连啊&#xff0c;写作不易啊^ _…

HashMap的get与put流程源码深度解析

目录 一、HashMap基础结构 二、put操作流程分析 put操作关键步骤总结 三、get操作流程分析 get操作关键步骤总结 四、延伸 1.hash()方法 2. 扩容 resize()方法的主要逻辑&#xff1a; Java 8中对扩容的优化&#xff1a; 3. 转向红黑树的条件 HashMap作为Java集合框架…

初识Neo4j之图数据库(二)

目录 一、图数据库如何工作 二、为什么使用图数据库 Neo4j 图数据库以节点、关系和属性的形式存储数据&#xff0c;而不是用表或文档进行数据存储。这意味着用户可以像在白板上画草图那样来组织数据。而且&#xff0c;由于图数据库不受限于预先定义的数据模型&#xff0c;因此…

Python 中 ffmpeg-python 库的详细使用

文章目录 一、ffmpeg-python库概述1.1 ffmpeg-python库介绍1.2 安装1.3 优势1.4 常用场景二、基本使用2.1 视频信息获取2.2 视频转码三、视频处理3.1 视频裁剪3.2 视频缩放3.3 视频旋转四、音频处理4.1 提取音频4.2 音频混合五、高级使用5.1 添加水印5.2 视频滤镜5.3 视频合成5…

JAVA策略模式demo【设计模式系列】

策略模式用在统一的入口&#xff0c;但需要根据某个类型判断后续执行逻辑&#xff0c;例如我最近遇到的场景&#xff1a;我需要对接一个设备&#xff0c;前端请求我这边&#xff0c;我再去和设备交互&#xff0c;但设备种类很多&#xff0c;各自有自己的接入规则&#xff01;传…