5 принципов хорошего интерфейса в играх

Советы по разработке пользовательского интерфейса для игр

Путь

Путь — это то, что проходит персонаж, чтобы достичь цели. На пути должны появляться всяческие препятствия, которые мешают просто прийти и забрать то, что тебе нужно. Эти преграды не должны быть слишком сложными, потому что иначе игрок почувствует себя беспомощным и не захочет продолжать. С другой стороны, слишком просто тоже быть не должно, потому что тогда станет скучно.

В пути игрок должен познакомиться с игровыми механиками — понять, как устроена боевая система, что можно купить и продать, как можно перемещаться по локациям — и овладеть ими. Например, он должен научиться мастерски убивать врагов.

Игра “Мухобойки”

Для этой игры учитель заранее готовит карточки с пройденными или новыми словами и прикрепляет их к доске. Нужен также один судья, который будет считать баллы команд.

Ученики делятся на две команды. Команды становятся в две линии. Двое первых учеников с команд подходят ближе к доске. Учитель выдает им мухобойки (fly swatters). Затем учитель называет слово на русском языке и задача учеников – как можно быстрее ударить по карточке с английским эквивалентом, «прихлопнуть» это слово. Тот, кто был первым – приносит один балл своей команде и передает мухобойку следующему игроку своей команды. Ученик из другой команды, который не успел первым ударить по слову, остается у доски, пока не ударит первым по следующему слову. Если ученики ударяют по слову, которое не является правильным переводом – они теряют один балл.

Шкала здоровья не так проста

Шкала здоровья – неотъемлемая часть пользовательского интерфейса, и при разработке этого элемента дизайнеры прибегают к одной хитрости.

Во время игры вы наверняка ведете себя гораздо смелее, если имеете 100% здоровья. Но вы когда-нибудь замечали, что, находясь на последнем издыхании, вы, как правило, изо всех сил стараетесь держаться до конца, цепляясь за этот последний процент?

Ощущение, что вы можете умереть в любой момент, которое длится чуть дольше, чем вы ожидаете, создается специально. И, напротив, верхняя часть шкалы здоровья иногда истощается немного быстрее, чем средняя, зато вы сразу осознаете, что ваш персонаж получил повреждения.

В следующий раз, когда вы посмотрите на панель здоровья, подумайте о следующих числах (они приблизительные, конечно же): от 100% до 90% исчезают в мгновение ока, от 89% до 2% истощаются с нормальной скоростью, и остается вот этот последний один процент, который на самом деле может быть равноценен 10-20 процентам.

Лучший трюк, бесспорно.

Sid Meier’s Civilization IV

  • Дата выхода: 2005
  • Разработчик: Firaxis Games
  • Системные требования: Windows XP и выше, 1.2 GHz CPU, 256 MB RAM
  • Платформы: ПК

Civilization IV представляет жанр пошаговых стратегий жанра 4Х — «изучай, расширяй, эксплуатируй, уничтожай». Вы возглавите одну из фракций, которые основаны на реально существовавших народах или цивилизаций, и получите шанс построить свою империю.

В начале игры вы выбираете тип и размер карты, от чего зависит количество других цивилизаций, с которыми вам нужно взаимодействовать: враждовать или дружить. Игра всегда начинается с 4000 года до нашей эры, и изначально у вас есть только один поселенец и один воин/разведчик. Ваша задача построить сильное государство и одержать победу над другими странами.

В игре есть несколько вариантов победы:

По очкам. В 2050 году игра заканчивается, побеждает цивилизация с наибольшим количеством очков.
Военная. Победите и подчините себе другие страны или же просто уничтожьте их.
Территориальная. Побеждает цивилизация захватившая большую часть территории (около 50%).
Культурная. Игра заканчивается, как только одна из наций получает 3 города с уровнем культуры по 50 000 очков каждый.
Космическая/научная. Побеждает нация, которая первая успешно отправляет корабль на Альфа Центавру

Важное условие: корабль должен достичь звезды.
Дипломатическая. Игра заканчивается, когда при выборах в ООН одна из стран становится мировым лидером. 

Цель

