Нужен совет по следующей проблеме.Я разрабатываю небольшую игру, и у меня есть * .png файл для фона.Мне нужно поместить его на задний план основного экрана игры.Более того, он должен быть в 2 раза больше по ширине и в 1,5 раза больше по высоте, чем размеры экрана, потому что мои объекты «пролетают» через эти границы.Кроме того, экран движется вокруг этого фона в игровом процессе.Но я немного застрял на том, как это сделать.
Я хочу, чтобы мой фон выглядел одинаково на всех экранах с разным размером и плотностью.Я пробовал некоторые решения, но они мне не нравятся, или я сделал что-то не так:
Создайте разные фоновые изображения и поместите их в специальные папки.Это звучит хорошо, но с количеством разрешений устройств Android на рынке это не звучит хорошо для меня.Это только увеличит размер * .apk.И если я буду использовать методы для установки фона, это растянет изображение - я думаю, это не очень хорошая идея.
В методе onDraw()
нарисуйте изображение на холсте.Я должен поместить его верхний левый угол в самый верхний левый угол возможной игровой области и нарисовать его.Но вот несколько вариантов:
- вырезать из основного изображения нужное мне изображение и нарисовать только этот фрагмент (то, что я сейчас использую)
- изменить размер изображения и нарисовать сэто меняет
- что-то еще ...
Итак, вопрос в том, что является лучшим вариантом для рисования фона для игрового экрана, когда вам это нужнобыть почти в два раза больше размера экрана, сделать так, чтобы он выглядел одинаково на всех устройствах, и перемещать экран во время игры?