Unity - Руководство Sprite Renderer
Компонентът Sprite Renderer ви позволява да изобразявате изображения като спрайтове за използване както в 2D, така и в 3D сцени.
Добавете го към GameObject чрез менюто Components (Component > Rendering > Sprite Renderer или алтернативно, можете просто да създадете GameObject директно с вече прикачен Sprite Renderer (меню:GameObject > 2D Object > Sprite ).

Спрайт | Спрайтът за изобразяване. Спрайтовете могат да се създават от текстури с помощта на настройката Sprite в инструмента за импортиране на текстури. |
Цвят | Цветът на мрежата, която се визуализира. |
Обръщане | Обърнете спрайта в равнините X или Y. |
Материал | Материалът, използван за изобразяване на спрайта. |
Сортиращ слой | Слоят, използван за приоритетна задача за наслагване по време на рендиране. |
Поръчка в слой | Приоритетът на наслагването на спрайта в неговия слой. Колкото по-ниско е числото, толкова по-рано ще бъде изобразен спрайтът и спрайтовете с по-висок номер ще бъдат изтеглени върху по-ниските. |
В 3D графиките външният вид на даден обект може да бъде различен в зависимост от осветлението и гледната точка на обекта. Но в 2D изображението просто се показва на екрана без никакви трансформации, с изключение на основното движение, мащабиране и завъртане. Позицията на спрайта се дава от 2D координати, така че няма концепция за „дълбочина“ или разстояние от камерата.
Въпреки това е важно да имате начин да определите приоритета на припокриване на различни спрайтове (т.е. кои спрайтове ще бъдат начертани върху други, ако се припокриват). Например, в игра за шофиране, колата трябва да се вижда, когато минава през равно мястообекти на пътя. Unity използва концепцията за сортиране на слоеве, за да позволи спрайтовете да бъдат разделени на групи с припокриващи се приоритети. Спрайтове с по-нисък слой за сортиране ще бъдат изчертани под спрайтове с по-висок слой за сортиране.
Понякога два или повече обекта в един и същи слой за сортиране могат да се припокриват (например 2 знака в страничен скролер). Свойството ред в слой може да се използва за приоритизиране на спрайтове в същия слой. Както при слоевете за сортиране, се прилага правилото, че обектите с по-малка числова стойност се изобразяват първи и се наслагват от обекти с по-висок номер. Вижте мениджъра на слоевете за подробности относно редактирането на сортирани слоеве.
Sprite Renderer използва текстурата, посочена в свойството Sprite, но използва шейдъра и други свойства от свойството Material (това се прави с помощта на MaterialPropertyBlock зад кулисите). Това означава, че можете да използвате един и същ материал, за да изобразите различни спрайтове, без да докосвате всяка текстура поотделно.
Спрайтът се изобразява върху мрежа, която използва позицията, цвета и UV на всеки връх, но няма нормален вектор. Ако вашият материал изисква нормални вектори, тогава можете да ги изчислите с помощта на вертексен шейдър (вижте Примери за повърхностни шейдъри.
Стандартни шейдъри, използвани за спрайтове:
Sprites/Default е прост шейдър за алфа смесване, който не взаимодейства с осветлението в сцената.
Sprites/Diffuse е просто алфа смесен повърхностен шейдър, който взаимодейства с осветлението. Той генерира нормален вектор от предната страна (0,0,-1).
Докато спрайтовете могат да се обръщат чрез задаване на negative transform.scale , това има страничния ефект от обръщане и на дететоGameObjects и също обръщане на колайдерите, което може да изисква интензивна производителност или по друг начин да не се предпочита.
Функцията за обръщане на SpriteRenderer предоставя лека алтернатива, която не засяга други компоненти или GameObjects. Той просто обръща изобразения спрайт по оста x или y и нищо друго.