|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
09.02.2018, 17:27 | #1 |
Пользователь
Регистрация: 17.01.2018
Сообщений: 13
|
DontDestrouOnLoad - Unity
Привет
Есть объект 1 на котором висит AudioSourse. Она Play On Awake=true; Есть объект 2 на котором висит скрипт Sounds с публичным экземпляром этой AudioSourse(ну типа public AudioSourse griby_mejdy_namy_taet_led. Сюда я перетащил объект 1. Работает. Музыка играет при старте сцены. Когда я жму "replay" музыка начинает играть заново, т.е объект 2 пересоздается Код кнопки "replay": "SceneManager.LoadScene(1);" Я хочу, чтобы музыка играла независимо от того нажимаю ли я кнопку Для этого я создал скрипт DontDestroyOnLoad и повесил его на объект 2 Код DontDestroyOnLoad: "using UnityEngine; public class DontDestroyOnLoad : MonoBehaviour { void Start() { DontDestroyOnLoad(this); } }" Проблема в том, что музыка не только начинает играть заново при нажатии на кнопку, так еще и не создается еще один экземпляр музыки, т.е скрипт DontDestroyOnLoad не работает Подскажите пожалуйста что я делаю не так? |
23.02.2018, 03:26 | #2 |
Пользователь
Регистрация: 11.12.2017
Сообщений: 15
|
Не перезапускайте сцену. Просто создавайте заново объекты в другой точке, а саму сцену не трогайте. И повесьте музыку на сцену независимо от других объектов, которые вы можете удалять и создавать повторно.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Игра на Unity | Nik_022 | Фриланс | 0 | 24.09.2017 14:11 |
C# и Unity | WillyWonder | C# (си шарп) | 5 | 19.05.2017 09:23 |
Unity | Leyla84 | Помощь студентам | 0 | 01.02.2014 00:04 |
Unity 3D | bumer7721 | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 1 | 10.06.2011 19:19 |
Unity 3D | bumer7721 | Помощь студентам | 0 | 10.06.2011 16:16 |