PaintCAD для Windows - журнал разработки

Аватара пользователя
blackstrip
Админ
Сообщения: 1177
Зарегистрирован: Ср янв 02, 2008 1:42 pm
Откуда: Подольск
Контактная информация:

Re: PaintCAD для Windows

Сообщение blackstrip » Вт июн 11, 2013 11:17 pm

Первая тестовая 1.2.2.852 доступна по адресу http://blackstrip.ru/paintcad.exe (кидать как и прошлые беты - или в пустую папку или поверх 1.2.1).

В ней:

1) Были найдены самые жесткие места на окне. Было дело, когда я убирал везде красный. Пришла пора погасить всю зелень.

Изображение

В сторону "серого" были укатаны (но не сильно) цвет включенных флажков, фон "змеиного глаза" (по клику показывает увеличенные флажки в отдельном окне, для тачскринов) был перерисован и грани переделаны с черного на темнозеленый, и также в серый (и может даже слишком темноватый) цвет скатились значки на нижней панели с большой площадью монотонного ярко-зеленого (пред.кадр, след.кадр, след.пустой кадр). Стало так:

Изображение

Мелкие места типа иконки предпросмотра и мультибуфера не были тронуты, вроде на них глаз не останавливается особо (видимо, площадь мала).

2) Новая команда "Создать маску в буфере" (Ctrl+Shift+M).

Изображение

Открываем любой рисунок, к которому хотим рисовать альфа-канал. Первое что всегда хочется сделать - это фоновый цвет сделать прозрачным, остальное нет. Именно это и делает добавленная команда: по выбранному "прозрачному" цвету создается маска в буфере. Которую потом уже можно раскрашивать, размазывать и т.п., чтобы получать желаемый альфа-канал.

3) Исправлен баг: когда разбираешь AVI на кадры, то кнопка "Перейти (G)" показывала целый список опций (как и при Просмотре очереди кадров), но работала только опция "ввести номер кадр", остальные "на начало анимации, на конец" не работали. Поправлено. Теперь можно быстро переместиться как на первый кадр AVI, так и на последний.

Аватара пользователя
blackstrip
Админ
Сообщения: 1177
Зарегистрирован: Ср янв 02, 2008 1:42 pm
Откуда: Подольск
Контактная информация:

Re: PaintCAD для Windows

Сообщение blackstrip » Ср июн 12, 2013 4:55 pm

Доступна тестовая 1.2.2.854 по адресу http://blackstrip.ru/paintcad.exe

В ней:

1) Осветлены и обесцвечены кнопки переключения кадров на нижней панели. После предыдущего затемнения глаз видел внизу что-то темное (вкупе с номером кадра и просмотром аски-символа между этими кнопками).

Изображение

2) В окне Палитры на вкладке RGB появились две дополнительные кнопки.

Кнопка копирования цвета (С) - копирует второй цвет в тот который вы редактируете.

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

Изображение

Аватара пользователя
blackstrip
Админ
Сообщения: 1177
Зарегистрирован: Ср янв 02, 2008 1:42 pm
Откуда: Подольск
Контактная информация:

Re: PaintCAD для Windows

Сообщение blackstrip » Сб июн 15, 2013 11:41 am

Доступна тестовая 1.2.2.857 по адресу http://blackstrip.ru/paintcad.exe

В ней:

- новый эффект Расширителя "Пиксельбуфер"

Когда-то давно (11-12 лет назад), когда я был школоло, учился в 10 классе и писал на кубейсике - то там в каждом экранном режиме был только один шрифт, которым можно писать на экране (при желании и если знать где он лежит - можно было переписать его на свой в памяти).

И тогда был популярен трюк для написания большими шрифтами. Надо было сначала в углу экрана написать маленьким шрифтом - а потом в цикле пробежать написанное и каждый активный пиксель, принадлежащий букве, превратить в какую нибудь фигуру.

Вот, например, заголовок какой-то моей старой игры Ралли из таких фигур-"квадратов с тенью":

Изображение

Этот эффект превращения пикселей в картинки был добавлен в мобильный паинткад года 4 назад для масштабирования чернобелых букв шрифтов. Вот, например, такими шрифтами в виде шариков были когда-то нарисованы эти надписи:
Изображение

А теперь в PCW есть этот же эффект, но не только для чернобелых и не только для шрифтов.

Лежит он в "Эффекты" - "Расширитель" - "xN: Пиксельбуфер".

Работает так:
1) Рисуем один элемент, из таких элементов будет собрана наша надпись (или что-то еще). Кладем его в буфер (Ctrl+C).
Изображение

2) Рисуем саму надпись или что-то еще.
Изображение

3) Берем в ПЦ цвет тех пикселей, которые будем превращать в изображения из буфера.

