根据粒子初始运动方向对齐粒子。
形状模块支持根据粒子的运动方向设置粒子的初始旋转。这对于使粒子看起来像是起源于网格表面(例如,从表面剥落的油漆)很有用。这适用于任何形状类型。Unity 会在此设置之上应用任何 ParticleSystem.startRotation,因此您可以将两者结合使用。
您可以将此设置与 ParticleSystem.MainModule.startRotation 设置结合使用;Unity 会在 ParticleSystem.ShapeModule.alignToDirection 计算的值之上添加 ParticleSystem.MainModule.startRotation 给出的旋转。
例如:在使用 ParticleSystem.ShapeModule.alignToDirection 时添加 90 度的 ParticleSystem.MainModule.startRotation,则所有粒子都垂直于表面,就像从表面伸出的细小尖刺。
using UnityEngine; using System.Collections;
[RequireComponent(typeof(ParticleSystem))] 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"); } }