资源大湿 发表于 2020-9-16 08:00

Realistic Effects Pack 1 粒子特效包

所有的效果由粒子系统,模型,脚本组成。为了便于管理,每个效果都是主脚本的“效果设置”。
他有常见的设置,如“目标”,“碰撞器半径”,“移动速度”等。

脚本参数“效果设置”:

-碰撞半径:允许你改变距离的碰撞。例子一个标准半径可见的火球0.2米,因此“碰撞半径”你需要安装相同的0.2米。

- EffectRadius:在这个版本的包装是不使用的。允许你改变一些AOE效果的范围。

- UseMoveVector:允许你使用Vector3或Gameobject为目标。

-目标:让你设定一个目标或点在空间,在你想要移动的方向。
例如从摄像机(第一人称viev)射出的直线:
var go = new GameObject();
go.transform。位置= Camera.main.transform。转发+ Camera.main.transform.position;
effectSettings。目标=去;

或向目标射击:
effectSettings。目标=敌人;
此外,你可以检查“UseMoveVector”和设置矢量的运动(如效果设置。MoveVector = Vector3.forward)

- MoveSpeed:允许你调整投射的速度。

-移动距离:允许你调整弹丸的射程。(只有在效果不是归航的情况下)。

- IsHomingMove:允许您指定直线运动路径或目标寻的。

- IsVisible:允许你启用/禁用效果而不移动。如火焰或电屏蔽平稳出现/消失。

-在碰撞后停用:允许你指定是否在碰撞后禁用主预置弹体。需要在对象池中使用。
在碰撞后,在指定的时间后,物体变成不活动的效果。SetActive (false)”。你不能移除这个效果,然后再使用它,就像这个“efffect”。SetActive(真正的)”;
这避免了与实例化/销毁相关联的开销。

- DeactivateTimeDelay:允许您在关闭前指定延迟时间。

此外,还有一些活动:

- EffectDeactivated:事件在对象被关闭后被调用。例如,你可以重置状态效果,并把它放在拉对象中以供进一步使用。

- CollisionEnter:事件被称为碰撞后,或如果弹丸在一条直线飞行必要的距离(移动距离)。在碰撞的情况下,你可以得到碰撞点“RaycastHit”。这个事件将很容易得到发生碰撞的对象。
例子:

effectSettings。碰撞中心+= (n, e) =>
{
如果(e.Hit。转换!= null)调试。日志("对象名称为" + e.h ut .transform.name);
其他调试。日志(“弹飞moveDistance”);
};

要产生效果,足以引起实例:

var effectInstance = Instantiate(effect, pos, new Quaternion()) as GameObject;

如果你想指定一些选项"EffectSettings":

var effectSettings = effectInstance.GetComponent< effectSettings >();

monery2 发表于 2020-9-19 18:58

fsdgfdgdfgdfgdfgdfgddddddddddd

qazxsw123 发表于 2020-10-8 13:45

fgdfgdfgdfgddddddddddd
页: [1]
查看完整版本: Realistic Effects Pack 1 粒子特效包