Hello, I can’t seem to set sortingLayerName. When I set it, my sprite disappears and ends up with no layer at all. His sorting layer order seems to work fine. Below is my code followed by the console output. Do I need to set it via mask or something? Thanks for the help!!
** Edit: The problem line, I believe, is 35 **
using UnityEngine;
using System.Collections;
public class raiselayer : MonoBehaviour {
public int sortingOrder = 0;
private SpriteRenderer sprite;
void Start ()
{
sprite = GetComponent<SpriteRenderer>();
}
void Update ()
{
bool Raise= Input.GetButtonDown Raise
if (Raise)
{
Debug.Log ("Raise called");
Raise();
}
}
void Raise()
{
Debug.Log ("sprite = " + sprite);
Debug.Log ("sprite.sortingOrder = " + sprite.sortingOrder);
Debug.Log ("sprite.sortingLayerName = " + sprite.sortingLayerName);
sprite.sortingOrder = 5;
sprite.sortingLayerName = "building2";
Debug.Log ("sprite.sortingOrder = " + sprite.sortingOrder);
Debug.Log ("sprite.sortingLayerName = " + sprite.sortingLayerName);
}
}
Console Output:
Raise Called
sprite = MySprite (UnityEngine.SpriteRenderer)
sprite.sortingOrder = 1
sprite.sortingLayerName = building1
sprite.sortingOrder = 5
sprite.sortingLayerName =