Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Смена фона несколько раз на Unity

demon a-o Ученик (227), на голосовании 2 месяца назад
Мне нужно что бы при старте сцены спрайт фона менялся каждые 5 секунд на другой(примерно 10 штук) и что бы это время можно было регулировать
если знаете как в игре лунтик х ПОМОГИТЕ!
мне очень надо
Голосование за лучший ответ
oleg Dupont Ученик (162) 3 месяца назад
 using System.Collections; 
using UnityEngine;

public class BackgroundChanger : MonoBehaviour
{
public SpriteRenderer backgroundRenderer; // Ссылка на SpriteRenderer, который показывает фон
public Sprite[] backgrounds; // Массив спрайтов для фонов
public float changeInterval = 5.0f; // Интервал смены фона (в секундах)

private int currentBackgroundIndex = 0; // Текущий индекс спрайта

void Start()
{
if (backgrounds.Length > 0)
{
StartCoroutine(ChangeBackground());
}
else
{
Debug.LogWarning("No backgrounds assigned to the BackgroundChanger script.");
}
}

IEnumerator ChangeBackground()
{
while (true)
{
yield return new WaitForSeconds(changeInterval);
currentBackgroundIndex = (currentBackgroundIndex + 1) % backgrounds.Length;
backgroundRenderer.sprite = backgrounds[currentBackgroundIndex];
}
}
}
demon a-oУченик (227) 3 месяца назад
а спрайт рендер это что?
demon a-oУченик (227) 3 месяца назад
всё понял спасибо большое!
demon a-oУченик (227) 3 месяца назад
А как сделать так чтобы один раз цыкл был?
Похожие вопросы