zoukankan      html  css  js  c++  java
  • Unity3D之怎么实现粒子特效的碰撞

    经过测试学习,总结了关于怎么让粒子和物体发生碰撞和怎么让粒子在碰撞后消失的几点看法:

    首先给大家看一下我的粒子系统的配置图:

    关于碰撞检测的主要配置我们看图中的Collision:

    第一项:因为是一个3D游戏,所以这里我选择的是World

    第二项(Dampen):抑制(0~1),选这个为1时(完全抑制),碰撞之后,阻止了粒子,可以使碰撞的粒子消失

    第三项(Bounce):反弹(0~2),选完这个之后,可以让产生碰撞的粒子以某个角度反弹出去

    第三项(Lifetime Loss):生命周期损失(0~1),碰撞之后让粒子损失百分比的生命周期,为1时(生命周期完全损失),可以使粒子消失

    第四项(Min Kill Speed):最小清除速度,设置值越大,粒子发生碰撞之后被移除的速度越快,当达到某个值之后,可以近似碰撞之后立即消失

    第五项(Collides With):可碰撞范围,设置可以与该粒子系统碰撞的层

    第六项(Collision Quality):碰撞质量,设置发生碰撞的碰撞概率大小,选项三项从上到下由高到低,越低碰撞到的概率就越低

    第七项(Send Collision Messages):发送碰撞信息,与下面这个方法有关

    [csharp] view plain copy
    1. // 需要处理的碰撞信息,放在被撞的物体身上  
    2. void OnParticleCollision(GameObject other) {  
    3.         
    4. }  


    总结一下以上可以使粒子消失的方法有以下三种:

    (1)设置Dampen为1;

    (2)设置Lifetime Loss为1;

    (3)设置较大的Min Kill Speed值

  • 相关阅读:
    Node.js连接MySQL数据库及构造JSON的正确姿势
    Lyx输入中文与代码高亮
    查看文件编码 + 查看文件扩展名 + 文件编码转换
    系统重装/装Anaconda后,Windows开始菜单缺少快捷方式解决方案
    Python动态网页爬虫-----动态网页真实地址破解原理
    多线程爬虫
    openpyxl基本操作
    BitMap原理
    Trie(前缀树/字典树)及其应用
    tensorflow和pytorch教程
  • 原文地址:https://www.cnblogs.com/weiqiangwaideshijie/p/7099052.html
Copyright © 2011-2022 走看看