Цель — это то, чего добивается игрок или какая перед ним поставлена задача. Иногда главный герой должен спасти мир или защитить родину на войне, но бывают и такие игры, где нужно найти выход из психиатрической лечебницы или отомстить за убийство семьи.

Какой бы ни была цель, игрок должен понимать, почему ее нужно достичь

То есть он должен видеть, что это важно для его персонажа и что у него есть мотивация. Например, если он мстит за жену и детей, то нужно показать, что они действительно были близки — проводили время вместе и радовались

Тут хорошо работают контрасты: когда сначала показывают счастливого героя в кругу семьи, а потом его же, но уже в депрессии из-за утраты.

Даже если речь идет о спасении мира, то это тоже должно касаться персонажа — а следовательно, и игрока — лично. Высокие побуждения героя никого не впечатлят, потому что это избито. Нужно что-то большее, чем всеобщее благо, — собственные интересы.

Например, иногда персонаж понимает, что если умрут все, то вместе с ними и он. Или же им движет жажда славы или наживы, а может, герой просто следует за своей любовью и параллельно успевает всех спасти. Как бы то ни было, необходимо показать чувства, которые знакомы игроку, чтобы он мог ассоциировать себя с главным героем.

ВАЖНО!

Игру нужно рассчитывать на определенную аудиторию — кому-то интересно играть за вора, который хочет стать лучшим в своем деле, но кому-то больше по душе боевые действия для захвата мира.

Формирование игровых моделей

Следующая ступень обучения 3D-моделированию для детей — выстраивание геймдев-моделей. Сконструированные объекты помещаются в игровой движок: так можно научиться самому создавать графику для компьютерных или мобильных игр.

Выстраивание моделей под gamedev — отдельная захватывающая вселенная: она подразумевает использование нейросетей, текстур и референсов. Подростку предстоит разобраться с терминами:

  • Пайплайн — процесс образования модели. На этом этапе будущий дизайнер готовится к моделированию, различает High poly и Low poly, умеет работать с набросками.
  • Ретопология. Задача — извлечь наилучшее качество трехмерной модели при минимально возможном количестве полигонов.
  • UV-развертка — перенесение объемных форм на плоскость. Юный конструктор создает швы и UV-шеллы — кусочки развертки.
  • Тексель — элемент текстуры. Вырабатывается понимание взаимосвязи развертки и текстур, маскировки швов.
  • Запекание — предварительное вычисление для последующего процесса. Детали и текстуры сводятся в единый вариант.
  • Рисование по модели. Школьник действует в режиме раскрашивания и производит текстурные маски.
  • Художественная подача. Внести в сцену сложный свет, дополнить туманом и объемом, настроить фокус и расставить объекты — незаменимые для финального итога акценты.

В завершении модели проходят подготовку к экспорту из графического редактора Blender в движок Unity.

***

Обучение компьютерной графике для детей в «Блендере» — увлекательное и полезное хобби, которое подарит массу удовольствия в процессе и обернется высокооплачиваемой профессией в результате.

Пройти обучение можно на курсе «3D-моделирование для школьников в Blender» от школы «Пиксель».

Еще интересно:

  • Создание игр в Unity 3D — бесплатные видеоуроки для детей
  • Как онлайн-игры помогают изучать программирование детям
  • Подписывайтесь на наш Дзен-канал, мы делимся бесплатными уроками по программированию для детей и другими полезными материалами!

Вконтакте: vk.com/clubpixel_ru ТикТок: www.tiktok.com/@clubpixel.ru Телеграм: t.me/pixelstudy YouTube: www.youtube.com/c/clubpixel

Начало. Canvas.

Создание полотна для интерфейса

Я думаю объяснять как создавать сцену нет смысла, поэтому пропустим все лишние действия и перейдем непосредственно к самому интерфейсу. Новая система построена на модулях ввода (Input Module), полотне (Canvas) и самих объектах интерфейса. Для создания интерфейса нам надо знать только про полотно и сами элементы. Как вы уже догадались нам потребуется полотно, на котором мы будем размещать наши элементы. Для этого идем в меню «»После того, как оно появилось на сцене, выберите его и нажмите для того, чтобы отобразить его перед камерой, так же удобство можно переключиться в 2D режим . В инспекторе для редактирования доступны следующие очень важные свойства, которые определяют поведение нашего полотна:

