Система игровых частиц в Unity

Я использую Unity3D для разработки для HTV Vive с использованием SteamVR. Я загрузил ресурс из магазина активов с эффектом взрыва, созданным с использованием системы частиц. Я хочу играть анимацию частиц, когда объект разрушен. Вот код, который я безуспешно использую.

private void OnDestroy() {
    explosion.GetComponent<ParticleSystem>().Play();
}

Explosion - это открытая переменная типа GameObject, установленная из инспектора. Я бросаю туда объект системы частиц.

Почему это не работает? Кто-нибудь хорошая рекомендация по короткому учебнику, чтобы научиться использовать (не создавать) эффекты частиц?

Спасибо


вид иерархии

вид иерархии

Я пробовал это с PS как дочерний объект цели и как независимый объект.

вид инспектора (Target)

вид инспектора (система частиц)

редактировать: по какой-то причине эффект частиц разрушается сразу после начала сцены.

0 ответов

Попробуйте превратить эффект взрыва в префаб и создать его экземпляр при уничтожении.

GameObject explosion; // Prefab asset
private void OnDestroy() {
    Instantiate(explosion, transform.position, Quaternion.identity);
}

Также не забудьте остановить действие на Уничтожение.

Другие вопросы по тегам