Всем привет! Занимаясь разработкой игры, стилизованной под текстовый режим, я пришел к ожидаемому противоречию. С одной стороны, игра должна быть пропитана духом текстового режима, ведь за это она нравится мне и, надеюсь, понравится любителям ретро игр. С другой стороны, мне хочется, чтобы игровой процесс был максимально приятен и современен.
В отличие от текстовых режимов в игре ASCIIDENT используется пиксельная точность перемещения текстовых слоев и движущихся спрайтов.
В текстовом режиме смещение спрайта на одну позицию выглядит как ощутимый скачок. Для такой динамичной игры как ASCIIDENT — это неприемлемо с точки зрения современного игрового опыта. Поэтому для отдельных спрайтов и текстовых слоев, о которых пойдет речь дальше, я сделал плавное перемещение.
Для сохранения аутентичности я придерживаюсь следующего правила. Внутри одного текстового слоя все статичные объекты четко выровнены по символьной сетке. Более того, каждый спрайт состоит из символов, также выровненных по символьной сетке.
Относительно же друг друга слои и движущиеся объекты могут находиться на субсимвольном расстоянии. Это обеспечивает плавность движения и, соответственно, комфортный игровой процесс. Вот такой компромисс.
В игре присутствует несколько текстовых слоев, которые двигаются с разной скоростью, реализуя эффект параллакса. Символы верхних слоев перекрывают символы нижних. При субсимвольной точности критерий перекрытия — это наложение более 50% от ширины и/или высоты текстовой ячейки. Используя простой z-буффер, легко реализовать это перекрытие.
Параллакс с плавным движением слоев — очень выразительный графический прием. Да, он, возможно, сильно нарушает аутентичность текстовому режиму. Тем не менее, я решил использовать параллакс. Очень уж красиво получается.
Чтобы получать больше обратной связи и понимать, в правильную ли сторону я двигаюсь, решил запустить игру на раннем доступе в Стиме: store.steampowered.com/app/1113220/ASCIIDENT/
Есть что-то магически привлекательное в текстовых режимах. Удалось ли мне сохранить ламповое алфавитно-цифровое настроение в игре? Прошу высказать мнение!