В зависимости от этого параметра становятся доступны другие остальные поля. Поэтому сперва рассмотрим значения данного поля.

В данном режиме полотно растягивается по размерам экрана и отображается без связи со сценой или камерой (UI будет показан даже в том случае, когда на сцене нету камеры). В случае изменения размера окна, полотно будет растянуто под размеры экрана и размещенные элементы будут перегруппированы. Полотно будет рисоваться поверх всех остальных графических элементов. — использовать ли antialiasing

В данном режиме полотно рисуется на плоскости перпендикулярной взгляду камеры, на некотором расстоянии от точки взгляда. Размер полотна не меняется с изменением расстояния, оно всегда растягивается, чтобы заполнять разрез пирамиды видимости у камеры (). Интерфейс будет заслоняться любыми 3D элементами, которые находятся перед плоскостью интерфейса. — использовать ли antialiasing. — камера с помощью которой будет отображен интерфейс. — дистанция плоскости нашего интерфейса от камеры.

В данном режиме полотно располагается в мировых координатах и является плоским 3D объектом на который действую законы обычного процесса визуализации. — камера с помощью которой будут происходить обработки событий ввода пользователя.

Все немного сложно, да? По скриншотам, представленных ниже, Вы с легкостью сможете разобраться, что к чему. Красный прямоугольник — это часть нашего полотна. Во всех случаях объекты и камера были не подвижны. Менялись лишь настройки нашего полотна.

Screen Space — OverlayScreen Space — CameraWorld Space

С полотном мы разобрались, можно приступать к созданию простого интерфейса.

Награда

Чтобы человек получал удовольствие, его нужно поощрять. Причем делать это нужно не только в конце, когда цель уже достигнута, но и на протяжении всей игры.

Например, в RPG многие игроки стараются полностью изучить локацию перед тем, как двигаться дальше. Если они зашли в пещеру и убили всех врагов, то после этого обыщут там каждый угол и только потом выйдут на поверхность.

Это хорошая возможность, чтобы спрятать где-нибудь сундук с новой броней или золотом.

Также награда не обязательно должна быть материальной. Можно раскрыть дополнительную часть сюжета или просто показать что-то забавное.


В GTA III на одной из стен можно найти надпись «Вообще-то здесь вас быть не должно».

Если же игрок не найдет ничего, то он будет разочарован, и это может оттолкнуть его от игры:

«Я потратил кучу времени, чтобы всё тут осмотреть, но ничего не нашел. Ну и зачем мне дальше этим заниматься?»

Также награждать нужно, когда игрок совершенствует свои навыки. Например, можно сделать игру немного сложной в начале, но, потом, если игрок продвинется до определенного места, наградить его чем-нибудь.

Шрифты, локализация и удобочитаемость

Это самая сложная часть для реализации, и этому есть целый ряд причин. Во-первых, дизайнер, потративший несколько недель на разработку аккуратного, разборчивого текстового поля, будет очень расстроен, если потом туда придется впихивать Папируса или Санса с их личными шрифтами.

Во-вторых, в обязанность специалиста по пользовательскому интерфейсу входят размышления о такой сверхважной вещи, как локализация, ведь разные страны используют разные алфавиты. Нужно проверить, например, все ли символы в выбранном наборе шрифтов поддерживаются на кириллице

Или учтен ли увеличенный размер символов хираганы или кандзи, ведь если составленные предложения могут поместиться в текстовое поле в латинском алфавите, это не значит, что они также удачно расположатся, когда символы будут вдвое шире

Нужно проверить, например, все ли символы в выбранном наборе шрифтов поддерживаются на кириллице. Или учтен ли увеличенный размер символов хираганы или кандзи, ведь если составленные предложения могут поместиться в текстовое поле в латинском алфавите, это не значит, что они также удачно расположатся, когда символы будут вдвое шире.

О, и это само собой разумеется, но стоит напомнить еще раз: Comic Sans годится только для 1997 года и мемов про миньонов.

Изучение Blender: с чего начать

Несмотря на то, что назвать «Блендер» интуитивно понятным можно с натяжкой, разобраться в нем стоит. Освоившись в среде и запомнив сочетания горячих клавиш, пользователь по праву оценивает юзабилити программы.

