Silent failure of Sprite.Create() ?
Hello,
I'm completely new to Unity, and I'm trying to create a sprite when loading a scene. Here is my code :
PlayerSprite = new GameObject(playerID);
Debug.Log(PlayerSprite);
PlayerRenderer = PlayerSprite.AddComponent<SpriteRenderer>();
PlayerTexture = Resources.Load<Texture2D>(data.PlayerTexture);
PlayerRenderer.sprite = Sprite.Create(PlayerTexture, new Rect(0, 0, PlayerTexture.width, PlayerTexture.height), new Vector2(PlayerTexture.width / 2.0f, PlayerTexture.height / 2.0f), 100f);
PlayerBody = PlayerSprite.AddComponent<Rigidbody2D>();
PlayerCollider = PlayerSprite.AddComponent<BoxCollider2D>();
All the variables used are initialized/have appropriate values, and I don't get any warnings or errors during script compilation or at runtime. However, the sprite isn't displayed on screen and the inspector lists my object's spriteRenderer as having no sprite. The other components are properly created and some of them work properly ( ie the RigidBody reacts to user input).
I feel like I am missing something obvious, but I have no idea what. Could someone enlighten me ?
Thanks in advance.
Your answer
Follow this Question
Related Questions
How to make sprite follow gameObject on trigger? 0 Answers
Player rotation 2d 0 Answers
Destroying 2D terrain at runtime 0 Answers
Scrolling background wall collision problem 0 Answers
Error messages with 2d character sprite flipping and movement. 1 Answer