查看: 326|回复: 0

[引擎的各个功能] 事件模块

[复制链接]

1

主题

342

帖子

7万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
75866
发表于 2017-4-8 06:52:09 | 显示全部楼层 |阅读模式
[size=4][font=楷体,楷体_GB2312][color=Blue]
事件模块



       
     
     
     
       
     
         



   
    本页面的内容:
   

   
                                                            
        事件模块
                       
       
        事件产生器
               
        事件接收器销毁所有粒子 (EventRcvr KillAll)
               
        事件接收器生成粒子 (EventRcvr Spawn)

                                            

事件模块


事件模块允许您基于粒子自身间、不同粒子之间、或者粒子和世界之间的相互作用来产生事件,然后监听这些事件并在一个交互的粒子系统关卡中导致一系列的反应。 一个很好的例子是当一个粒子和世界中其它物体产生碰撞时,会触发指定的碰撞事件,然后在那些碰撞发生的地方产生粒子。

事件产生器


这个模块将根据您指定的条件产生一个(或多个)事件。 这个模块有一个单独的 事件 数组,它包含了您想让发射器生成的一系列事件。 事件 数组中的每项都有以下属性:


       


       
               
       
Events


               
       

       
                类型
               
               
                事件类型。 可能的类型包括:
       
       


       
                EPET_Any
               
               
                从任何可能发生的事件中生成指定的事件。
               
       

       
                EPET_Spawn
               
               
                当粒子发射器产生一个粒子,生成指定的事件。
               
       

       
                EPET_Death
               
               
                当这个发射器中的粒子死亡时,生成指定的事件。
               
       

       
                EPT_Collision
               
               
                当此发射器的粒子和某物发生碰撞时,生成指定的事件。
               
       

       
                EPET_Burst
               
               
                生成粒子爆发事件。
               
       

       
                EPET_Blueprint
               
               
                生成一个和Blueprint(蓝图)进行交互的事件,允许您执行蓝图脚本或者允许蓝图脚本来执行粒子的命令
               
       




               
       

       
                频率
               
               
                多长时间触发一次事件。 比如说=1意味着每次都触发事件。 用它来让每次碰撞都触发一次事件。
               
       

       
                仅首次
               
               
                使用布尔运算使之仅在首次碰撞触发事件。
               
       

       
                仅末次
               
               
                使用布尔运算使之仅在末次碰撞触发事件。
               
       

       
                使用反射的冲力向量
               
               
                使用布尔运算决定碰撞事件的方向是否为冲力向量的方向,而不是碰撞平面的法线方向。
               
       

       
                自定义名称
               
               
                这是您事件的名称,它使您可以建立一个监听器来监听此事件名,然后执行相应的动作。 所有的事件都需要被命名。
               
       

       
                发送给游戏的粒子模块事件
               
               
                当事件生成时我们想要触发的事件。 这需要您的游戏实现ParticleModuleEventSendToGame 的新子类,它 代表了粒子事件可触发的游戏事件类型。
               
       


事件接收器销毁所有粒子 (EventRcvr KillAll)


监听命名事件,然后销毁发射器的所有粒子。


       


       
               
       
ParticleModuleEventReceiverKillParticles


               
       

       
                停止生成粒子
               
               
                如果该项为true,那么除了销毁所有现有粒子外,发射器将停止产生新粒子。
               
       

       
               
       
Events


               
       

       
                事件生成器类型
               
               
                所监听的事件的类型。
       
       


       
                EPET_Any
               
               
                从任何可能发生的事件中生成指定的事件。
               
       

       
                EPET_Spawn
               
               
                当粒子发射器产生一个粒子,生成指定的事件。
               
       

       
                EPET_Death
               
               
                当此发射器中的粒子死亡时,生成指定的事件。
               
       

       
                EPT_Collision
               
               
                当此发射器的粒子和某物发生碰撞时,生成指定的事件。
               
       

       
                EPET_Burst
               
               
                生成粒子爆发事件。
               
       

       
                EPET_Blueprint
               
               
                生成一个和Blueprint(蓝图)进行交互的事件,允许您执行蓝图脚本或者允许蓝图脚本来执行粒子的命令
               
       




               
       

       
                事件名称
               
               
                要监听的事件的名称。
               
       


事件接收器生成粒子 (EventRcvr Spawn)


监听指定名称的事件,然后根据所触发的事件来生成粒子。


       


       
               
       
Spawn


               
       

       
                生成数量
               
               
                决定了当触发一个事件时生成粒子的数量。
               
       

       
                使用粒子时间
               
               
                若基于死亡的事件接收为true,这表示该事件的ParticleTime(粒子时间)应被用来查找SpawnCount(生成数量)。 否则(以及在接受到所有的其他事件中),使用事件的发射器时间。
               
       

       
               
       
Location


               
       

       
                使用PSys位置
               
               
                使用布尔运算来决定粒子生成事件是在触发该事件的粒子时发生,还是在粒子系统的原点发生。
               
       

       
               
       
Velocity


               
       

       
                继承速度
               
               
                如果该项为true,那么将会使用触发事件的粒子的速度作为生成粒子的起始速度。
               
       

       
                继承速度缩放
               
               
                如果 Inherit Velocity (继承速度)为true,该项作为缩放速度的比例因数。
               
       

       
               
       
Source


               
       

       
                事件生成器类型
               
               
                所监听的事件的类型。
       
       


       
                EPET_Any
               
               
                从任何可能发生的事件中生成指定的事件。
               
       

       
                EPET_Spawn
               
               
                当粒子发射器产生一个粒子,生成指定的事件。
               
       

       
                EPET_Death
               
               
                当此发射器中的粒子死亡时,生成指定的事件。
               
       

       
                EPT_Collision
               
               
                当此发射器的粒子和某物发生碰撞时,生成指定的事件。
               
       

       
                EPET_Burst
               
               
                生成粒子爆发事件。
               
       

       
                EPET_Blueprint
               
               
                生成一个和Blueprint(蓝图)进行交互的事件,允许您执行蓝图脚本或者允许蓝图脚本来执行粒子的命令
               
       




               
       

       
                事件名称
               
               
                要监听的事件的名称。
               
       







                                       
                                       
完整内容索引
                                       
                               
                       
                       
            

            
            

     2004-2017, Epic Games, Inc. 版权所有。Unreal 及相关的商标是 Epic 在美国和其他国家的注册商标。


    使用条款 | 隐私政策

            
        
               
       
   
回复

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | enginedx注册

本版积分规则

 
 



邮件留言:


 
返回顶部