根据粒子的初始行进方向对齐粒子。
形状模块支持根据粒子的行进方向设置粒子的初始旋转。这可以用于使粒子呈现源自网格表面的效果(例如,油漆从表面剥落)。这适用于任何形状类型。设置的任何 ParticleSystem.startRotation 都基于此设置进行应用,因此可以将两者一起使用。
可以将此设置与 ParticleSystem.MainModule.startRotation 设置结合使用;由 ParticleSystem.MainModule.startRotation 给定的旋转会添加到由 ParticleSystem.ShapeModule.alignToDirection 计算的旋转之上。
例如:使用 ParticleSystem.ShapeModule.alignToDirection 时添加一个 90 度的 ParticleSystem.MainModule.startRotation,所有粒子都会垂直于表面,如同伸出表面的小尖刺。
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour
{
private ParticleSystem ps;
public bool toggle = true;
void Start()
{
ps = GetComponent<ParticleSystem>();
}
void Update()
{
var shape = ps.shape;
shape.alignToDirection = toggle;
}
void OnGUI()
{
toggle = GUI.Toggle(new Rect(25, 45, 200, 30), toggle, "Align To Direction");
}
}