iLenta Меню

Ігри «Тетріс» та Doom випустили у форматі PDF

13 січня 2025, 21:08 | Roter [272]
Хоча PDF-файли зазвичай асоціюються зі статичними документами, вони підтримують JavaScript. Цим і скористалися хитромудрі програмісти.
Ігри «Тетріс» та Doom випустили у форматі PDF
Safe Life

Аналітик з безпеки Томас Рінсма запакував класичну гру «Тетріс» у формат PDF та назвав розробку Pdftris, повідомляє видання Tom`s Hardware. У головоломку з падаючими блоками можна грати у більшості браузерів. Інший розробник проробив те саме, але з грою Doom.

Про Pdftris відомо небагато, тому що на сторінці GitHub немає опису. Але Рінсма охоче спілкувався з користувачами на Hacker News та розповідав про розробку. Ідея зробити гру в незвичайному форматі спала йому на думку після того, як він зрозумів, що PDF-движки сучасних браузерів (PDFium і PDF.js) підтримують JavaScript з достатнім набором функцій вводу-виводу для створення простого проєкту на кшталт «Тетріса».

Аналітик з безпеки розповів, що йому було нелегко змусити свій «Тетріс» правильно працювати в обох двигунах. Але він знайшов рішення: «Показ і приховування полів анотацій добре підходить для створення монохромних пікселів». Крім того, Рінсма додав можливість керування з клавіатури через текстове поле під грою.

Розробник скромно визнає, що код його «Тетріса» у PDF «досить кострубатий». Однак він вважає, що це показує, наскільки потужними та гнучкими можуть бути скрипти у PDF. Щоб подивитися, що всередині Pdftris, не потрібні складні програми. Необхідно просто завантажити PDF-файл розміром 60 КБ і відкрити його у звичайному текстовому редакторі – це текст у кодуванні ASCII. Також є зрозуміліший вихідний код із коментарями. Він доступний на сторінці проєкту на GitHub.

Тим часом розробник під псевдонімом ading2210 створив проєкт DoomPDF — версію гри Doom, яка теж працює прямо в браузері через PDF-файл. Код гри написано на C та розміщено на GitHub. Цей проєкт працює тільки в браузерах Chromium завдяки движку PDFium.

PDF-движок Chromium підтримує текстові поля та кнопки, проте створення швидкого та якісного буфера кадру виявилося складним завданням. Замість відображення кожного пікселя окремим текстовим полем (що було б неефективним при роздільній здатності Doom 320×200), використовується одне текстове поле на рядок екрана, що заповнюється символами ASCII. Це дозволило досягти 6-колірного монохромного виведення.

Цей спосіб малювання досить повільний — оновлення тексту займає приблизно 80 мілісекунд на кадр. Але для гри цього достатньо. Також була зроблена текстова консоль, що прокручується, з 25 текстових полів.

Джерело: tomshardware

© 2012-2025 iLenta. Всі права захищені.
Повна версія

Різне

Xiaomi випустила домашній мініатюрний датчик температури та вологості Mijia
Xiaomi випустила домашній мініатюрний датчик температури та вологості Mijia
17 лютого 2025, 21:07 | Roter
Компанія Xiaomi представила новий датчик температури та вологості Mijia Smart Temperature and Humidity Sensor 3 Mini.
Докладніше...
 
Western Digital випустить рекордні HDMR-накопичувачі об'ємом понад 100 ТБ
Western Digital випустить рекордні HDMR-накопичувачі об
17 лютого 2025, 08:11 | Anton Petrov
Компанія Western Digital готує до випуску свої перші жорсткі диски з термомагнітним записом (HAMR) — технологією, яка дозволить до 2030 року створювати накопичувачі ємністю 80-100 ТБ.
Докладніше...
 
Meta представила проєкт підводного кабелю довжиною 50 000 кілометрів
Meta представила проєкт підводного кабелю довжиною 50 000 кілометрів
16 лютого 2025, 22:07 | Anton Petrov
Компанія Meta підтвердила плани створення Project Waterworth — 50 000-кілометрового підводного кабелю, який з'єднає США, Бразилію, Індію, Південну Африку і не тільки.
Докладніше...
 
Meta активно працює над створенням роботів-гуманоїдів
Meta активно працює над створенням роботів-гуманоїдів
16 лютого 2025, 21:07 | Bazelas
Meta, що є материнською компанією Facebook, активно інвестує у створення роботів-гуманоїдів, керованих штучним інтелектом.
Докладніше...
 
Вініловий програвач Cosmo Solar Edition випущено у трьох нових кольорах
Вініловий програвач Cosmo Solar Edition випущено у трьох нових кольорах
16 лютого 2025, 19:09 | Roter
Компанія Gadhouse випустила ексклюзивний портативний вініловий програвач Cosmo Solar Edition у трьох нових кольорах.
Докладніше...
 
Сторінки: 1 2 3 4 5 6
Повна версія
 
© 2012-2025 iLenta. All rights reserved.