- Home /
Performance question: updating a clock
So I adapted the code to create an analog clock from here:
https://unity3d.com/learn/tutorials/modules/beginner/scripting/simple-clock
which was very useful. I went with a clock without a hand for 'seconds' (so only 'hours' and 'minutes' ar shown) but it got me thinking, now every update cycle the rotation will have to be recalculated whereas in reality this would have to happen only once a minute.
Could this really be an issue (my target platform is Android btw) or is the rotation of an object such a small thing it's not worth fussing about? If not, would I have to use InvokeRepeating?
Answer by OncaLupe · Nov 16, 2015 at 08:26 PM
I think it depends on how much you have going in your game, as well as how you want the clock to operate. Normally it's probably not a huge deal to have it in Update, but if your game has a lot going on, it could help a little bit to only update when needed since it's mobile.
The rate you choose to update will also depend on how smooth you want the hand movement to be. If you want them to move smoothly between the minutes, then you'll need to choose a rate of probably every second or so. If you want the style where the minute hand snaps between the positions, then once per minute.
As for how to do this, both InvokeRepeating and Coroutines would work.
float clockUpdateRate = 60f;
void Start()
{
InvokeRepeating("UpdateClock", 0f, clockUpdateRate);
}
void UpdateClock()
{
//do stuff
}
Or:
float clockUpdateRate = 60f;
void Start()
{
StartCoroutine(UpdateClock ());
}
IEnumerator UpdateClock()
{
while(true)
{
//do stuff
yield return new WaitForSeconds(clockUpdateRate);
}
}
Your answer
Follow this Question
Related Questions
Android & IOS Performance Difference 1 Answer
What is TA Load in the Android internal profiler? 0 Answers
Android built game unity Profiler.render drawing clear and GPUProfiler.endQueries cause spikes. 1 Answer
FPS is too Low on Mediatek Android devices with Unity 2018 1 Answer
Unity 2019.1 LWRP sample scene fps problem on Huawei Y9 2018 1 Answer