Совершить первые шаги можно с помощью бесплатных видеоуроков на YouTube. Уроки Blender для детей помогут понять интерфейс редактора и познакомиться с опциями. Ролики будут полезны как туториалы по осуществлению идей. И, конечно, рекомендуем прочесть руководство по «Блендеру».

Надежным методом узнать секреты компьютерной графики станут курсы 3D-моделирования для детей. Подсказки преподавателя и четкий план подскажут, как поскорее научиться воплощать трехмерные модели.

Elden Ring

  • Дата выпуска: 25 февраля 2022 года
  • Платформы: Windows, PS5, PS4, Xbox Series X/S, Xbox One

Если вы обратите пристальное внимание, то поймете, что большинство soulslike-игр, особенно сделанные родоначальниками этого жанра, студией FromSoftware, обладают очень схожим интерфейсом, и на то есть свои веские причины. Эти игры сложны и требуют, чтобы вы быстро и без лишней суеты могли бросить взгляд на показатель здоровья, выносливости или сменить экипировку вашего персонажа, что предполагает максимально простой и удобный дизайн пользовательского интерфейса

Эти игры сложны и требуют, чтобы вы быстро и без лишней суеты могли бросить взгляд на показатель здоровья, выносливости или сменить экипировку вашего персонажа, что предполагает максимально простой и удобный дизайн пользовательского интерфейса.

Elden Ring идеально подходит нам в качестве наглядного примера, так как тут сохранен классический макет HUD из Dark Souls, но добавлены более подробные элементы для отображения экипировки вашего персонажа, так как здесь ее попросту стало больше. Это дополняется полосами, отображающими показатели здоровья, маны и выносливости, а также маркерами и компасом, которые помогут вам ориентироваться на бескрайних просторах Междуземья.

Более того, когда вы бездействуете, HUD пропадает, но сразу появляется, как только вам угрожает опасность, что очень удобно для казуальных игроков, но, если вы ищете более хардкорный геймплей, эту функцию можно отключить.

Настольные игры

Настольные игры — явление, породившее целую субкультуру, не менее яркую и многогранную, чем сообщество любителей компьютерных игр. Неудивительно, ведь многие видеоигры выросли из настолок.

В специальных магазинах и клубах-игротеках можно найти забаву для любого возраста, количества игроков и настроения. От примитивных, но увлекательных Uno и «Манчкина» до затейливых экономических стратегий вроде «Колонизаторов» или сложных ролевых бродилок, как «Талисман». Развесёлая «Активити» и требующая полной концентрации «Дженга», азартная «Монополия» и медитативный «Диксит» — в мире настольных игр каждый может найти свою. И, конечно, не стоит забывать о классике. Шахматы, шашки, нарды, морской бой — эти «вечные» игры не только позволяют хорошо провести время дома без компьютера, но и отлично развивают логическое мышление.

<<Форма демодоступа>>

Что такое Blender

Создавать 3D-объекты можно в программе для работы с графикой Blender. Приложение применяется новичками и опытными дизайнерами, одиночными конструкторами и студиями.

Редактор пригодится при обучении анимации для детей: в «Блендере» можно с нуля научиться собирать трехмерные модели — изображения, видео, игры.

Плюсы:

  • Бесплатное распространение.
  • Открытый код на Python, благодаря чему программа систематически обновляется и совершенствуется желающими кодерами.
  • Кроссплатформенность. Графический интерфейс един для различных площадок.
  • Скорость. Редактор быстро запускается и реагирует на команды.
  • Малый вес. С весом 70 Мбайт приложение запускается даже на не самых сильных ПК, а редактор не теряет в мощности.

С функциями «Блендера» создается практически все без сторонних плагинов: объемное моделирование и визуализация, формирование статических и динамических сцен, рисование и анимация, нанесение материалов и текстур, реализация освещения и логики в играх без кодинга.

1 Dishonored 2

Arkane Studios — замечательная группа разработчиков, создающая миры с невероятным ощущением погружения в игровой процесс, который постоянно поощряет эксперименты. Но ее игры также всегда имеют ярко выраженную визуальную идентичность: от научно-фантастического смешения 60-х Prey до джазовых вечеринок Deathloop и псевдофутуристических механических дизайнов.

