Я готов полностью использовать AssetManager из Libgdx и всех его загрузчиков. Но у меня проблема с пониманием этой особой связи между Skin и TextureAtlas.TextureAtlas and Skin libgdx
Я хочу использовать способ JSON для создания скинов как можно больше.
В вики я могу прочитать:
Обратите внимание на JSON не описывает текстуру области, ninepatche шпагат, или другую информацию, которая поступает из атласа текстуры
На странице SkinLoader я читать следующее:
AssetLoader для экземпляров кожи. (1) Все текстуры и экземпляры BitmapFont будут загружаться как зависимости. Передача SkinLoader.SkinParameter позволяет указать (2) точное имя текстуры, связанной с указанным скином. В противном случае текстуру кожи просматривают так же, как с вызовом (3) Skin.Skin (com.badlogic.gdx.files.FileHandle). SkinLoader.SkinParameter также позволяет устанавливать именованные ресурсы, которые будут добавлены в скин перед загрузкой json-файла, что означает, что на них можно ссылаться из самого json-файла. Это полезно для динамических ресурсов, таких как BitmapFont, сгенерированный через FreeTypeFontGenerator.
Так вот, где мои мысли, когда я читаю это.
(1) Все текстуры. Они используют множественное число, поэтому я думаю, что они упоминают текстуру (как рисоваемую), которая может понадобиться для кнопки, например.
(2) Точное название текстуры. Так что теперь, может быть, они говорят об TextureAtlas, потому что SkinParameter как только два поля ресурсов и textureAtlasPath.
(3) Это, кажется, подтверждает (2)
Так что, если я понимаю, если я хочу использовать этот метод, чтобы загрузить мою кожу, я должен использовать TexturePacker и текстурный атлас.
Можете ли вы подтвердить, что я правильно понял это и что нет НИКАКОГО способа инициализации текстуры, которая будет использоваться в моей коже без TextureAtlas, но с простыми файлами png?
И если вы используете TexturePacker для создания моего файла пакета, очевидно, мне придется переупаковать все, когда я сделаю модификацию на одной из моих текстур, не так ли?
Я не мог просить больше. Спасибо ! – Vanesbush
Привет, Вы используете 'Gdx.files.internal ...', хотя вы используете loadManager для его загрузки? или я что-то упускаю? –
@ MrCharli3 что вы получаете? Мои активы находятся во внутреннем пространстве. – Tenfour04