Хорошо размахнувшись, инженер производил мощный удар кулаком сверху монитора. Раздавался треск и… монитор оживал! Тогда, 30 лет назад, когда в свои десять лет я посещал вечерние занятия школы юных программистов в университете, только инженер имел право так чинить мониторы. Только он знал, в какое место и с какой силой приложить компьютерную технику, чтобы она ожила и мы, дети, которым повезло попасть в школу программистов, продолжили, счастливые, писать свои строчки кода.
В процессе разработки игры в текстовом режиме, мне пришлось нарисовать больше сотни анимационных ASCII спрайтов. После релиза игра получила неожиданно хорошие отзывы и было принято решение делать продолжение. Рисуя спрайты для первой части и перепробовав с десяток вариантов выбора цвета и несколько десятков различных палитр, я понял, что нужен свой, «идеальный» набор цветов на все времена. За сотни и сотни часов рисования, сложились следующие критерии идеальности палитры:
Краткость: небольшое количество цветов в палитре. Весь набор цветов можно охватить одним взглядом.
Полнота: цвета палитры должны равномерно и достаточно плотно заполнять цветовое пространство.
Дискретность: цвета палитры должны отличаться друг от друга на глаз.
Группировка: цвета должны быть удобно сгруппированы для быстрого нахождения нужного.
Оказалось, что можно подобрать набор из ровно 233 цветов, который удовлетворит всем этим критериям.
Готовлю сейчас текстуры с буквами для нашей игрушки со словами. А у таких игр есть одна особенность: не переведешь игру на какой-то язык — не видать покупок от носителей этого языка. Поэтому релиз игры будет локализован на 42 языка. Это много-много разных букв, каждая из которых обрабатывается в фотошопе и вставляется в текстуру, место в которой — на вес золота. Приходится вникать в устройство современных алфавитов, чтобы брать только те буквы, которые действительно нужны в современных словах.
Погрузившись в этот процесс, я открыл для себя, на сколько фраза «расставить точки над и» не полна. Точки расставляют далеко не только сверху.