Эффекты в Unity: взрывы и следы
С помощью визуальных эффектов можно улучшить даже самую посредственную игру. Учимся создавать их на живых примерах.
 
 
Один из основных способов создания эффектов — использование спрайтов с анимацией. Для этого подготавливается префаб объекта, который нужно добавить на карту.
Например, так можно создать простой эффект взрыва. В качестве картинки можно применить любой подходящий спрайт.
 
Вырезав отдельные кадры, можно создать анимацию (читайте об этом в нашей статье). Добавьте объект на карту и укажите кадры, которые нужно анимировать.
 
Нарезав пять кадров из показанного выше спрайта, можно создать вот такую анимацию:

Проблема в том, что этот взрыв будет длиться вечно. Чтобы этого не происходило, нужно создать скрипт Explosion.cs и прописать в нем условие уничтожения эффекта. Например, его можно удалить по прошествии какого-нибудь времени. В данном случае можно указать 0,32 секунды — именно столько длится анимация.
public class Explosion : MonoBehaviour
{
	void Start()
	{
		StartCoroutine(Explode()); //При создании объекта вызывается метод Explode().
	}
	IEnumerator Explode()
	{
		yield return new WaitForSeconds(0.3f); //Метод ждет 0,32 секунды, и только потом приступает к выполнению остального кода.
		Destroy(gameObject); //Объект удаляется.
	}
}Эффект готов, теперь нужно только сохранить его как префаб, чтобы потом его можно было инстанцировать, когда он будет нужен.
Как добавить визуальный эффект в Unity
Рассмотреть добавление эффекта можно на примере шутера из этой статьи. В файле Bullet.cs при срабатывании триггера будет создаваться объект explosion.
void OnTriggerEnter2D(Collider2D hitInfo) //Пуля во что-то попала.
{
	Health health = hitInfo.GetComponent<Health>();
	if (health)
	{
		health.Hit(damage); 
	}
	Explode(); //После того, как все основные действия выполнены, вызывается метод, отвечающий за взрыв.
}
void Explode()
{
	Instantiate(explosion, transform.position, Quaternion.identity); //Создается экземпляр созданного префаба на том месте, куда попала пуля.
	Destroy(gameObject); //Пуля уничтожается.
}Предварительно нужно будет добавить префаб взрыва в поле explosion скрипта Bullet.cs. И после этого можно будет посмотреть на взрыв снаряда при попадании во что-нибудь.

Какие еще могут быть эффекты
Кроме префабов, в Unity можно использовать некоторые встроенные эффекты. Можно использовать объект Trail, чтобы добавить шлейф при движении какого-нибудь объекта. Для этого эффект нужно поместить внутрь чего-нибудь.
 
Ему можно указать толщину и цвет, а также время исчезновения и другие параметры. Больше ничего делать не нужно — шлейф сам будет следовать за объектом, к которому он прикреплен.

Это может пригодиться, например, чтобы сделать более выразительным полет пули или падение тлеющих обломков.
Заключение
Это только часть эффектов, которые можно реализовать в Unity. Кроме них, вы можете использовать шейдеры, частицы, свет и многое другое.
Подробнее обо всем этом вы можете узнать на курсе «Профессия разработчик игр на Unity». Там вы будете осваивать Unity, работая над реальными проектами, поэтому к концу курса не только научитесь создавать игры, но и соберете хорошее портфолио.
 Все
                                Все
                             Истории
                                        Истории Дизайн
                                    Дизайн Код
                                    Код Геймдев
                                    Геймдев Бизнес
                                    Бизнес Маркетинг
                                    Маркетинг Управление
                                    Управление Кино
                                    Кино Музыка
                                    Музыка Проектная фотография
                                    Проектная фотография Развитие
                                    Развитие Здоровье
                                    Здоровье Деньги
                                    Деньги Образование
                                    Образование EdTech
                                    EdTech Корп. обучение
                                    Корп. обучение Блог Skillbox
                                    Блог Skillbox Глоссарий
                                        Глоссарий Спецпроекты
                                        Спецпроекты Профориентация
                                        Профориентация 
                                     
                     
                     
                                     
                                     
                                     
                                    