Я делаю приложение для интерактивной книги, в котором игрок будет сворачивать страницы и видеть анимацию спрайтов на странице. Я пытался загружать спрайты отдельно (300 изображений размером 512x512). Но когда я попробовал этот метод, iPad вылетает и говорит о проблеме с памятью. Я проверил профиль памяти на Unity, и приложение загружало «1,2 ГБ» в оперативную память. Он такой огромный, что iPad прав.
Итак, во-первых, я думаю, что мне нужно загрузить только указанное количество страниц, и когда игрок переворачивает страницы вперед, я могу загрузить новые ресурсы и уничтожить ресурсы предыдущей страницы. Когда я попробовал это, когда игрок переворачивает страницу, он зависает на несколько секунд, чтобы загрузить новые спрайты, и это слишком плохо для взаимодействия с пользователем.
Второе, о чем я думаю прямо сейчас, скажем, у меня есть 30 кадров для 1 анимации спрайта, я просто помещаю 30 кадров в текстуру и использую только эту текстуру для анимации спрайтов. Я имею в виду, что вместо использования 30 разных изображений мне нужно использовать 1 текстуру атласа спрайта, которая содержит все кадры, и я могу изменить прямоугольник во время выполнения, чтобы представить анимацию спрайта. Но я не знаю, как я могу использовать только 1 текстуру для представления 30 кадров?