美文网首页
布娃娃系统应用

布娃娃系统应用

作者: 菜鸟的笔记 | 来源:发表于2022-06-14 10:51 被阅读0次

本案例是使用animator 控制动画,角色死亡时触发 ragdoll 系统

首先是配置


配置完成后 使用脚本控制animator 动画和 ragdoll 系统的冲突


    /// <summary>
    /// ragdoll 的所有刚体
    /// </summary>
    List<Rigidbody> ragdollRigidbodys = new List<Rigidbody>();
    /// <summary>
    /// ragdoll 所有碰撞盒
    /// </summary>
    List<Collider> ragdollColliders = new List<Collider>();

    /// <summary>
    /// 使用animator动画时关闭布娃娃系统
    /// </summary>
    public void InitRagdoll()
    {

        Rigidbody[] _rigidbodys = GetComponentsInChildren<Rigidbody>();

        for (int i = 0; i < _rigidbodys.Length; i++)
        {
            if (_rigidbodys[i] == GetComponent<Rigidbody>())
                continue;
            ragdollRigidbodys.Add(_rigidbodys[i]);
            _rigidbodys[i].isKinematic = true;

            Collider _collider = _rigidbodys[i].gameObject.GetComponent<Collider>();
            _collider.isTrigger = true;
            ragdollColliders.Add(_collider);

        }
    }
    /// <summary>
    /// 角色死亡时 开启ragdoll
    /// </summary>
    public void EnableRagdoll()
    {
        for (int i = 0; i < ragdollRigidbodys.Count; i++)
        {
            ragdollRigidbodys[i].isKinematic = false;
            ragdollColliders[i].isTrigger = false;
        }

        Collider collidercontroller = GetComponent<Rigidbody>().gameObject.GetComponent<Collider>();
        collidercontroller.enabled = false;
        GetComponent<Rigidbody>().isKinematic = true;
        animator.enabled = false;
        this.enabled = false;
    }

相关文章

  • 布娃娃系统应用

    本案例是使用animator 控制动画,角色死亡时触发 ragdoll 系统 首先是配置 配置完成后 使用脚本控制...

  • Unity 布娃娃(Ragdoll)系统 让角色更加真实 (附实

    布娃娃(Ragdoll)系统 布娃娃系统,相信很多玩家已经在大部分游戏中遇到过。作为一个已经成熟并且普及的系统,R...

  • Unity 物理系列七 布娃娃

    参考一文搞懂 Unity 布娃娃(Ragdoll)系统 让角色更加真实 (附实用Ragdoll插件详解)[http...

  • 父母的过多介入

    在说这个问题之前,先看一个场景: 孩子:(啼哭)布娃娃,布娃娃——我的布娃娃不见了! 妈妈:你想玩布娃娃,但是你找...

  • 清理缓存

    每个ios应用都有自己的应用沙盒,应用沙盒就是文件系统目录,与其他应用的文件系统隔离,ios系统不允许访问其他应用...

  • iOS数据存储

    每个ios应用都有自己的应用沙盒,应用沙盒就是文件系统目录,与其他应用的文件系统隔离,ios系统不允许访问其他应用...

  • Android系统启动流程和App启动流程

    一、Android系统架构 应用层:包括系统应用比如闹钟、日历等这些在内的以及非系统级别的应用都属于应用层。负责用...

  • 应用获取系统权限

    应用获取系统权限 将程序打包成系统应用才能获得系统权限 添加清单文件 android:sharedUserId="...

  • Android 应用push ,so无法加载

    作者君主要做SDK开发,对接一些厂商或运行商的普通应用或系统应用。当对接系统应用时,由于系统应用是由于覆盖机型比较...

  • Android开机时间系统优化

    1. 删除无用的系统应用 1.1. 可删除的系统应用网络参考 1.2. 自己整理的本系统可以删除的应用...

网友评论

      本文标题:布娃娃系统应用

      本文链接:https://www.haomeiwen.com/subject/wbfzmrtx.html