当前位置: 首页 > news >正文

Unity头发飘动效果

Unity头发飘动

  • 介绍
    • 动作做头发飘动
    • 头发骨骼绑定模拟物理组件
  • UnityChan插件下载
  • UnityChan具体用法
    • 确定人物是否绑定好骨骼节点(要做的部位比如头发等)
    • 给人物添加SpringManager骨骼管理器
    • 给骨骼节点添加SpringBone
      • 这里给每个头发骨骼都添加上SpringBone。
      • 最后一个节点的处理
        • 这是我原本的最后一个节点
        • 这是我创建的最后一个节点![在这里插入图片描述](https://img-blog.csdnimg.cn/625e4599a9e94f58939b0adf567778b1.png)
      • 子节点设置
        • 参数含义
    • 碰撞设置
    • SpringManager设置
  • 最终效果

介绍

Unity中头发飘动其实有很多种方式,如果是想做的生动一点那么还是需要用到模拟物理这种方式,如果不要求的生动那其实可以在做动作的时候就把头发给做上飘动。这里不光可以做头发飘动部位的晃动,裙子的布料也是可以用这个插件来实现的。

动作做头发飘动

优点:是程序不需要写逻辑和操作,只需要播放对应的动作,将动作做好融合就可以做出效果;
缺点:是这种方法做出来的效果肯定是固定的不可能很飘逸和带有随机性的飘动;

头发骨骼绑定模拟物理组件

原理:这里原理就是将骨骼和子骨骼都绑定,然后人物产生位移的时候,父骨骼带动子骨骼位移,就是父级向下传导上层的力并且做对应的衰减或者增加;
优点:是比较飘逸生动,效果肯定是比纯做动作效果要好的多;
缺点:也很明显首先操作起来要复杂一些;

  1. 动作需要把头发骨骼也给绑定好;
  2. 程序需要把骨骼和子骨骼都绑定好对应的模拟物理组件;
  3. 碰撞也要做的话需要把碰撞也绑定一下;
  4. 性能开销必然会比直接播放动作要大很多;

UnityChan插件下载

这里我使用的UnityChan这个插件去做的头发飘动,这个插件在unitystore中直接搜索UnityChan就可以直接找到,添加到自己的账号资源,然后在unity中直
接导入即可。
我这里是已经添加到我的资源中了,所以我这里是直接显示在unity中打开
在这里插入图片描述
打开Unity的Package Manager,选中我下图上方的红框选择我的资源,找到我下方的Unity-Chan! Model这个文件点击DownLoad,我这里是显示的Re-Download是因为我这里已经下载过了,我直接导入Import了。下载完记得导入。
在这里插入图片描述
这里主要用到的几个脚本
SpringManager:这个是全局控制的脚本,控制所有子骨骼;
SpringBone:这个是放在人物的头发或者其他部位骨骼上;
SpringCollider:这个是用于做部位碰撞使用的;
RandomWind:这个就是做个随机的风向的处理,辅助模拟风;

UnityChan具体用法

确定人物是否绑定好骨骼节点(要做的部位比如头发等)

这里我举个例子查看你人物头发的帮没绑定骨骼,找到你的人物模型下面头的骨骼在往下找看我下图红框的位置,如果有子节点尝试拖动子节点看看头发的蒙皮是否有变化,有的话就是头发绑定骨骼了,就可以正常的做飘动,我们人物的胸部其实也有骨骼,这里就不多展示了,原理都是一样的胸部还更加容易左才几个骨骼节点,这头发就非常多。
.在这里插入图片描述
在这里插入图片描述

给人物添加SpringManager骨骼管理器

在人物的最外层挂载SpringManager这个管理脚本用来统一管理其他挂载SpringBone的骨骼节点
在这里插入图片描述

给骨骼节点添加SpringBone

这里给每个头发骨骼都添加上SpringBone。

这里仔细看为什么为什么最下面的骨骼是没有给添加这个SpringBone,这里是因为最下面的骨骼实际不参与这个头发的运动,也就是说最下面的骨骼节点你可以尝试拖拽一下,你会发现他不会影响任何头发的蒙皮。

在这里插入图片描述

最后一个节点的处理

那这里还有一个问题就是,如果你最下面的骨骼如果是可以操作头发的,那么你需要在这个骨骼上面在创建一个空物体,顺着头发向后延伸一下。下图给举个例子怎么创建

这是我原本的最后一个节点

在这里插入图片描述

这是我创建的最后一个节点在这里插入图片描述

应该是可以看出来变化的是吧,最后面创建的其实就是顺着头发向后走了一段位移,这个位移大小可以参考该节点的父节点的位移来定,也可以根据效果去调整,其实最后一个节点不会太影响效果,所以做不做都可以。

子节点设置

这里使我们添加的SpringBone骨骼,我们需要将下图的Child的这个子节点选择一下
在这里插入图片描述
这里看我拖拽的子节点,每一个挂载SpringBone都要拖拽一下子节点,这里也就好理解为什么最后一个骨骼如果没有实际影响头发的话就不需要挂载,如果最后一根骨骼影响那么就创建一个子节点在后移一下的这两个点了。因为只要挂载SpringBone的骨骼都需要拖拽子骨骼节点,因为他这里其实是前骨骼向后传导给子骨骼的。
在这里插入图片描述
后面的头发我就不截图了以此类推直接拖拽子骨骼节点就好了。

参数含义

Child:这里我就不多说了上面也说了过了就是当前骨骼的子骨骼;
Bone Axis:骨骼的轴向;
Radius:这个是当前骨骼的大小(后面做碰撞使用);
在这里插入图片描述
Is Use Each Bone Force Settings:是否使用每个骨骼的设置
Stilffness Force:每个骨骼的任性相当于,越小会越软,越大会越硬
Drag Force:拖拽受力,这个就是拖拽人物的时候,值越小骨骼越不受影响,值越大骨骼受到影响越大
Spring Force:这个是骨骼受力的方向,x y z轴方向受力
Colliders:这个就是可碰撞的对象列表(需要挂载SpringCollider)
Debug:这个就是Scene试图是否绘制这个骨骼节点
在这里插入图片描述
ThreShold:这个值我一直使用默认的0.01,没测试出来有什么用,翻译过来是门槛的意思,这里如果我用1的话是就是没法起作用
在这里插入图片描述

碰撞设置

这里比较简单我举个例子
在头发同级这里我创建了一个Collider并且挂载上SpringCollider设置一下对应的头部绿色圆形大小即可
在这里插入图片描述
然后这里给需要做碰撞的骨骼添加一个刚才创建的碰撞器即可
在这里插入图片描述

SpringManager设置

跟着我上面操作如果你运行你会发现压根没有作用,还差一步就是需要把刚才挂载SpringBone脚本的对象拖拽到SpringManager上激活,现在挂载SpringBone脚本的骨骼实际上是还没有激活的。

如下图所示这个就是我之前挂载的SpringBone的骨骼对象,全部拖拽到这里然后在运行就有还不错的效果了,当然不同部位要求都不太一样,根据我上面的参数详细调节就能做出来不错的效果。
在这里插入图片描述
Dynamic Ratio:这个就是动画起作用还是物理起作用的一个比率,下面的Force和Drag这两个我一般保持默认,用字骨骼自己的设置。
在这里插入图片描述

最终效果

请添加图片描述

相关文章:

Unity头发飘动效果

Unity头发飘动 介绍动作做头发飘动头发骨骼绑定模拟物理组件 UnityChan插件下载UnityChan具体用法确定人物是否绑定好骨骼节点(要做的部位比如头发等)给人物添加SpringManager骨骼管理器给骨骼节点添加SpringBone这里给每个头发骨骼都添加上SpringBone。…...

【MIKE】MIKE河网编辑器操作说明

目录 MIKE河网编辑器说明河网定义河网编辑工具栏河网文件(.nwk11)输入步骤1. 从传统的地图引入底图1.1 底图准备1.2 引入河网底图1.3 输入各河段信息2. 从ARCView .shp文件引入底图MIKE河网编辑器说明 河网编辑器主要功能有两个: ①河网的编辑和参数输人,包括数字化河网及…...

RIPV1配置实验

查看路由器路由表: 删除手工配置的静态路由项: Route1->Config->static Remove删除路由项 删除Route3的路由项,方法同上删除Route2的路由项,方法同上 完成路由器RIP配置: Route1->Config->RIP->Ne…...

快速实现农业机械设备远程监控

农业机械设备远程监控解决方案 一、项目背景 近年来,农业生产事故时有发生,农业安全问题已经成为农业生产中的关键问题,农业监控系统在农业安全生产中发挥着重要作用。农业机械设备以计划维修或定期保养为主,在日常应用的过程中因…...

解决用Fiddler抓包,网页显示你的连接不是专用/私密连接

关键:重置fiddler的证书 在Fiddler重置证书 1、Actions --> Reset All Certificates --> 弹窗一路yes 2、关掉Fiddler,重新打开 3、手机删掉证书,重新下载安装。 (如果还不行,重新试一遍,先把浏览器…...

单片机原理及应用:流水灯的点亮

流水灯是一种简单的单片机控制电路&#xff0c;由许多LED组成&#xff0c;电路工作时LED会按顺序点亮&#xff0c;类似于流水的效果。 下面是运行在keil上的代码&#xff0c;分别使用了数组&#xff0c;移位符和库函数来表示。 //数组法 #include <reg52.h> //头文…...

蓝桥杯宝藏排序算法(冒泡、选择、插入)

冒泡排序: def bubble_sort(li): # 函数方式for i in range(len(li)-1):exchangeFalsefor j in range(len(li)-i-1):if li[j]>li[j1]:li[j],li[j1]li[j1],li[j]exchangeTrueif not exchange:return 选择排序: 从左往右找到最小的元素&#xff0c;放在起始位置…...

使用@jiaminghi/data-view实现一个数据大屏

<template><div class"content bg"><!-- 全局容器 --><!-- <dv-full-screen-container> --><!-- 第二行 --><div class"module-box" style"align-items: start; margin-top: 10px"><!-- 左 -->…...

神经网络:池化层知识点

1.CNN中池化的作用 池化层的作用是对感受野内的特征进行选择&#xff0c;提取区域内最具代表性的特征&#xff0c;能够有效地减少输出特征数量&#xff0c;进而减少模型参数量。按操作类型通常分为最大池化(Max Pooling)、平均池化(Average Pooling)和求和池化(Sum Pooling)&a…...

微服务常见的配置中心简介

微服务架构中&#xff0c;常见的配置中心包括以下几种&#xff1a; Spring Cloud Config&#xff1a; Spring Cloud Config是官方推荐的配置中心解决方案&#xff0c;它支持将配置文件存储在Git、SVN等版本控制系统中。通过提供RESTful API&#xff0c;各个微服务可以远程获取和…...

银河麒麟v10 rpm安装包 安装mysql 8.35

银河麒麟v10 rpm安装包 安装mysql 8.35 1、卸载mariadb2、下载Mysql安装包3、安装Mysql 8.353.1、安装Mysql 8.353.3、安装后配置 1、卸载mariadb 由于银河麒麟v10系统默认安装了mariadb 会与Mysql相冲突&#xff0c;因此首先需要卸载系统自带的mariadb 查看系统上默认安装的M…...

一篇文章带你搞定CTFMice基本操作

CTF比赛是在最短时间内拿到最多的flag&#xff0c;mice必须要有人做&#xff0c;或者一支战队必须留出一块时间专门写一些mice&#xff0c;web&#xff0c;pwn最后的一两道基本都会有难度&#xff0c;这时候就看mice的解题速度了&#xff01; 说实话&#xff0c;这是很大一块&…...

Spring security之授权

前言 本篇为大家带来Spring security的授权&#xff0c;首先要理解一些概念&#xff0c;有关于&#xff1a;权限、角色、安全上下文、访问控制表达式、方法级安全性、访问决策管理器 一.授权的基本介绍 Spring Security 中的授权分为两种类型&#xff1a; 基于角色的授权&…...

模式识别与机器学习(十一):Bagging

1.原理 Bagging [Breiman, 1996a] 是井行式集成学习方法最著名的代表.从名字即可看出&#xff0c;它直接基于自助采样法(bootstrap sampling)。给定包含m 个样本的数据集&#xff0c;我们先随机取出一个样本放入采样集中&#xff0c;再把该样本放回初始数据集&#xff0c;使得…...

数据压缩(哈夫曼编码)

【问题描述】在数据压缩问题中&#xff0c;需要将数据文件转换成由二进制字符0、1组成的二进制串&#xff0c;称之为编码&#xff0c;已知待压缩的数据中包含若干字母&#xff08;A-Z&#xff09;&#xff0c;为获得更好的空间效率&#xff0c;请设计有效的用于数据压缩的二进制…...

移动安全APP--Frida+模拟器,模拟器+burp联动

最近测APP被通报了&#xff0c;问题点测得比较深&#xff0c;涉及到frida和burp抓包&#xff0c;一般在公司可能会有网络的限制&#xff0c;手机没办法抓包&#xff0c;我就直接在模拟器上试了&#xff0c;就在这记录一下安装过程。 目录 一、Frida安装 二、burp与逍遥模拟器…...

MATLAB遗传算法工具箱的三种使用方法

MATLAB中有三种调用遗传算法的方式&#xff1a; 一、遗传算法的开源文件 下载“gatbx”压缩包文件&#xff0c;解压后&#xff0c;里面有多个.m文件&#xff0c;可以看到这些文件的编辑日期都是1998年&#xff0c;很古老了。 这些文件包含了遗传算法的基础操作&#xff0c;包含…...

复习linux——时间同步服务

加密和安全当前都离不开时间的同步&#xff0c;否则各种网络服务可能不能正常运行 时间错误可能导致证书应用出错 时间同步服务 多主机协作工作时,各个主机的时间同步很重要&#xff0c;时间不一致会造成很多重要应用故障&#xff0c;利用NTP协议使网络中的各个计算机时间达到…...

如何在Linux设置JumpServer实现无公网ip远程访问管理界面

文章目录 前言1. 安装Jump server2. 本地访问jump server3. 安装 cpolar内网穿透软件4. 配置Jump server公网访问地址5. 公网远程访问Jump server6. 固定Jump server公网地址 前言 JumpServer 是广受欢迎的开源堡垒机&#xff0c;是符合 4A 规范的专业运维安全审计系统。JumpS…...

【Git】在 IDEA 中合并多个 commit 为一个

文章目录 1 未提交到远程分支1.1 需求说明1.2 reset 操作1.3 再次 push 2 已经提交到远程分支2.1 需求说明2.2 rebase 操作2.3 强制 push 分两种情况&#xff1a; 一种是本地提交还没推到远程&#xff0c;这种好处理另一种是已经提交到远程分支&#xff0c;这个略麻烦 1 未提…...

性能实战(一) --- clock_gettime造成系统整体cpu过高定位过程

问题背景 有一台linux服务器测试环境cpu经常到达80%,造成系统卡顿,部分功能不可用. 分析步骤 1.使用perf制作cpu火焰图 通过制作cpu火焰图,发现很多进程都存在大量的clock_gettime系统调用. 2. 使用bcc工具funclatency`进一步查看clock_gettime的调用次数 # /usr/share/bc…...

Ai 会替代人类工作吗?

目录 一、分析 二、一些案例 三、总结 一、分析 人工智能&#xff08;AI&#xff09;的发展和应用正在改变我们的生活和工作方式。在某些领域&#xff0c;AI已经显示出了强大的能力和潜力&#xff0c;可以比人类更快、更准确地完成任务。然而&#xff0c;是否会完全取代人类…...

神经网络:深度学习基础

1.反向传播算法&#xff08;BP&#xff09;的概念及简单推导 反向传播&#xff08;Backpropagation&#xff0c;BP&#xff09;算法是一种与最优化方法&#xff08;如梯度下降法&#xff09;结合使用的&#xff0c;用来训练人工神经网络的常见算法。BP算法对网络中所有权重计算…...

如何在Windows上搭建WebDAV服务并通过内网穿透实现公网访问

文章目录 前言1. 安装IIS必要WebDav组件2. 客户端测试3. 使用cpolar内网穿透&#xff0c;将WebDav服务暴露在公网3.1 安装cpolar内网穿透3.2 配置WebDav公网访问地址 4. 映射本地盘符访问 前言 在Windows上如何搭建WebDav&#xff0c;并且结合cpolar的内网穿透工具实现在公网访…...

【Transformer框架代码实现】

Transformer Transformer框架注意力机制框架导入必要的库Input Embedding / Out EmbeddingPositional EmbeddingTransformer EmbeddingScaleDotProductAttention(self-attention)MultiHeadAttention 多头注意力机制EncoderLayer 编码层Encoder多层编码块&#xff0f;前馈网络层…...

Apache ShenYu 网关JWT认证绕过漏洞 CVE-2021-37580

Apache ShenYu 网关JWT认证绕过漏洞 CVE-2021-37580 已亲自复现 漏洞名称漏洞描述影响版本 漏洞复现环境搭建漏洞利用 修复建议总结 Apache ShenYu 网关JWT认证绕过漏洞 CVE-2021-37580 已亲自复现) 漏洞名称 漏洞描述 Apache ShenYu是一个异步的&#xff0c;高性能的&#x…...

锐捷配置重发布RIP进OSPF中

一、实验拓扑 二、实验目的 使用两种动态路由协议&#xff0c;并使两种协议间的路由可以传递 三、实验配置 第一步&#xff1a;配置全网基本IP R1 Ruijie>enable Ruijie#configure terminal Ruijie(config)#interface gigabitEthernet 0/0 Ruijie(config-if-GigabitEthe…...

Android R修改wifi热点默认为隐藏热点以及禁止自动关闭热点

前言 Android R系统中WLAN 热点设置里面默认是没有wifi热点的隐藏设置选项的,如果默认wifi热点为隐藏热点可以修改代码实现。另外wifi热点设置选项里面有个自动关闭热点,这个选项默认是打开的,有些机器里面配置wifi热点后默认是需要关闭掉的,以免自动关闭后要手动打开。 …...

智能优化算法应用:基于人工大猩猩部队算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于人工大猩猩部队算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于人工大猩猩部队算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.人工大猩猩部队算法4.实验参…...

[JS设计模式]Flyweight Pattern

Flyweight pattern 享元模式是一种结构化的设计模式&#xff0c;主要用于产生大量类似对象而内存又有限的场景。享元模式能节省内存。 假设一个国际化特大城市SZ&#xff1b;它有5个区&#xff0c;分别为nanshan、futian、luohu、baoan、longgang&#xff1b;每个区都有多个图…...

烟台网站优化/网络营销渠道可分为

好的&#xff0c;以下是一个简单的使用Python编写的学生管理系统&#xff1a; students []class Student:def __init__(self, name, age, grade):self.name nameself.age ageself.grade gradedef __str__(self):return f"Name: {self.name}\nAge: {self.age}\nGrade: …...

免费新闻网站建设/百度推广运营怎么做

180万私域用户&#xff0c;每天贡献直接单量3.5万多杯&#xff0c;通过群内信息提醒促单10万多杯 达到这一目标用时仅3个月&#xff0c;其中60%以上都是活跃用户 用户入群后月消费频次提升30%&#xff0c;周复购人数提升28%&#xff0c;MAU提升10% 目前&#xff0c;私域订单贡献…...

聊城正规网站建设公司电话/推广赚钱的平台有哪些

CI不显示php错误&#xff0c;有错误直接显示500&#xff0c;是因为CI没有开启报错&#xff0c;在根目录下的index.php里修改ini_set(display_errors, 1);根据ENVIRONMENT是development还是production修改。0是不报错&#xff0c;1是报错PHP ci如何开启调试模式输出详细数据库报…...

网站做支付链接安全吗/抖音seo怎么收费

1: 实现一个函数&#xff0c;可以左旋字符串中的k个字符。 ABCD左旋一个字符得到BCDA ABCD左旋两个字符得到CDAB 方法一&#xff1a; 将字符串的第一个元素赋给一个变量temp;将字符串后面的元素依次向前挪一位&#xff1b;如果左旋一次以上循环1,2步骤&#xff1b; #defi…...

网络营销发展现状与趋势/seo 优化

示意图&#xff1a; 黄线&#xff1a;太阳发出的平行光线 视觉范围可以使用一个立方体表示&#xff0c;左右确定宽度&#xff0c;上下确定高度&#xff0c;远近确定长度 引入&#xff1a; import * as dat from dat.gui //界面控制 关键代码&#xff1a; //平行光投射相机的属…...

万网网站到期后续费一年多少钱/怎样注册网站免费注册

一、创建 tcpServer.erl -module(tcpServer). -export([start/0]).start() -> % 创建一个端口2345用于监听来自客户端的请求&#xff0c;{package, 4} 是信息表头用4字节表示长度&#xff0c;需要与客户端一致{ok, Listen} gen_tcp:listen(2345, [binary, {packet, 4}, {r…...