30 lines
730 B
C#
30 lines
730 B
C#
using UnityEngine;
|
|
|
|
[RequireComponent(typeof(SpriteRenderer))]
|
|
public class AutoSquareSprite : MonoBehaviour
|
|
{
|
|
private static Sprite cachedSquare;
|
|
|
|
private void Awake()
|
|
{
|
|
var spriteRenderer = GetComponent<SpriteRenderer>();
|
|
if (spriteRenderer.sprite != null)
|
|
{
|
|
return;
|
|
}
|
|
|
|
if (cachedSquare == null)
|
|
{
|
|
var texture = Texture2D.whiteTexture;
|
|
cachedSquare = Sprite.Create(
|
|
texture,
|
|
new Rect(0f, 0f, texture.width, texture.height),
|
|
new Vector2(0.5f, 0.5f),
|
|
1f);
|
|
cachedSquare.name = "RuntimeSquare";
|
|
}
|
|
|
|
spriteRenderer.sprite = cachedSquare;
|
|
}
|
|
}
|