Параметры
index | Индекс для назначения силового поля. |
field | Force Field что назначить. |
Описание
Присваивает силовому полю указанный индекс в списке влиятельных лиц.
Если для параметра influenceFilter задано значение ParticleSystemGameObjectFilter.List, действуют только силовые поля в списке факторов влияния. Система частиц.
using UnityEngine;
public class Example : MonoBehaviour
{
public ParticleSystem system;
public ParticleSystemForceField field1;
public ParticleSystemForceField field2;
ParticleSystem.ExternalForcesModule m_ExternalForcesModule;
void Start()
{
if (system == null)
{
Debug.LogError("Please assign a ParticleSystem to `system`.");
enabled = false;
return;
}
if (field1 == null || field2 == null)
{
Debug.LogError("Please assign a ParticleSystemForceField to `field1` and `field2`.");
enabled = false;
return;
}
m_ExternalForcesModule = system.externalForces;
m_ExternalForcesModule.enabled = true;
m_ExternalForcesModule.influenceFilter = ParticleSystemGameObjectFilter.List;
m_ExternalForcesModule.AddInfluence(field1);
}
void OnGUI()
{
Debug.Assert(m_ExternalForcesModule.influenceCount == 1);
var currentForceField = m_ExternalForcesModule.GetInfluence(0);
GUILayout.BeginHorizontal();
GUILayout.Label("Influence: " + currentForceField.name);
if (GUILayout.Button("Toggle"))
{
m_ExternalForcesModule.SetInfluence(0, currentForceField == field1 ? field2 : field1);
}
GUILayout.EndHorizontal();
}
}