Игра Doom, выпущенная в 1993 году, давно стала культовым примером для энтузиастов электроники и программирования. В истории хобби-проектах игра была запущена на самых неожиданных устройствах — от калькуляторов и микроконтроллеров до даже более экзотических платформ. Одним из наиболее необычных достижений стало отображение Doom с использованием аналоговых осциллографов, приборов, изначально предназначенных для визуализации электрических сигналов. Однако применение техники кривых Лиссажу для воспроизведения полноценного игрового процесса вызывает особенный интерес и множество вопросов. Прежде всего стоит разобраться, что представляют собой кривые Лиссажу, и почему их считают привлекательным вариантом для отображения сложных изображений на осциллографе.
Кривые Лиссажу — это графические фигуры, возникающие при совместном воздействии двух перпендикулярных гармонических колебаний с определённой частотой и фазовым сдвигом. В классическом случае они служат ярким примеромупрощённого способа создания сложных, симметричных и динамичных узоров. Они могут выглядеть как элегантные петли, восьмерки и плавно меняющиеся геометрические рисунки. В эпоху аналоговой техники это был крайне наглядный способ изучения взаимодействия сигналов и колебаний. Современные проекты демонстрируют, что при точном управлении частотными и фазовыми параметрами можно создавать не только статичные узоры, но и весьма динамичные и детализованные изображения.
Тем не менее, использование кривых Лиссажу для воспроизведения полноценного игрового процесса, например, Doom, сталкивается с фундаментальными ограничениями. Игра Doom построена на объемных 3D-уровнях, динамичных спрайтах и требует быстрой обработки огромного количества графических данных. Традиционные осциллографы, даже самые современные, изначально задуманы для демонстрации простой двумерной траектории, считываемой по временной оси. В этом плане, чтобы "нарисовать" изображение на экране необходимо посылать на отклоняющие пластины осциллографа два сигнала, соответствующих координатам X и Y. Для статических или медленно меняющихся изображений и узоров кривые Лиссажу отлично подходят.
Но в случае с Doom нужно не просто посылать синусоидальные сигналы, а преобразовывать весь графический поток игры в два аналоговых сигнала для X и Y отклонения, создающие узнаваемую сложную картину. Одним из известнейших методов вывода игры на осциллограф был подход, когда CRT-панель осциллографа использовалась как монитор, а сама игра исполнялась на внешнем цифровом устройстве, которое напрямую формировало видеосигнал. Такой подход позволяет получить изображение Doom с ожидаемым качеством, однако технически это по сути не использование осциллографа для вычисления и отображения игры, а лишь для воспроизведения готового видеосигнала. Использование исключительно кривых Лиссажу для визуализации Doom заставляет задуматься о необходимости преобразования полигональных моделей и спрайтов игры в непрерывные, периодические сигналы, которые и образуют эти кривые. Этот процесс крайне сложен и требует мощных вычислительных ресурсов, так как почти любая графика в Doom — это смесь растровых и векторных данных.
Преобразование этих данных в набор частотных и фазовых сигналов, могущих быть визуально сопоставимы с игрой, — задача очень сложная и в реальном времени практически невыполнимая с помощью привычных методов. Сфера разработки подобных проектов иногда связывается с велосипедным подходом — созданием программ, которые разбирают модель сцены, выделяют ключевые линии и контуры, затем кодируют их в форму сигналов, подходящих для генерации кривых Лиссажу. Такие программы для игр наподобие Quake были реализованы, где исходная трехмерная сцена упрощалась до множества векторных линий, считываемых и преобразуемых в синусоидальные сигналы для осциллографа. Doom, однако, более сложная с технической точки зрения игра, с менее поддающимися простой векторизации спрайтами и текстурами. Другое ограничение связано с частотными характеристиками и временем отклика осциллографа.
Кривые Лиссажу формируются менее динамично, по сравнению с современными методами сканирования. В случае быстрой смены кадров или сложных сцен, детали изображения могут размываться или быть недостаточно четкими. Выводить трехмерную перспективу Doom при таких условиях становится ещё более проблематично. Тем не менее интерес к этому вопросу сохраняется, что связано с эстетической привлекательностью синусоидальных кривых и ностальгией по ранним аналоговым техникам. Проекты, воспроизводящие простые игры или анимации на осциллографах с помощью кривых Лиссажу, получили широкую огласку и вдохновили множество энтузиастов.
В условиях роста доступности цифровых сигналов, современных микроконтроллеров и мощных ЦАП, можно предположить, что в будущем появятся алгоритмы, способные в режиме реального времени преобразовывать игровые изображения в наборы сигналов, дающих подобие кривых Лиссажу. Это позволит насладиться и игрой, и уникальным визуальным стилем такого отображения. В заключение, запустить и играть Doom на осциллографе исключительно с помощью кривых Лиссажу — задача, которая на современном уровне технологий пока остаётся теоретической и весьма ограниченной. Практические сложности связаны с обработкой сложной графики игры, необходимостью быстрого и точного преобразования изображения в два сигналам и физическими ограничениями оборудования. Тем не менее, творчество и технические эксперименты в этом направлении не прекращаются, подтверждая, что границы возможного в электронике и программировании постоянно расширяются.
Возможно, в будущем появятся инновационные методы, позволяющие ближе реализовать эту почти фантастическую идею.