- Home /
Create new sorting layer for sprite in code
I have created a functionality in our 2D project where prefab gameobjects are spawned through code. These gameobjects all appear at about the same spot.
The spawned gameobjects consist of several sprites (eyes, wings, legs, body etc.) for the animations that have their sorting layer set so they look like one proper image.
Now however the spawned gameobjects do not sort properly between each other. All the eyes for example all appear in the same order of the sorting layer. I need the whole spawned gameobject to be on it's own layer so they all look to be properly in front or behind in each other instead what I have now with all the eyeballs at the front layer and all the bodies in the back. Quite disconcerting that.....
Anyone have any idea how to create a new sorting layer in code and place the whole of the newly spawned gameobject in this new sorting layer.... Or is there a better sophisticated way of doing this?
Thanks!
In the meanwhile i found this question which is about the same. I implemented it to indeed loop through all the sprite children of my gameobject and increase their individual sorting order. If someone still has a more elegant solution, I am all ears!
Your answer
![](https://koobas.hobune.stream/wayback/20220613192917im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
Sprite layer order determined by Y value 4 Answers
Sorting Layers? How? 1 Answer
Best way to handle Sprite sorting in compound objects? 2 Answers
How to change sorting layer of material/3D object so it appears in front of the sprites? 0 Answers
How can I mask part of a sprite? Should I use a shader? 0 Answers