还在被电影中吧爆炸的画面震撼?那你一定不要错过这款Unity的爆炸插件

恬静的小魔龙 发表于 2021/08/13 09:54:30 2021/08/13
【摘要】 推荐阅读CSDN主页GitHub开源地址Unity3D插件分享简书地址我的个人博客QQ群:1040082875 一、插件介绍Exploder是一个Unity3D插件,可以爆炸任何有网格的游戏对象。在游戏对象上tag设置为“Exploder”,就可以看到爆炸了!插件下载:https://download.csdn.net/download/q764424567/13110741 二、插件是如何...

推荐阅读

一、插件介绍

Exploder是一个Unity3D插件,可以爆炸任何有网格的游戏对象。在游戏对象上tag设置为“Exploder”,就可以看到爆炸了!

在这里插入图片描述

插件下载:

https://download.csdn.net/download/q764424567/13110741

二、插件是如何工作的

这个插件包含一个强大的网格切割器,可以在你的游戏对象中找到网格。

之后,它递归地将网格切成小块,为每个块分配刚体和速度,并制造爆炸。

为了获得最好的性能,碎片被预先分配在一个池中。

切割算法非常快,计算时间最多在一帧中就运行完毕,所以并不会对FPS以及内存造成比较大的影响,而且还能看到非常强大的爆炸效果。

三、快速启动

用法很简单:
1、添加Exploder预制体到你的层级结构中

在这里插入图片描述

2、设置组件的参数

在这里插入图片描述

3、添加脚本调用​ExplodeObject函数

using UnityEngine;
using Exploder.Utils;

public class ExplodeTest : MonoBehaviour
{
    public GameObject TagerObject;
    void Start()
    {
        ExploderSingleton.Instance.ExplodeObject(TagerObject);
    }
}

在这里插入图片描述

在这里插入图片描述

四、Demo介绍

DemoQuickStart
快速启动Demo

在这里插入图片描述

生成一个球,点击Explods sphere按钮,小球会爆炸。

DemoClickExplode

在这里插入图片描述

点击任意游戏对象,这个游戏对象就会爆炸

DemoShooter
第一人称射击游戏场景

在这里插入图片描述

它的基本思想是:
(1)添加爆炸预置到场景。
(2)设置好你的武器和相机),用鼠标射击
(3)同时从相机的方向运行光线投射。
(4)获得一个被点击的游戏对象(例如花瓶)。
(5)将Exploder预制体移动到点击的游戏对象的位置(例如,现在ExploderObiect的位置与花瓶相同)。
(6)设置Exploder预制体的爆炸范围,调用ExplodeRadius(),范围爆炸;如果想设射击一个对象可以使用ExplodeObject()
(7)爆炸

五、ExploderObject设置说明

在这里插入图片描述

Main Settings

名称 说明
Radius 爆炸半径,表示可以摧毁的爆炸半径
Force 力是加入到爆炸碎片上的物理力的多少。更大的力意味着更高的速度。
Target Fragments 切割爆炸物体将产生的碎片数量。更多的碎片意味着更多的计算和
Use Force Vector 此选项仅当UseForceVector为true时有效。推力器表示爆炸粒子将移动的三维矢量方向。
Ingnore Tag 忽略标记可爆炸对象。将此设置为ture,将可以不用给物体设置tag标签,就可以爆炸
Explode self 标识爆炸后是否保留Exploder对象,如果勾选,爆炸就会销毁
Hide self 标识爆炸后是否隐藏爆炸的对象,乳沟勾选,爆炸就会隐藏
Delete original object 爆炸后删除原始游戏物体。
Uniform distrubution 通过启用此Exploder,每个对象都将创建数量相同的碎片,而不管对象离中心的距离如何。默认情况下,靠近中心的物体(爆炸中心)将被粉碎成比远离中心的物体更多的碎片。均匀分布将保证所有物体将被粉碎成相同数量的碎片
Split mesh islands 选择分离不连接的部分相同的网格。如果这个选项是启用的,所有爆炸碎片被搜索连接的部分相同的网格和这些部分被分离到新的碎片
Disable triangulation 通过启用这个爆炸器,不管物体离中心的距离如何,每个物体都会产生一定数量的碎片。在默认情况下,靠近爆炸中)会比远离爆炸碎成更多的碎片。
Use 2D physics 启用2D物体。
Use Cube Raius 使用Cube半径
Multi-threading Exploder支持多线程,你可以选择多达3个额外的线程进行计算。线程在启动时被初始化,但在休眠状态下,只在需要时才被使用
Cutting plane angle 剖切面角度

在这里插入图片描述

Fragment options设置

名称 说明
Pool Size 对象池大小,这个表示所有可用碎片的最大数量,该数量应高于目标碎片。
Explodable fragments 可以销毁碎片的碎片,如果勾选,可以摧毁对象,然后是它的所有碎片。你可以继续破坏碎片,直到它们变得足够小
Layer 碎片层的名称
Mesh colliders 开启网格碰撞器
MaxVelocity 最大速度
MaxAngularVelocity 最大角速度
Inherit parent physics 通过启用这个片段将使用与其父刚体相同的物理性质。它将继承质量,速度,角速度,并利用重力。如果没有有效的父刚体,将使用默认设置代替。
Mass 碎片的质量
Use gravity 启用重力
Angular velocity 碎片的角速度,如果“Inherit parent physics”被启用,最终的角速度将被计算为父物理和这个值的总和。
Random angular vector 随机角速度
Freeze Position 冻结碎片的位置。
Freeze Rotation 冻结碎片的旋转。
Material 可选材质的片段,如果没有选择默认材质

六、小结

觉得好用记得一键三连哦

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区),文章链接,文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:cloudbbs@huaweicloud.com进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。