Всем привет! И это снова я! Сейчас мы будем делать mp3 плеер с переключением треков в Unity! Итак... Приступим! Сначала укажем, AudioSource, который будет нашим плеером (AudioSource - источник звука). Но до этого его нужно сделать в редакторе (Component => Audio => AudioSource). И пишем скрипт (C#). Укажем преременную AudioSource:
public AudioSource pleer;
Тут мы в инспекторе объявим наш AudioSource в переменную. Теперь укажем переменную треков в плеере:
public AudioClip[] treks;
Мы поставили "[]" для того, чтобы в инспекторе же указывать количество треков. Теперь идём дальше. Поставим две числовые переменные:
int currentTrek = 0; int numberTrek;
currentTrek - это переменная, отвечающая за играющий трек, а numberTrek - (всё и так понятно) номер трека. Теперь создадим метод (void) Awake(), и укажем, чему равен номер нашего трека:
void Awake() { numberTrek = treks.Length - 1; }
Мы указали, что numberTrek - это количество треков, но буз одного. Теперь делаем метод (void) Update():
void Update() { if (Input.GetKeyDown(KeyCode.Z)) { pleer.Play(); }
if (Input.GetKeyDown(KeyCode.X)) { pleer.Stop(); } }
Тут мы сделали запуск и остановку нашего AudioSource. Запуск будет происходить по нажатию "Z", а остановка по нажатию "X". Создадим новый метод с числовой переменной в нём. Переключатель треков. Это будет метод (void) SelectTrek(int i):
Итак... Сейчас я объясню, что написано в методе. Мы создали цикл с числовой переменной cnt. Указали, что она меньше количества треков и прибавляли её. Дальше мы ставим условие, если cnt равно i! И если они равны, то у нашего AudioSource "pleer" клип - это переменная treks с номером переменной cnt. Теперь возвращаемся в метод (void) Update(), и пишем условия переключения:
if (Input.GetKeyDown(KeyCode.B)) { if (currentTrek + 1 <= numberTrek) { currentTrek++; SelectTrek(currentTrek); pleer.Play(); } }
Тут мы поставили условие, если нажата кнопка "B". И в условии второе условие, если currentTrek + 1 меньше или равно numberTrek, то currentTrek увеличивается на один, переменная в SelectTrek() i равна currentTrek, и запускаем AudioSource. Почти таким же образом делаем перемотку трека назад, но мы сделаем условие в else:
Также если вы считаете, что данный материал мог быть интересен и полезен кому-то из ваших друзей, то вы бы могли посоветовать его, отправив сообщение на e-mail друга:
Игровые объявления и предложения:
Если вас заинтересовал материал «Делаем MP3-плеер в Unity3D», и вы бы хотели прочесть что-то на эту же тему, то вы можете воспользоваться списком схожих материалов ниже. Данный список сформирован автоматически по тематическим меткам раздела.
Предлагаются такие схожие материалы:
Если вы ведёте свой блог, микроблог, либо участвуете в какой-то популярной социальной сети, то вы можете быстро поделиться данной заметкой со своими друзьями и посетителями.