User Tag List

Страница 11 из 11 ПерваяПервая ... 7891011
Показано с 101 по 110 из 110

Тема: Сжатие и упаковка - обсуждение и сравнения

  1. #101

    Регистрация
    13.01.2022
    Адрес
    г. Новосибирск
    Сообщений
    103
    Спасибо Благодарностей отдано 
    18
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    10 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от jerri Посмотреть сообщение
    распаковка требуется только в первом блоке
    в процессе игровых событий не требуется распаковка данных.
    [инициация игрового экрана]
    это неизменяемые данные совсем-совсем?

    если данные для текущего уровня не позволяют их держать в готовом распакованном виде?
    условный bitmap будет занимать в ОЗУ столько, сколько он весит и если буфер vram у вас например 8 Кб, и все данные у вас распакованы, то у вас уже 16 Кб занято (утрирую, там может быть как 8+1, 8+8 так и 8+28), то есть на код останется мало (помним про Бейсик, DOS и прочее в ОЗУ).

    я подумал о концепции когда используется какое-то быстрое и простое кодирование, пусть для примера это будет RLE, которое сократит использование памяти например на 20%, а это уже 1-1,5 Кб к примеру.
    Для вывода формируется буфер, например 2х16 байт, куда раскодируются спрайты перед копированием в vram, возможно это можно делать только регистрами, тут уж я не знаю, зависит от способа кодирования и раскодирования.

    просто на современных платформах это в порядке вещей, но никто не спорит что сегодня это ЦПУ на гигагерцы и возможно для 6502/z80 это проблема. Думаю нужно проверять опытным путём. Просто в одной игре это параллакс, несколько слоев и наложений, а в другой всё проще, возможно там и можно пользоваться распаковкой на лету.

  2. #102

    Регистрация
    08.09.2005
    Адрес
    Воронеж
    Сообщений
    4,970
    Записей в дневнике
    3
    Спасибо Благодарностей отдано 
    320
    Спасибо Благодарностей получено 
    316
    Поблагодарили
    239 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от BelaLugoci Посмотреть сообщение
    [инициация игрового экрана]
    это неизменяемые данные совсем-совсем?
    иногда в игрушках зеркалят все спрайты персонажа при его развороте
    но не припомню сочетания такого с предварительной распаковкой

    Цитата Сообщение от BelaLugoci Посмотреть сообщение
    условный bitmap будет занимать в ОЗУ столько, сколько он весит и если буфер vram у вас например 8 Кб, и все данные у вас распакованы, то у вас уже 16 Кб занято (утрирую, там может быть как 8+1, 8+8 так и 8+28), то есть на код останется мало (помним про Бейсик, DOS и прочее в ОЗУ).
    да достаточно на код остаётся, да еще на теневой экранный буфер и на таблицы
    например, в Nemesis the Warlock для 48k спека спрайты ~20k занимают (и это, вероятно, рекорд)
    но обычно спрайты жрут намного меньше, а фоны набирают из небольшого числа тайлов и декораций

    Цитата Сообщение от BelaLugoci Посмотреть сообщение
    я подумал о концепции когда используется какое-то быстрое и простое кодирование, пусть для примера это будет RLE, которое сократит использование памяти например на 20%,
    это вряд ли, спрайты в играх довольно плотные, байт - узкая полоска из 8 пикселей, очень мало будет пустых подряд, как бы даже не распух размер с RLE
    Прихожу без разрешения, сею смерть и разрушение...

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

    Barmaley_m(02.04.2023)

  3. #103

    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,867
    Спасибо Благодарностей отдано 
    328
    Спасибо Благодарностей получено 
    311
    Поблагодарили
    235 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от BelaLugoci Посмотреть сообщение
    [инициация игрового экрана]
    это неизменяемые данные совсем-совсем?
    Вот именно в этом месте и можно использовать распаковку
    именно так я и делал здесь

    для каждого экрана распаковываются спрайты и обьекты которые тут находятся
    Но там в принципе все пожато шоппц


    если данные для текущего уровня не позволяют их держать в готовом распакованном виде?
    условный bitmap будет занимать в ОЗУ столько, сколько он весит и если буфер vram у вас например 8 Кб, и все данные у вас распакованы, то у вас уже 16 Кб занято (утрирую, там может быть как 8+1, 8+8 так и 8+28), то есть на код останется мало (помним про Бейсик, DOS и прочее в ОЗУ).

    я подумал о концепции когда используется какое-то быстрое и простое кодирование, пусть для примера это будет RLE, которое сократит использование памяти например на 20%, а это уже 1-1,5 Кб к примеру.
    Для вывода формируется буфер, например 2х16 байт, куда раскодируются спрайты перед копированием в vram, возможно это можно делать только регистрами, тут уж я не знаю, зависит от способа кодирования и раскодирования.

    просто на современных платформах это в порядке вещей, но никто не спорит что сегодня это ЦПУ на гигагерцы и возможно для 6502/z80 это проблема. Думаю нужно проверять опытным путём. Просто в одной игре это параллакс, несколько слоев и наложений, а в другой всё проще, возможно там и можно пользоваться распаковкой на лету.
    Я бы не стал называть это распаковкой - она должна быть максимально быстрой
    посмотри Mortal Combat

    там к этому делу подошли основательно.
    С уважением,
    Jerri / Red Triangle.

  4. #104

    Регистрация
    13.01.2022
    Адрес
    г. Новосибирск
    Сообщений
    103
    Спасибо Благодарностей отдано 
    18
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    10 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    спасибо всем за дискуссию, будет что показать - вернусь в тему.

  5. #105

    Регистрация
    02.05.2015
    Адрес
    г. Таллин, Эстония
    Сообщений
    1,691
    Спасибо Благодарностей отдано 
    302
    Спасибо Благодарностей получено 
    223
    Поблагодарили
    159 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от BelaLugoci Посмотреть сообщение
    я подумал о концепции когда используется какое-то быстрое и простое кодирование, пусть для примера это будет RLE
    Для эксперимента делал в Heavy on the magick упаковку спрайтов врагов при помощи zx7, и в момент, когда монстр появляется в комнате, происходила распаковка спрайтов + маски в небольшой буфер, откуда дальше идёт отрисовка штатным методом. Небольшая задержка не заметна, - и само количество распаковываемых байт незначительно, и сам геймплей позволяет (например, при переходе между комнатами перерисовка экрана не мгновенная). Решение с буфером потому что движок игры в реальном времени зеркалит спрайт туда-сюда, оживляя монстра, и нет выигрыша держать упакованый оригинал и зеркальную копию.
    Heavy on the disasm
    Eric and the disasm
    Mask 3: Venom strikes disasm
    Bard's disasm

    Эти 2 пользователя(ей) поблагодарили Bedazzle за это полезное сообщение:

    BelaLugoci(10.04.2022), Oleg N. Cher(10.04.2022)

  6. #106

    Регистрация
    01.03.2005
    Адрес
    Новосибирск
    Сообщений
    2,081
    Спасибо Благодарностей отдано 
    88
    Спасибо Благодарностей получено 
    480
    Поблагодарили
    145 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Lethargeek Посмотреть сообщение
    иногда в игрушках зеркалят все спрайты персонажа при его развороте
    но не припомню сочетания такого с предварительной распаковкой
    В Диззи-8 делал распаковку спрайта самого диззика так. В пределке 7-ой части тоже этот метод применил, значительно места появилось.

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

  8. #107

    Регистрация
    08.09.2005
    Адрес
    Воронеж
    Сообщений
    4,970
    Записей в дневнике
    3
    Спасибо Благодарностей отдано 
    320
    Спасибо Благодарностей получено 
    316
    Поблагодарили
    239 сообщений
    Mentioned
    11 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от drbars Посмотреть сообщение
    В Диззи-8 делал распаковку спрайта самого диззика так. В пределке 7-ой части тоже этот метод применил, значительно места появилось.
    ты не понял
    у тебя каждый раз зеркалится в буфер нужная фаза
    а я про то, что ВСЕ зеркалятся по месту хранения
    (емнип то ли в paradise так, то ли в action force 2)
    Прихожу без разрешения, сею смерть и разрушение...

  9. #108

    Регистрация
    16.11.2014
    Адрес
    г. Абакан
    Сообщений
    70
    Спасибо Благодарностей отдано 
    3
    Спасибо Благодарностей получено 
    46
    Поблагодарили
    19 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Компрессоры RIP и mRIP

    В компрессор RIP добавлена возможность ограничения длины и дальности ссылок.

  10. #109

    Регистрация
    16.11.2014
    Адрес
    г. Абакан
    Сообщений
    70
    Спасибо Благодарностей отдано 
    3
    Спасибо Благодарностей получено 
    46
    Поблагодарили
    19 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В компрессор OAPACK добавлен "ускоренный" режим почти без ущерба для сжатия. https://gitlab.com/eugene77/oapack

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

    tiboh(24.11.2025)

  11. #110

    Регистрация
    08.01.2007
    Адрес
    г. Красноярск
    Сообщений
    1,358
    Спасибо Благодарностей отдано 
    352
    Спасибо Благодарностей получено 
    1,509
    Поблагодарили
    308 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Eugene85 Посмотреть сообщение
    В компрессор OAPACK добавлен "ускоренный" режим почти без ущерба для сжатия. https://gitlab.com/eugene77/oapack
    А можно ли улучшить алгоритм сжатия для Laser Compact? Или хотя бы добавить дополнительные возможности паковки картикнки без атрибутов и по третям. Как это было в ZX версиях?
    https://vtrd.in/release.php?r=82a719...7ef6d0e4817b7a

Страница 11 из 11 ПерваяПервая ... 7891011

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

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

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

Похожие темы

  1. Сжатие и упаковка. hrum3.5, hrust1, hrust2, laser compact x.x.
    от Hrumer в разделе Программирование
    Ответов: 113
    Последнее: 02.01.2020, 14:52
  2. Архивирование, сжатие, упаковка.
    от GriV в разделе Программирование
    Ответов: 30
    Последнее: 22.07.2019, 17:25
  3. ɹǀɩ ATARI. Упаковка данных
    от breeze в разделе Atari
    Ответов: 4
    Последнее: 16.11.2014, 15:55
  4. Упаковка текстов
    от Shadow Maker в разделе Программирование
    Ответов: 18
    Последнее: 10.10.2008, 21:43
  5. RLE сжатие (покритикуйте)
    от Vladson в разделе Программирование
    Ответов: 12
    Последнее: 16.03.2008, 12:29

Ваши права

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