User Tag List

Страница 30 из 30 ПерваяПервая ... 2627282930
Показано с 291 по 300 из 305

Тема: Программирование

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,424
    Спасибо Благодарностей отдано 
    768
    Спасибо Благодарностей получено 
    2,374
    Поблагодарили
    1,322 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Про упрощатель у меня есть не особо оригинальная мысль:
    1) делим картинку на квадратные или прямоугольные блоки
    2) в рамках блока оставляем 2 или 4 цвета из 16
    Тут несколько степеней свободы или точек приложения сил для экспериментов
    1) какие размеры блоков выбрать
    2) сколько цветов в рамках блока
    3) как выбирать цвета (понятно, что тут с потерями) когда выбор неоднозначен
    Из упаковщиков я бы, по крайней мере для начала, ориентировался на salvador. Он умеет сжимать под кольцевой буфер заданного размера и для буфера 256 байт есть готовый распаковщик zx0.
    Для примера: пусть блоки 8x8, в блоках 4 цвета из 16. Картинка 256x256: 16 Кб пиксели, 2 Кб цвета блоков. Т.е. в примере из 32 Кб сократили до 18 и это еще без сжатия "обычным" упаковщиком. Другое дело, как будет выглядеть такая упрощенная картинка, возможно, что совершенно неприемлемо.
    Вариант с блоками можно развить до иерархического, опять же надо пробовать, возможно это дурацкая идея, а может где-то хорошо подойдет.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2

    Регистрация
    06.02.2018
    Адрес
    г. Волгоград
    Сообщений
    1,070
    Спасибо Благодарностей отдано 
    588
    Спасибо Благодарностей получено 
    472
    Поблагодарили
    254 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Про упрощатель у меня есть не особо оригинальная мысль:
    1) делим картинку на квадратные или прямоугольные блоки
    2) в рамках блока оставляем 2 или 4 цвета из 16
    А что если картинку сначала разделить на четыре плоскости по цветам? А потом уже делить на монохромные блоки, при этом сплошная заливка областей картинки даст хорошее сжатие...

  4. #3

    Регистрация
    29.06.2022
    Адрес
    г. Ирвайн, США
    Сообщений
    410
    Спасибо Благодарностей отдано 
    593
    Спасибо Благодарностей получено 
    345
    Поблагодарили
    111 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А что ты думаешь про результаты упрощателя которые я представил выше?

  5. #4

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,424
    Спасибо Благодарностей отдано 
    768
    Спасибо Благодарностей получено 
    2,374
    Поблагодарили
    1,322 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Если сравнивать с беспотерьным вариантом, то результаты интересные. Но, как я ранее написал, считаю, что надо сравнивать с целевыми значениями (сколько места и сколько картинок требуется) и с использованием чего-то менее сурового, чем upkr.

    Этот пользователь поблагодарил ivagor за это полезное сообщение:

    parallelno(01.05.2023)

  6. #5

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,424
    Спасибо Благодарностей отдано 
    768
    Спасибо Благодарностей получено 
    2,374
    Поблагодарили
    1,322 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В принципе одноцветные блоки должен дожимать упаковщик. Но есть другой вариант - если цветов на блок 4, то всего комбинаций 65536, а для картинки 256x256 будут востребованы максимум 1024. Часть комбинаций можно задействовать для индикации неких специфичных блоков, например одноцветных. Для палитровых картинок разбиение на плоскости в общем случае вряд ли много что даст, разве что в связке с оптимизацией палитры (перестановками).

  7. #6

    Регистрация
    06.02.2018
    Адрес
    г. Волгоград
    Сообщений
    1,070
    Спасибо Благодарностей отдано 
    588
    Спасибо Благодарностей получено 
    472
    Поблагодарили
    254 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Для палитровых картинок разбиение на плоскости в общем случае вряд ли много что даст
    Тут надо просто поставить эксперимент, как будут сжиматься теми же упаковщиками те же картинки, но разбитые по плоскостям. А если будет последовательное заполнение 32кб, это может упростить (и ускорить) распаковщик?

  8. #7

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,424
    Спасибо Благодарностей отдано 
    768
    Спасибо Благодарностей получено 
    2,374
    Поблагодарили
    1,322 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Improver Посмотреть сообщение
    А если будет последовательное заполнение 32кб, это может упростить (и ускорить) распаковщик?
    Конечно, просто распаковываем в экран распаковщиком общего назначения. Но по пикселям лучше сжимает.

  9. #8

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,324
    Спасибо Благодарностей отдано 
    1,037
    Спасибо Благодарностей получено 
    820
    Поблагодарили
    491 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Когда делал Бадап, столкнулся с тем, что надо как-то делать образ диска с файлами. Есть чудесная утилита SteinBlume и плюгины к древним фарам, но все они интерактивные. А мне надо, чтобы все было терминально угрюмо и из командной строки. Поэтому я взял давно уже написанный код из vector06js и завернул его в отдельную утилиту, которая позволяет взять рыбу fdd по вкусу и положить в нее свои файлы.

    Написано на js, для запуска нужна node (npm не нужен). exe можно сделать если будет спрос, но мне самому не нужно и пока никто не просил.

    https://github.com/svofski/v06c-fddutil/

    - - - Добавлено - - -

    P.S. Это по-моему самая толковая тема про разработку для Вектора. Может быть можно сделать ее Важной?
    Больше игр нет

    Этот пользователь поблагодарил svofski за это полезное сообщение:

    parallelno(23.12.2023)

  10. #9

    Регистрация
    29.06.2022
    Адрес
    г. Ирвайн, США
    Сообщений
    410
    Спасибо Благодарностей отдано 
    593
    Спасибо Благодарностей получено 
    345
    Поблагодарили
    111 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Добавил информацию про тайминги кадра.

    Этот пользователь поблагодарил parallelno за это полезное сообщение:

    metamorpho(02.01.2024)

  11. #10

    Регистрация
    29.06.2022
    Адрес
    г. Ирвайн, США
    Сообщений
    410
    Спасибо Благодарностей отдано 
    593
    Спасибо Благодарностей получено 
    345
    Поблагодарили
    111 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Добавил информацию о портах.

    Этот пользователь поблагодарил parallelno за это полезное сообщение:

    metamorpho(11.07.2024)

Страница 30 из 30 ПерваяПервая ... 2627282930

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Программирование на ассемблере
    от shuran33 в разделе Вектор
    Ответов: 341
    Последнее: 05.11.2025, 20:00
  2. Программирование на ассемблере
    от tnt23 в разделе Океан-240
    Ответов: 6
    Последнее: 30.10.2025, 12:56
  3. Программирование графики MSX
    от CityAceE в разделе MSX
    Ответов: 57
    Последнее: 23.10.2025, 08:53
  4. Программирование NES
    от Tronix в разделе Nintendo
    Ответов: 6
    Последнее: 08.07.2015, 21:21
  5. Программирование на пентеве.
    от Kakos_nonos в разделе Программирование
    Ответов: 2
    Последнее: 23.03.2013, 14:08

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •