void Update()
{
//-- calculate time
msecs += Time.deltaTime * clockSpeed;
if(msecs >= 1.0f)
{
msecs -= 1.0f;
seconds++;
if(seconds >= 60)
{
seconds = 0;
minutes++;
if(minutes > 60)
{
minutes = 0;
hour++;
if(hour >= 24)
hour = 0;
}
}
}
//-- calculate pointer angles
float rotationSeconds = (360.0f / 60.0f) * seconds;
float rotationMinutes = (360.0f / 60.0f) * minutes;
float rotationHours = ((360.0f / 12.0f) * hour) + ((360.0f / (60.0f * 12.0f)) * minutes);
//-- draw pointers
pointerSeconds.transform.localEulerAngles = new Vector3(0.0f, 0.0f, rotationSeconds);
pointerMinutes.transform.localEulerAngles = new Vector3(0.0f, 0.0f, rotationMinutes);
pointerHours.transform.localEulerAngles = new Vector3(0.0f, 0.0f, rotationHours);
}