- Home /
Animating UI Images - Wondering if there is a more formal way of doing things...
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<Image>();
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;
}
}
}
Your answer
Follow this Question
Related Questions
What is the best method to display different pictures? 0 Answers
UI Animation not playing/updating? 0 Answers
How do you make an UI animation longer than one second? 3 Answers
Unity 5.0 Trying to Change the Image - Source Image via Script 3 Answers
Detect Input type by checking if ANY key on keyboardd/joypad is pressed 1 Answer