Я взял черный в ПЦ, т.к. именно им нарисована наша надпись, и именно этот черный надо превратить в шарики из буфера.

4) Берем в ЗЦ цвет фона, им будет залиты все пиксели, которые не похожи на ПЦ

Я взял белый в ЗЦ, чтобы где не будет шариков - была бы просто белая заливка.

5) Вызываем "Пиксельбуфер"

Изображение

6) Получаем =) Можно потом залить уже просто заливкой любой фон или вставить полученное на любую другую картинку с прозрачным фоном Спецвставкой.

Изображение

Кстати, т.к. Расширитель есть в "Обработке BMP/JPG кадров" - то можно им и буквы шрифта увеличить, если загнать в буфер изображение того же чернобелого шарика и протащить всю последовательность BMP-букв через Расширитель-Пиксельбуфер (только, возможно, понадобится временно создать файлы 1-31.bmp, а то обработка кадров не ожидает разрывов последовательности и ищет кадры с 1.bmp и далее).

А также в ней:

- исправлен баг вызова "Наложить альфу (D)" в предпросмотре, если картинка и буфер разных размеров (вылезала ошибка). Теперь, как положено, в такой ситуации кнопка в предпросмотре будет серой и неактивной.

- иконки фото, видео, 3d-фото, "мобилы" (вирт.клавиатура) похудели и стали плоскими. а иконки изменения раскладки окна и мультибуфера перерисовались.

- кнопка режима анимации (F7) на нижней панели теперь не вылезает наружу при ее отключении

Аватара пользователя
blackstrip
Админ
Сообщения: 1177
Зарегистрирован: Ср янв 02, 2008 1:42 pm
Откуда: Подольск
Контактная информация:

Re: PaintCAD для Windows

Сообщение blackstrip » Сб июн 15, 2013 9:08 pm

Доступна тестовая 1.2.2.858 по адресу http://blackstrip.ru/paintcad.exe

В ней:

- в меню Экстра: плеер Muzz в автоматическом режиме (Ctrl+P) теперь сочиняет только роко-попсу, попсо-рок и их производные (пока что), но по более продвинутой и разнообразной схеме. При проигрывании показывается оттенок музыки (минор, норм, мажор), текущий такт и количество тактов в главном окне (внизу на панели статуса).

Изображение

А еще между песнями теперь выдается 5 секунд пауза.

Аватара пользователя
blackstrip
Админ
Сообщения: 1177
Зарегистрирован: Ср янв 02, 2008 1:42 pm
Откуда: Подольск
Контактная информация:

Re: PaintCAD для Windows

Сообщение blackstrip » Вс июн 16, 2013 10:05 am

Доступна тестовая 1.2.2.860 по адресу http://blackstrip.ru/paintcad.exe

В ней:

в меню Экстра: плеер Muzz теперь генерирует вступление, куплеты, припевы и заключение песен с использованием различных инструментов мелодии, инструментов аккомпанемента, с разными образцами ритмики, связывающихся и повторяющихся нот. Теперь четче должна быть слышна разница вступления, куплета и припева, а мелодии стали более мелодичными, т.к. аккорды выбираются по трем ступеням (нормальные, похуже, и вообще которые редко надо вставлять), каждый такт старается начинаться и заканчиваться одним из опорных для данной тональности аккордов.

Аватара пользователя
blackstrip
Админ
Сообщения: 1177
Зарегистрирован: Ср янв 02, 2008 1:42 pm
Откуда: Подольск
Контактная информация:

Re: PaintCAD для Windows

Сообщение blackstrip » Сб июн 29, 2013 4:51 pm

Выпущена версия 1.2.2.873

Скачать:
Чтобы поддержать паинткад - можете скачать его через файлообменник: http://blackstrip.ru/pcw.php (10956 Кбайт)

Но, как всегда, можете и просто по прямой ссылке тут если нет желания поддерживать =)

Изображение

Основные особенности:

1) В "Расширитель" добавлен эффект "Пиксельбуфер", позволяющий превращать пиксели в изображения из буфера (прямо как на скриншоте выше надпись из шариков. О том, как это сделать - читай посты выше).

2) Плеер-композитор Muzz разросся в систему генерации музыки.

Теперь у него есть собственное подменю в меню Экстра:
Изображение

Можно как раньше запускать его на проигрывание командой "Играть" (Ctrl+P).

Если одна из проигрываемых мелодий понравится - можно сразу сохранить ее в MID файл командой "Сохранить проигрываемую мелодию в MID" (Alt+P)

Мелодии теперь генерируются не совсем от балды, а исходя из заданных параметров, которые можно посмотреть и установить в меню "Настройки" (Ctrl+Shift+P).

Настройки выглядят как меню, где каждый пункт можно выбрать (нажать Enter) и ввести что нужно:
Изображение