Но Dishonored 2 берет и без того звездный мир из оригинала и продвигает его дальше. Ваше здоровье и мана плавно изгибаются вокруг вашего портрета способностей. Почти каждое меню можно наклонять, а вместе с ним и слова. Каждая опция в пользовательском интерфейсе использует другой шрифт, как будто написанный от руки. Все, с чем вы взаимодействуете, выделяется, а действия отображаются аккуратно. Он четко отображается, но его визуальные эффекты делают их популярными.

Зачем сайту интерактивный контент?

Хорошо продуманный интерактивный контент несет в себе двойную пользу. Он помогает аудитории и бренду. В свою очередь, если он бесполезен для пользователей, то и компании он принесет только убытки. Ниже мы познакомимся с примерами пользы живого контента. 

Помогает посетителям сайта

Приятно, когда сайт заботится о своих посетителях и помогает им подобрать товары или посчитать стоимость доставки. Например, с этим хорошо справляются различные калькуляторы и конфигураторы. 

Так выглядит конфигуратор на сайте компьютерной студии Edelweiss

Такие инструменты завлекают пользователя подобно компьютерной игре. Даже если товар не особо нужен, все равно интересно посидеть и потыкать кнопочки, подергать ползунки. Аудитории – игра, а для продукта это хорошая реклама. 

Живым контентом хочется поделиться

Интерактивный контент все еще воспринимается в новинку. Когда находишь что-нибудь интересное, этим хочется поделиться с друзьями. Вдвойне приятно, когда это помогает решить насущные проблемы. 

Понимаю, что ситуация выглядит наигранной, и место подобным скриншотам в неудачном таргете. Но все произошло взаправду

Влияет на продвижение в поисковиках

Интерактивный контент удерживает пользователя на целевой странице и увеличивает глубину просмотра. 

  1. Пользователь не покидает сайт и проводит на нем больше времени.

  2. Зарывается в контент и посещает много страниц.

  3. Поисковые системы считают контент сайта важным и качественным. 

  4. Сайт растет в поисковой выдаче.

  5. Profit! 

Сегментирует аудиторию

Тесты, квизы или опросники позволяют разделить аудиторию по интересам и предпочтениям. Анкета подберет нужный товар, а после предложит «подогретому» пользователю купить его или оставить контактные данные. 

Например, интерактивная анкета на «Викиуме» подбирает тренажер для мозга. 

Повышает конверсию

Ответы на вопросы анкеты сделают письма в рассылке «теплее» и полезнее. Пользователь заполняет анкету и оставляет свою почту. Теперь можно не только предложить релевантный товар, но и повысить конверсию своей рассылки. Такие письма хочется прочитать, а не закинуть в спам. 

По такому принципу работает любой список желаемого, например в Steam, который любезно сообщает о скидках на избранные товары. Поэтому, если в моем ящике лежит подобное письмо – я не задумываясь открываю его, потому что это персонально и выгодно. 

Ну-ка, что тут у нас?

Спасибо, Стим, а теперь просто возьми мои деньги

Почему древо навыков ВЕЗДЕ одно и то же

Обидно, когда вы только начинаете игру и совершенно не представляете, что вам нужно делать или куда идти. Хотите верьте, хотите нет, но одной из задач UI-дизайнера и есть разгребание этого беспорядка (если точнее, UI/UX-дизайнера).

Но как объяснить игрокам, куда они должны идти или что им делать, причем так, чтобы не говорить об этом прямо в лоб? Ну, вы можете дать им подсказку… с помощью «путей развития».

Вы можете заметить, что древо навыков состоит из ветвей или, точнее, путей, и благодаря этим путям игрок подсознательно представляет свое место в игре. И графическое представление всех способностей, потенциально доступных для разблокировки, дает игрокам подсказку о том, как им справиться с начатой игрой.

Например, вы в перспективе можете открыть навык, который позволит вашему герою взбираться на покрытые виноградной лозой стены. И вы понимаете: «О, значит, виноградные лозы не просто для красивой картинки»

