Hello,
I've been researching Animating UI Images, and the best solution I came up with seems kind of informal...
I was wondering if there was a better, built-in way of achieving this...
I tried using a SpriteRenderer, an Animator, and an Animation using the "drag and drop sliced sprite" technique discussed @ http://michaelcummings.net/mathoms/creating-2d-animated-sprites-using-unity-4.3 , but was unable to get the camera to render the sprite (although I did notice everything looked fine in the scene pane).
Thanks.
Code:
using UnityEngine;
using UnityEngine.UI;
using System.Collections;
public class UI_Image_Animator : MonoBehaviour
{
public Sprite[] sprites;
public float frameLength;
private int spriteIndex;
private Image image;
private float timeRemaining;
void Awake()
{
image = GetComponent();
spriteIndex = 0;
image.sprite = sprites[0];
}
void Start ()
{
timeRemaining = frameLength;
}
void Update ()
{
timeRemaining -= Time.deltaTime;
if(timeRemaining <= 0)
{
if(spriteIndex < sprites.Length - 1)
spriteIndex++;
else
spriteIndex = 0;
image.sprite = sprites[spriteIndex];
timeRemaining = frameLength;
}
}
}
↧