Объявление
public void RemoveInfluence(int index);public void RemoveInfluence(ParticleSystemForceField field);
Параметры
index | Индекс, из которого нужно удалить выбранное силовое поле. |
field | Силовое поле, которое нужно удалить из списка. |
Описание
Удаляет силовое поле из списка влиятельных лиц с заданным индексом.
Если для параметра influenceFilter задано значение ParticleSystemGameObjectFilter.List, действуют только силовые поля в списке факторов влияния. Система частиц.
using UnityEngine;
public class Example : MonoBehaviour
{
ParticleSystem.ExternalForcesModule externalForcesModule;
void Start()
{
// Создаем систему частиц по умолчанию
var particleSystemGameObject = new GameObject("ParticleSystem");
var system = particleSystemGameObject.AddComponent<ParticleSystem>();
// Создаем силовое поле для воздействия на систему частиц
var forceFieldGameObject = new GameObject("Force Field");
var forceField = forceFieldGameObject.AddComponent<ParticleSystemForceField>();
forceField.endRange = 5;
forceFieldGameObject.transform.position = new Vector3(0, 0, 10);
// Добавить силу к системам частиц внешних силовых влияний.
externalForcesModule = system.externalForces;
externalForcesModule.enabled = true;
externalForcesModule.influenceFilter = ParticleSystemGameObjectFilter.List;
externalForcesModule.AddInfluence(forceField);
}
void OnGUI()
{
GUILayout.Label("ParticleSystem Influencers:");
for (int i = 0; i < externalForcesModule.influenceCount; ++i)
{
var influence = externalForcesModule.GetInfluence(i);
GUILayout.BeginHorizontal();
GUILayout.Label(i + ": " + influence.name);
if (GUILayout.Button("Remove"))
{
externalForcesModule.RemoveInfluence(i);
--i;
}
GUILayout.EndHorizontal();
}
}
}