【unity物理系统】人物乳摇的实现

首先找到人物胸部的顶点骨骼位置,拷贝一下
如图所示
在这里插入图片描述
然后在原物体上挂栽如下脚本

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Wobbler : MonoBehaviour {

    /// <summary>
    /// 中心点的位置(拉入拷贝后的物体)
    /// </summary>
    public Transform centerTran;
    /// <summary>
    /// 我的位置
    /// </summary>
    Transform myTransform;
    /// <summary>
    /// 刚体组件
    /// </summary>
    Rigidbody rig;
    /// <summary>
    /// 弹性系数
    /// </summary>
    public float hardness;

    private void Start()
    {
        //Time.timeScale = 0.1f;
        rig = GetComponent<Rigidbody>();
        myTransform = transform;
    }
    private void FixedUpdate()
    {
        //防止动作大的时候摆动穿模
        if (Input.GetKey(KeyCode.A) || Input.GetKey(KeyCode.W) || Input.GetKey(KeyCode.S) || Input.GetKey(KeyCode.D) || Input.GetKey(KeyCode.Space))
        {
            myTransform.position = centerTran.position;
        }
        else//开始摆动的条件
        {
            rig.AddForce(-(transform.position - centerTran.position) * hardness);
            //Debug.Log("受到力了");
            //Debug.Log(gameObject);
        }
    }
   
}

然后自己限制一下什么时候不让乳摇,尽量避免一些大的动作,然后运行效果如下

在这里插入图片描述
当然,要是想要更好的效果,可以多拉几个胸部的点,效果更好

我是参考的这位大神的博客,他博客上还有更震撼的内容哟
https://blog.csdn.net/roadlun/article/details/80939986

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值