Українська
Відкрити в Telegram

Пост Памʼятаєте, я колись розповідав, що Pebble воскрес? Так ось вони там конкурс програм запустили, і я нашвидку (за 16 годи…

13 квітня 2026
С
Сіпласпластик
Памʼятаєте, я колись розповідав, що Pebble воскрес? Так ось вони там конкурс програм запустили, і я нашвидку (за 16 годин плюс-мінус ще стільки ж) накарлякав прогу. Починав писати на 🕸, але якось так тяжко пішло, ще й ШІ-шка не допомагала, а радила маячню. Тому перемкнувся на 💻 — і одразу стало легше дихати. Накидав скінченний автомат, декілька візуальних шарів, збереження стану в постійне сховище, вивід з фонового виконання. До речі програмувати було значно легше, аніж дизайнити. Лише тільки для іконки, яка показується на годиннику в головному меню, довелося трохи спітніти. Хотів спочатку змусити ШІ-шку згенерувати мені SVG, але вийшло лайно. Тому завантажив її у Figma 💻, перемалював векторний path руками, експортнув — теж не сподобалося через відсутність піксельного вирівнювання. Далі зібрав із сирців Aseprite, завантажив туди експортовану PNG та попіксельно намалював руками. З анімаціями ще складніше. На Pebble викориcтовується власний векторний формат PDC (фактично прото бінарний опис команд для малювання), який підтримує лише path, circle та precise_path — навіть без кривих! Path від precise path відрізняються типом координат: у першого викориcтовуються uint16, а в другого — fixed point 13.3 (13 бітів на цілу частину та 3 біта на дріб). Існує якийсь скрипт 11-річної давнини svg2pdc.py на Python 2, але він працює вельми кепсько: підтримує лише SVG Tiny 1.2, до того ж згенеровані анімації були з артефактами. Щоб розібратися, написав парсер PDC на Kaitai Struct 🏗, а також посидів в ImHex. ШІ-шка мені нагенерила переглядач під бравзер. Скрипт урешті викинув — довелося написати власний. Самі анімації зробив у Figma покадрово й екпортнув кожний кадр як SVG. Прогнав скриптом — ніби норм. При публікації ще виявилося, що екран годинника зʼїдає кропаль пікселів на краях, тому додав відступ і переробив лейаут. Загалом задоволений: SDK доволі простий і прикольний, сішку не люблю, хоча цього разу зайшло норм, емулятор зручний, результат подобається. Тепер справа за вами! Якщо не западло, підіть накидайте мені лайків ❤️ там — дуже хочеться виграти собі годинник на дурняк 😂
3 · 913 ·

Поруч у стрічці

ССіпласпластикПерезавантажив увечері комп, що я роблю вкрай рідко, запускаю зранку бекенд через Docker Compose… а останній висить і ніц не робить! Взагалі. Я вже і кеші почисССіпласпластикДумав написати про це ще минулої середи, але ви мені тоді точно не повірили би 😄 Отже, в C++ тепер є новий різновид циклів — template for 🙂 Хочемо, ми, наприкла
це повідомлення
ССіпласпластикТупий телеграм десь загубив мою превʼюшку посилання, і я не зміг її повернути )ССіпласпластикВсе ж приємно бачити, що 💻 потроху позбувається класичних способів поцілити собі в ногу. Наприклад, усі ми знаємо, що C++ не ініціалізує змінні, і тому там може

Відкрита публічна стрічка з пошукового індексу ChatCrawler — «Google по публічному Telegram»; оновлюється в міру обходу майданчика. Час — UTC.

Лише публічний контент, офіційний API Telegram. Про проєкт · Питання · Межі індексу · Прибрати сторінку з видачі · Каталог · Пошук · Як ми рахуємо