Например, теперь можно выбирать грустные, нормальные либо веселые песни, менять размер песни и генерировать вальсы (3/8, 6/8) или экзотические песни (5/8, 7/8).

После выхода из паинткада настройки Muzz-плеера не будут забыты, а будут сохранены (в файл muzz.ini) и подгружены при следующем запуске паинткада. Поэтому можно один раз настроить размер, окрас, длину в куплетах и в следующие разы всегда будут генерироваться и проигрываться мелодии с этими заданными параметрами.

А еще теперь можно сразу нагенерировать до 100 песен и все их сохранить в конкретную папку, а потом уже вручную сидеть и слушать, удаляя плохие или откладывая в другую папку хорошие. Для этого есть команда "MIDI-бластер" (Shift+P), которая спросит куда класть и сколько их нужно:
Изображение

Сам алгоритм генерации подвергся огромной переработке и допиливанию. Примеры MIDI-файлов того, что можно нагенерировать (на каждый хороший файл конечно обычно приходится по несколько, а может по несколько десятков файлов, которые "не очень"):
Музыка 1
Музыка 2
Музыка 3
Музыка 4
Музыка 5
Музыка 6
Музыка 7
Музыка 8
Музыка 9
Музыка 10
Музыка 11
Музыка 12
Музыка 13
Музыка 14

3) Ну и плюс к тому:
- были исправлены ряд багов,
- в меню "Альфа" появилась команда создания двуцветной альфа-маски в буфере по текущей картинке и выбранному прозрачному цвету,
- главное окно и цвета включенных флажков стали менее зелеными,
- в палитре на вкладке RGB появились новые кнопки - скопировать цвет с противоположного (ПЦ с ЗЦ или ЗЦ с ПЦ), а также слить компоненты текущего редактируемого цвета в серый эквивалент.

Бонус для тех, кому интересно: подробное описание работы алгоритма генерации музыки Muzz - на хабрахабре: http://habrahabr.ru/post/184672/

Аватара пользователя
blackstrip
Админ
Сообщения: 1177
Зарегистрирован: Ср янв 02, 2008 1:42 pm
Откуда: Подольск
Контактная информация:

Re: PaintCAD для Windows

Сообщение blackstrip » Пн июл 01, 2013 9:22 pm

Выложена первая тестовая 1.2.3.875
Скачать: http://blackstrip.ru/paintcad.exe
Класть: в папку с версией 1.2.2, перезаписывая оригинальный exe (тогда подгрузятся ваши настройки). Или просто в пустую папку.

Изменения:
- генератор музыки Muzz: задаваемое в настройках максимально возможное количество куплетов (и припевов с ними) увеличено до 20. По умолчанию создается от 1 до 5 куплетов как раньше.

Аватара пользователя
blackstrip
Админ
Сообщения: 1177
Зарегистрирован: Ср янв 02, 2008 1:42 pm
Откуда: Подольск
Контактная информация:

Re: PaintCAD для Windows

Сообщение blackstrip » Пт июл 05, 2013 11:54 am

Выложена тестовая 1.2.3.877
Скачать: http://blackstrip.ru/paintcad.exe
Класть: в папку с версией 1.2.2, перезаписывая оригинальный exe (тогда подгрузятся ваши настройки). Или просто в пустую папку.

Изменения:
- в меню "Экстра" добавлено новое подменю "Специальные", содержащее инструменты, которые не такие интересные и занимающие время, как браузер, IRC-клиент или генератор мелодий, но все равно полезные
- в меню "Экстра"-"Специальные": добавлен новый инструмент "Анализатор raw-логов сайта", позволяющий отфильтровать и отследить обращения к различным файлам вашего сайта в различные даты, с различных ссылок и т.д. по сырым (raw) логам

Если уж добавлять в меню Экстра такие гигантские штуки как генератор мелодий или IRC-клиент, то можно добавить и более простые.

Для таких простых программ, которые иногда полезны - создано меню "Специальные" со значком-шестеренкой. Внутри меню добавлен первый пункт "Анализатор raw-логов сайта":

Сырые (raw) логи сайта вы можете достать с вашего сайта. Они сохраняются в один единственный длинный-длинный файл, в виде строк-обращений, где записывается IP залезающего, куда обращались и зачем, какой был код ошибки (все ок, или 404 или еще что-то), откуда залезли, какой был браузер. Иногда бывает опция "стирать лог каждый месяц", чтобы этот лог-файл не рос с годами и не забивал вам место на хостинге.

Вот пример одной из таких строк из лога:
178.203.195.5 - - [30/Jun/2013:15:36:04 +0400] "GET /tmp/pcw122/122midz/1.mid HTTP/1.1" 200 8316 "http://habrahabr.ru/post/184672/" "Mozilla/5.0 (X11; Linux x86_64; rv:22.0) Gecko/20100101 Firefox/22.0"

Каждый запрос файла, картинки, скрипта и пр - все автоматически записывается в лог.

Есть куча бесплатных программ анализаторов логов, которые составляют масштабную статистику сразу по всем файлам. Есть (наверное) платные, которые умеют искать конкретные обращения.

А мне иногда нужно посмотреть, например, "насколько интенсивно скачивают вот тот или этот файл", "откуда чаще приходят его качать, а откуда реже" и пр.

Для этого я сделал свой анализатор логов. Он простой, но гибкий в управлении.

Как с ним работать?

1. Скачиваем лог себе на компьютер. Если он запакован в архив - распаковываем его.

2. Вызываем Экстра - Специальные - Анализатор raw-логов сайта
Изображение

3. Выбираем наш распакованный файл лога

4. Вводим запрос фильтрации в окне.
Можно не вводить ничего или нажать Escape - тогда будет составляться длинная статистика по всем обращениям.
А можно ввести условия поиска, разделяя их значком вертикальной черты |.

Например, я хочу узнать как скачивали PaintCAD 4Windows вчера. Ввожу: pcw.rar|4/jul

Изображение

Это означает, что анализатор будет обращать внимание на запросы, в которых есть "pcw.rar" и есть "4/jul". I означает логическое И (а не ИЛИ, как можно подумать исходя из знакомого некоторым си-подобного синтакиса). Т.е. строка будет анализирована если в ней есть ВСЕ указанные куски текста. Если будет что-то от 4 июля, но не про pcw.rar - то анализатор не обратит внимания на такую строку. Аналогично - если будет про pcw.rar, но от другого числа - тоже не обратит внимания.

5. Ждем пока идет анализ (смотрим полосу прогресса в окне паинткада). По окончании - результат будет сохранен в папку паинткада в файл rawlog.htm и открыт установленным в вашей системе браузером по умолчанию.

6. В результате получаем файл, где есть содержание со ссылками на каждый раздел анализа:
Изображение

Раздел "Найденные строки" показывает все запросы, которые прошли через фильтр. Если фильтр был не указан - то этого раздела не будет в результате. Строки разделяются синими датами от дня к дню, чтобы легче было их смотреть.

Изображение

Раздел "Рейтинг по запросам" показывает, какие запросы делались и сколько их было штук. Т.к. мы ввели имя файла в фильтр - то показываются запросы только для pcw.rar.

Изображение

Раздел "Рейтинг ссылок на сайтах" показывает, откуда чаще приходят за этим файлом.

Изображение

Раздел "Распределение по дням" показывает, в какие дни сколько было обращений. Т.к. мы ввели один день - 4 июля, то статистика будет только по одному дню. А вот если ввести просто в фильтр имя файла (pcw.rar), а день не вводить - то в этом разделе увидим когда и сколько раз качали файл:

Изображение

Вот такой анализатор.

Аватара пользователя
blackstrip
Админ
Сообщения: 1177
Зарегистрирован: Ср янв 02, 2008 1:42 pm
Откуда: Подольск
Контактная информация:

Re: PaintCAD для Windows

Сообщение blackstrip » Пн июл 08, 2013 7:07 pm

Выложена тестовая 1.2.3.879
Скачать: http://blackstrip.ru/paintcad.exe
Класть: в папку с версией 1.2.2, перезаписывая оригинальный exe (тогда подгрузятся ваши настройки). Или просто в пустую папку.

Изменения:
- в анализатор логов добавлен "рейтинг по агенту", отображающий наиболее используемые браузеры и ОС (в виде юзерагентовской строки) при скачке файлов с вашего сайта.

CathodeInductance
Новичок
Сообщения: 7
Зарегистрирован: Пн июл 15, 2013 5:31 pm

Re: PaintCAD для Windows

Сообщение CathodeInductance » Чт июл 18, 2013 6:17 am

Обнаружил ошибку в эффектах Flame и HellFire (второй эффект похож на усиленную копию первого). В случаях, когда высота картинки равна 1 пикселу, вылетает ошибка "Scrollbar property out of range/TPopupList/00459E58". Думаю, в PaintCAD'e используется несколько упрощенный (в котором столбики пикселей не влияют друг на друга) алгоритм огня с демосцены, который выходит за границы двумерного массива. Неплохо было бы поставить проверку на высоту картинки == 1, чтобы не появлялось ненужных ошибок.

Эх... Вспомнил, как лет пятнадцать назад реализовывал и пытался оптимизировать этот эффект... :) Тогда это казалось нереально круто. Сейчас все по другому - накидал систему частиц из 100500 полупрозрачных текстурок и не паришься с оптимизацией - видеокарта быстренько все обработает и нарисует. :lol:

Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 48 гостей