Unity 6.3
0 онлайн 67 гостей 3 в системе
Вход

ParticleSystem.customData

Declaration

public ParticleSystem.CustomDataModule customData;

Описание

Программный интерфейс модуля CustomDataModule системы Particle System.

После настройки, этот модуль будет генерировать пользовательские данные по каждой частице, которые вы можете использовать либо в скрипте, либо в шейдерах. Чтобы прочитать данные из скрипта, просто вызовите ParticleSystem.GetCustomParticleData. Чтобы прочитать их в шейдере, включите пользовательские потоки данных в модуле ParticleSystemRenderer, или вызовите ParticleSystemRenderer.SetActiveVertexStreams из скрипта. После включения пользовательские данные будут переданы вашему вертикальному шейдеру через канал TEXCOORD. ParticleSystemRenderer Inspector сообщит вам, какие каналы используются.

Particle System модули не требуют переназначения обратно в систему; они являются интерфейсами, а не независимыми объектами.

Дополнительные ресурсы: ParticleSystemRenderer.SetActiveVertexStreams.

using UnityEngine;
using System.Collections;

[RequireComponent(typeof(ParticleSystem))] public class ExampleClass : MonoBehaviour { void Start() { ParticleSystem ps = GetComponent<ParticleSystem>(); var customData = ps.customData; customData.enabled = true;

Gradient grad = new Gradient(); grad.SetKeys(new GradientColorKey[] { new GradientColorKey(Color.blue, 0.0f), new GradientColorKey(Color.red, 1.0f) }, new GradientAlphaKey[] { new GradientAlphaKey(1.0f, 0.0f), new GradientAlphaKey(0.0f, 1.0f) });

customData.SetMode(ParticleSystemCustomData.Custom1, UnityEngine.ParticleSystemCustomDataMode.Color); customData.SetColor(ParticleSystemCustomData.Custom1, grad); } }