unity2d каква е разликата между спрайт лист и спрайт пакет?

Това, което имам предвид различно е неефективно, когато играта работи.

sprite sheet: поставете няколко файла в един текстурен файл и го импортирайте в unity, аз импортирам само една текстура.

sprite packager: импортирайте множество файлове в единство, след което използвайте sprite packager, за да го опаковате в една текстура.

И така, каква е разликата между тях? кой е по-добър за спрайт анимация?

Благодаря ти!


person Jonguo    schedule 19.08.2014    source източник


Отговори (1)


По отношение на честотата на кадрите ще имате малък или никакъв ефект. Въпреки това по отношение на паметта, може да видите ефект, защото пакетът за спрайтове ще може да се справя по-добре с анимации, които имат гъвкав размер.

Със спрайт листове предполагам, че имате предвид атласи, които са съставени от клетки с фиксиран размер. Няма проблем с този подход, освен ако вашата анимация не варира драматично по размер, което прави необходимо увеличаване на общия размер на клетката, за да покрие областта на най-големия анимационен кадър. В крайна сметка ще имате огромни количества „празно“ и по този начин загубено пространство. Това е лошо, тъй като в мобилната памет ще бъде вашият проблем.

Като цяло листовете със спрайтове са подходящи за анимации, които се вписват в ефективен размер на клетка, като анимирани герои: въведете описание на изображението тук

С Unity Sprite Packer няма да имате този проблем, тъй като той ще „опакова“ загубеното празно пространство заедно и ще създаде оптимален атлас, оттук и името „packer“.

Можете да видите това в документацията: резултат за пакетиране на спрайтове

Експлозията (или каквото и да е) очевидно използва оптимално пространство. В лист със спрайтове ще трябва да създадете клетки с размера на най-голямата експлозия.

От гледна точка на лекотата на програмиране, като използвате пакета за спрайтове, може да се наложи да добавите малко код, за да коригирате оригиналния размер на спрайта, така че анимацията да върви гладко в „точката на закрепване“. С листовете със спрайтове избягвате това, като имате фиксиран размер на клетката.

person Rudolfwm    schedule 19.08.2014