关于Unity3d粒子系统的小发现(天堂3技能释放)

导入系统给的粒子包,发现了一个问题:系统的粒子都有移动轨迹。

而自己新建的空粒子系统却没有这个功能。顺便也复习一下粒子系统。

Particle System (粒子系统):

Duration(持续时间)

Looping(是否循环)

Prewarm(不知)

Start Delay(启动延迟)

Start Lifetime (粒子产生后的寿命)有四个选项:Constant(常数,固定时间消失),Curve(曲线,设定个曲线控制粒子寿命),Random Between Two Constants(两个常熟之间随机),Random Between Two Curves(两个曲线之间随机)

Start Speed(粒子速度)选项同上

Start Size (粒子大小)选项同上

Start Rotation(粒子角度)选项同上

Start Color(粒子颜色)有四个选项:Color(单一颜色),Gradient(颜色梯度控制,可调透明度),Random Between Two Color,Random Between Two Gradient

Gravity Modifier(重力):可调成负数,比如用来制作烟雾效果。

Simulation Space(模拟空间):在世界坐标和本地坐标中切换,这个就是制作技能痕迹的重要位置,新建的粒子系统一般都默认为local,所以在粒子本体移动的时候也跟着进行移动,改为world的话,粒子就不会跟随本体移动而是随着发出的方向自己进行移动。

就可以出现以下效果(用鼠标写出来的):

关于Unity3d粒子系统的小发现(天堂3技能释放)

附上代码,灰常简单:

using UnityEngine;
using System.Collections; public class MouseFire : MonoBehaviour { public GameObject Fire;
private GameObject showFire; void Update () { if (Input.GetMouseButtonDown ()) { //获取鼠标点击位置,射线
Ray ray = Camera.main.ScreenPointToRay (Input.mousePosition);
RaycastHit hit = new RaycastHit ();
Physics.Raycast (ray, out hit);
//实例化出火焰
showFire = Instantiate (Fire,hit.point, Quaternion.identity) as GameObject; } else if (Input.GetMouseButtonUp ()) {
//过时间销毁
Destroy(showFire,10.1f);
}
}
上一篇:Notepad++配置Python运行环境


下一篇:Mac OS X 操作系统下IntelliJ IDEA激活码(Activation code)破解