arshehremen

Category:

Меню меню меню...

Version in English

Меню — это перечень блюд и напитков, подаваемых в кафе, ресторане или баре. (с) Википедия.

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

...и сразу первая версия меню!

Сразу оговорюсь о контексте, так как разработка ведётся не на vcl или готовом движке, а графическая составляющая имеет самописные методы вывода, то о использовании готовых шрифтов, объектов не идёт речь.

Для примитивов, таких как прямоугольники или линии, функции уже написаны, и из них появляется первая версия меню! Ещё я попробовал, ради эксперимента добавить на него имеющуюся картинку, это объект «птица», о котором я писал в посте «Палка, палка, огуречик, вот и вышел человечек».

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

Чёрные прямоугольники - ячейки для букв

И для начала я ограничился только буквами, которые есть в меню и набором цифр — для вывода значения fps.

Часть букв уже сделана, остальное не за горами!

То есть, буквы я рисую из доступных примитивов — линий, точек и т.д.

И вот все буквы готовы!
Пробуем красить буквы...
...добавим объёма и цветовой стиль

Здесь же параллельно встала задача замера производительности, и для вывода значения fps (fraps per second) я использовал новоиспечённый объект:

FPS - текущий fps max,min,sf - соответственно максимальный, минимальный и средний fps

Теперь добавим полупрозрачности! И наше меню завершено!

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

И вот так, для сравнения, обновлённый шрифт выглядит на старом меню:

Слева-новый, справа-старый

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

Если вы хотите поддержать мой проект, это можно сделать по ссылке или пополнив один из счетов WebMoney:

R163522901261

Z180352303030

X054099745452

Благодарю всех, читателей и тех, кто оставляет свои отзывы!

Error

default userpic

Your reply will be screened

When you submit the form an invisible reCAPTCHA check will be performed.
You must follow the Privacy Policy and Google Terms of use.