21 января 2016

          Как конвертировать графику под цвет на точку
                        by Alone Coder

Тут прозвучал вопрос, как конвертировать графику в "EGA"-режим
ATM Turbo. 

Если нужна просто фотография с dithering'ом:

1. В фотошопе подкручиваем яркость/контраст/цветность повкуснее.

2. Конвертим в адаптивную палитру ~30 цветов. Но не применяем
эту палитру. Наоборот, лезем вручную её исправлять. 

3. Каждый цвет вручную подводим к АТМ'ным цветам (т.е. с
составляющими 0/85/170/255 - по измерениямLVDтам должны быть 
0/93/162/255, но я не уверен, что авторы ATM Turbo хотели именно 
эти значения; впрочем, разница незначительная). Если есть 
варианты, куда округлить - делаем пару вариантов цвета (всё 
равно в палитре будет много совпадающих). 

4. Смотрим, сколько разных цветов получилось (применить,
перевести в RGB, выбрать "точную" палитру). Если меньше 16, то 
добавляем варианты цветов. Если больше, то убираем редкие 
оттенки (если их можно передать с помощью штриховки другими 
цветами). 

5. Применяем палитру. Dithering можно покрутить от 30% до 100%.

6. Переводим опять в RGB.

7. Конвертим в "точную" палитру - уже в ровно 16 цветов.

8. Сохраняем в 4-битный BMP.

В процессе подбора палитры можно периодически сохранять палитру,
применять, отменять результат...

Hippiman предлагает следующий вариант:

───────────────────────────────────────────────────────────────┐ 
Нужно плавно сократить количество цветов в изображении до
минимального. Лучше всего это делать в несколько шагов.

Сначала экспериментальным путём нужно конвертировать изображение
к адаптивной палитре без сильной потери качества. Обычно это
примерно 60-70 цветов.

Далее нужно "слить вместе" похожие цвета, по возможности
подгоняя их к ATM палитре. Стараемся избавляться от маленьких
областей редко встречающихся цветов.

Потом переводим в RGB и повторяем процедуру несколько раз, пока
не останется примерно 30 цветов.
───────────────────────────────────────────────────────────────┘ 

Если нужно конвертить рисованную графику (как в Nedodemo 2 ), то
возни побольше. Надо перебрать вручную несколько вариантов
последовательностей цветов взамен каждого из цветопереходов
оригинальной палитры. Иногда приходится пожертвовать
одним-другим цветом (слить его с соседним). Если нужна 50%
штриховка, то сначала переводим картинку в ~30 цветов с
составляющими 0/42/85/128/170/212/255, потом ищем АТМ'ную
палитру, с помощью которой можно наштриховать нужные цвета, а
потом каждое цветовое поле вручную переводим в штриховку (все
вместе нельзя - чёткая 50% штриховка не получается). Я не нашёл
более быстрого способа, чем копирование выделенного цветового
поля на другой документ (изначально белый), выставление
3-цветной палитры (белый цвет плюс два цвета, между которыми
точно ложится заданный) и конверсия со штриховкой diamond. Потом
обратно копируем что получилось на исходный документ.

Конвертировать в палитруDDp (RЧGЧB4) легче - просто переводим в
адаптивную палитру и сохраняем. При отрезании младших битов
цвета особой разницы не будет. В случае чего можно в процессе
конверсии в адаптивную палитру вручную округлить составляющие
цвета, потом применить палитру.

СофтDiHalt Visitors для пакетной конверсии BMP в
упакованные дампы памяти выложен здесь:
http://alonecoder.nedopc.com/zx/convega.rar

Кстати, есть специальная программа отTmK, которая конвертирует
в два мерцающих экрана цвет на точку. Но она не умеет подбирать
палитру



Other articles:


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Similar articles:
Weakly pass - Description-passing game Monstrland (Mission 3).
Overview of new products - THE KNIGHT'S ARENA!, Tic - Tac Toe, Minesweeper.

В этот день...   21 November