А потом, уже при наличии навыка, будете думать: «Ну, наверное, все, что происходит за этими покрытыми виноградной лозой областями, должно быть действительно важно – и это станет моей целью»

И вуаля – внезапно, просто изучая путь развития и древо навыков, игрок постепенно начинает вникать в повествование.

Интерфейс сообщает только нужную информацию

Обе части Left 4 Dead вышли больше десяти лет назад, но до сих пор привлекают новых игроков. Причина — увлекательный геймплей, сочетающий доступность с множеством нюансов. И важную роль во всём этом играет интерфейс.

Игра отличается на редкость лаконичным HUD — той частью визуального интерфейса, что отображается поверх игрового пространства.


HUD в зомби-шутере Left 4 Dead 2

В любой момент вы видите только свои оружие, инвентарь и полоску здоровья, а также полоски здоровья и инвентарь своих товарищей по команде. Всё остальное возникает только по мере надобности: например, важные предметы снабжаются подсказкой, а попавшие в беду товарищи по команде подсвечиваются жёлтым цветом.

В итоге — на редкость простой для понимания UI, который держит игрока в курсе событий, не забивая экран визуальным мусором, как это делал, скажем, онлайновый шутер Anthem, во многом пытавшийся скопировать Destiny.

Когда студия BioWare выпустила свой экшен в 2019 году, в длинном списке претензий к нему значилась агрессивность очков урона, вылетавших из врагов при попадании. Проблема была даже не в их наличии — в конце концов, то же самое есть во многих других онлайн-шутерах. Дело было в том, что ярко-жёлтый цвет и размер цифр отвлекали от сражений.

Так выглядело большинство сражений в Anthem

Anthem — классический случай, когда интерфейс понапрасну грузит игрока лишней информацией.

Чтобы сделать интерфейс максимально информативным, нужно, опять же, учитывать разницу между платформами. «Игры на консолях — это чаще всего телевизор, а значит, иконки и текст должны быть крупнее (или как минимум масштабироваться), так как игрок сидит дальше от экрана», — отмечает Денис Костроман.

Пространственный интерфейс

Еще один тип пользовательского интерфейса, который стал незаменимым в последние годы – это пространственный пользовательский интерфейс.

В отличие от типов HUD (диегетического и недиегетического), пространственный пользовательский интерфейс существует в игровом мире для информирования игрока, но для внутриигровых персонажей его нет.Пространственный пользовательский интерфейс, как правило, встречается в играх с открытым миром – тут может быть все, что угодно, от больших светящихся стрелок, указывающих вам на вашу следующую цель, до иконок над сундуками с сокровищами.

Однако же в наши дни находится все больше недовольных пространственным UI. Среди игроков найдется немало личностей, которые не могут играть в условную Assassin’s Creed, потому что там «экран выглядит как месиво из иконок». Но как иначе, по их мнению, сделать одну из этих проклятых миссий а-ля «следуйте за важным парнем через рынок, так, чтоб он вас не заметил» без маркера миссии? И без маркеров, обозначающих поле зрения? И без больших красных стрелок, предупреждающих, что туда не надо идти, иначе миссия будет провалена?

Конечно, мало кому нравятся миссии сопровождения или преследования, но если вам вдруг нужно выполнить одну из них, то лучше прибегнуть к помощи замечательного пространственного UI.

Рисунок по образцу

Это визуальные задания на внимательность, суть которых в следующем: вы показываете детям определённый рисунок, даёте им несколько секунд на то, чтобы его изучить, потом убираете образец и просите их быстро нарисовать на своих листках точно такой же.

Вот авторская игра, придуманная Анатолием Засобой, в таком ключе. Попросите детей нарисовать на своих листках шесть точек — вот так:

Иллюстрация: Майя Мальгина для Skillbox

Затем покажите им заранее сделанный образец (подготовьте сразу несколько вариантов, чтобы провести несколько туров игры). Дайте десять секунд на запоминание.

Иллюстрация: Майя Мальгина для Skillbox

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

Лайфхак: если вы проводите занятие онлайн, некоторые дети, скорее всего, постараются схитрить и незаметно от вас сразу перерисовать фигуру в то время, когда вы показываете образец. Чтобы это исключить, попросите учеников держать обе ладошки поднятыми, пока вы демонстрируете им свой рисунок.

