Вы сейчас тут: Главная » Каталог статей » Обучающие статьи
Отображение графического таймера
Категория: Обучающие статьи | Просмотров: 503 | Добавил: Badman
Таймеры могут иметь большое влияние, когда они отображаются графически. Этот рецепт иллюстрирует простой способ отображения отсчета в стиле взлета ракеты, используя изображения для каждой секунды (5, 4, 3, 2, 1) и одно окончательное изображение для "blast off (взлет)". Следующий скриншот показывает пример этого отсчета:



Для отображения графического таймера, выполните следующие действия:

1.Прикрепите следующий C# скрипт к Main Camera:

using UnityEngine;
using System.Collections;
public class CountdownGraphical : MonoBehaviour {

public Texture2D imageDigit1;
public Texture2D imageDigit2;
public Texture2D imageDigit3;
public Texture2D imageDigit4;
public Texture2D imageDigit5;
public Texture2D imageBlastOffText;
private int countdownTimerDelay;
private float countdownTimerStartTime;

void Awake(){
CountdownTimerReset( 5 );
}

void OnGUI(){
GUILayout.Label( CountdownTimerImage() );
}

void CountdownTimerReset(int delayInSeconds){
countdownTimerDelay = delayInSeconds;
countdownTimerStartTime = Time.time;
}

int CountdownTimerSecondsRemaining(){
int elapsedSeconds = (int)(Time.time - countdownTimerStartTime);
int secondsLeft = (countdownTimerDelay - elapsedSeconds);
return secondsLeft;
}

Texture2D CountdownTimerImage(){
switch( CountdownTimerSecondsRemaining() ){
case 5: return imageDigit5;
case 4: return imageDigit4;
case 3: return imageDigit3;
case 2: return imageDigit2;
case 1: return imageDigit1;
default: return imageBlastOffText;
}
}
}


2. В Hierarchy выберите Main Camera и перетащите каждое изображение в нужные переменные
Альтернативный способ реализации алгоритма таймера может быть представлен, в этом рецепте, путем сравнения текущих истекших секунд (Time.time) со временем запуска таймера - countdownTimerStartTime.

В этом рецепте, метод OnGUI() отображает label с изображением, который возвращается из метода CountdownTimerImage().Этот метод использует переключатель switch для возврата соответствующего изображения к текущему количеству оставшихся секунд.

Теги: таймер
Комментарии пользователей
Количество комментариев к материалу: 0
Добавлять комментарии могут только зарегистрированные пользователи.
Регистрация   Вход
Авторизация
Форма входа на сайт
Чат
Удобное общение
200
Категории раздела
Категории материалов
Голосование
Опрос пользователей
Какую версию Unity3D вы используете?
Всего ответов: 124
Результаты
Статистика
Сатистика на сайте

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Все материалы опубликованные на сайте представлены исключительно для ознакомительного просьмота. Любое ваше несанкционированное использование "ассетов" в ваших коммерческих проектах карается уголовной ответственностью.
Хостинг от uCoz