Это задание развивает не просто визуальную кратковременную память, но и ассоциативное мышление (подскажите детям, что для лучшего запоминания того, как соединены точки на образце, нужно проассоциировать получившуюся фигуру с каким-то предметом или образом, на который она похожа).

Иллюстрация: Майя Мальгина для Skillbox

Задачу можно постепенно усложнять — уменьшать время запоминания (до пяти секунд, до трёх и, наконец, до одной), увеличивать количество точек (до восьми, десяти). Главное — помнить правило: усложнение должно быть постепенным, начинать нужно с самого простого варианта, который у детей точно получится, иначе, если задание окажется им не по силам, они быстро потеряют интерес к процессу.

Иллюстрация: Майя Мальгина для Skillbox

Ещё один вариант задания на визуальное запоминание: попросите детей нарисовать четыре (постепенно количество можно увеличивать) пустых прямоугольника. Потом покажите им картинку с домино, дайте время запомнить расположение точек и предложите точно так же расставить точки в своих прямоугольниках.

Иллюстрация: Майя Мальгина для Skillbox

Кстати, недавно шведские учёные выяснили, что подобные задания на визуальную кратковременную память помогают младшеклассникам развивать свои математические навыки. Так что перед уроком математики они будут особенно полезны.

Пример работы из кода

Тут я хочу вам показать, как можно реализовать кнопку способности, как в . Для этого нам понадобятся знания полученные выше, немного кривых рук ну и конечно же много экспериментов (вы же хотите научиться делать игры, не так ли? Так что больше экспериментируйте и не бойтесь что-нибудь сломать тут вам всегда смогут помочь).

Приступим:

Сперва надо набросать примерный дизайн:

вид из редактораиерархия объектоввид в инспекторевид из игры, активновид из игры, перезаряжается

Затем надо написать скрипт:

csharp — SpellButton.cs

using UnityEngine;
using UnityEngine.UI;
using UnityEngine.EventSystems;
using UnityEngine.Events;
using System.Collections;

public class SpellButton : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler 
{
    /// <summary>
    /// Описание способности.
    /// </summary>
    
    public string SpellDescription;

    /// <summary>
    /// Время перезарядки способности.
    /// </summary>
    public float CooldownTime;

    private float timeElapsed;
    /// <summary>
    /// Показывает сколько времени осталось до перезарядки.
    /// </summary>
    public float TimeElapsed { get { return timeElapsed; } }

    /// <summary>
    /// Кнопка способности.
    /// </summary>
    public Button Button;
    /// <summary>
    /// Картинка с процессом кулдауна.
    /// </summary>
    public Image CooldownImage;
    /// <summary>
    /// Текст в подсказке.
    /// </summary>
    public Text DescriptionText;

    /// <summary>
    /// Панель для подсказки.
    /// </summary>
    public GameObject HintPanel;

    /// <summary>
    /// Событие которые вызывается в случае успешного каста.
    /// </summary>
    public UnityEvent OnSpellCasted;

    public void SpellCasted()
    {
        timeElapsed = Mathf.Max(CooldownTime, 0.1f);
        CooldownImage.enabled = true;

        OnSpellCasted.Invoke();
    }

    public void ResetCooldown()
    {
        timeElapsed = 0.0f;
        timeUpdated();
    }

	void Start()
    {
        CooldownImage.enabled = false;
        DescriptionText.text = SpellDescription;
        HintPanel.SetActive(false);
    }

    private void timeUpdated()
    {
        if (timeElapsed <= 0.0f)
        {
            timeElapsed = 0.0f;
            CooldownImage.enabled = false;
        }
        else
        {
            CooldownImage.fillAmount = timeElapsed / CooldownTime;
        }
    }

	void Update() 
    {
        if (timeElapsed > 0.0f)
        {
            timeElapsed -= Time.deltaTime;
        }

        timeUpdated();
	}

    public void OnPointerEnter(PointerEventData eventData)
    {
        HintPanel.SetActive(true);
    }

    public void OnPointerExit(PointerEventData eventData)
    {
        HintPanel.SetActive(false);
    }
}
Понравилась статья? Поделиться с друзьями:
Tehnik Shop
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: