Pony Draw - приложение для новичков в рисовании. (ну и первопост)
Каждый раз когда я смотрю на замечательные работы художников нашего фендома, я прихожу в неописуемый восторг от уровня их работы и качеством исполнения этой самой работы. Меня всегда захватывает мечта о том что бы тоже научиться так же рисовать и когда нибудь поразить случайного человека моим рисунком. Чему то учиться с нуля дело не простое и достаточно длительное, у меня уже давно нет столько свободного времени что бы освоить какое то новое хобби, но это не означает что не стоит попробовать.
О да, первые мои рисунки — это что то. Некопытца, а сосиски. Не головы, а бесформенная материя. Не грива, а ужас на крыльях ночи, и так далее в том же духе. Рисовать в итоге я так и не научился :)
Так уж случилось что моё основное хобби — это создание различного рода приложений. Для телефонов, планшетов, компьютеров, часов и даже очков. Я не профессиональный разработчик, у меня нет диплома об окончании ВУЗа по этой специальности, все что я умею, это плоды беспрерывных ночей самообучения, которые тянутся по сей день. Это приносит мне безграничное удовольствие, создавать что то, что я могу назвать "своим", быть может не совсем нужное, как привило не красивое и уж точно не замысловатое, но зато своё.
Итак, к чему я все это веду. В один из жарких летних дней, скролля табун я снова увидел бесподобную работу местного художника, и мысль о рисовании снова поглотила меня, но вспоминая о своих бесконечных неудачных попытках, желание быстро сходило на нет. И тогда то до меня и дошла быть может и не самая удачная идея создать приложение которое позволит таким же новичкам как и я практиковаться в рисовании. Вроде бы я сделаю что то хотя бы отдаленно полезное, и совмещу 2 занятия которые греют мне душу — рисование и создание приложений. Так и родилась идея создания приложения Pony Draw.
В чем же заключалась главная идея?
Немножко подробнееА теперь по порядку.
1. Пользователь должен иметь возможность рисовать
С самого начала у меня возникло множество проблем с реализацией «фундамента» моего приложение. В последнем обновлении Windows 10 Anniversary Update от 2 августа, Microsoft презентовала новый замечательный инструмент для разработчиков под наименованием Windows Ink. Изначально он служил для рукописного ввода на сенсорных экранах, но его так же можно использовать и как холст для рисования, учитывая то что в нем используются более плавные линии. Но проблемы у меня возникли не с ним, а с инструментом зависящим от него — InkToolbar, цель которого предоставить пользователю визуальные элементы управления пером для рисования. После нескольких дней мучений и изучения документации, я нашел несколько багов в этом инструменте, и все равно не смог заставить его правильно функционировать. Пришлось использовать inkToolbar созданный сообществом, в нем намного меньше функционала, но все таки работает. Войну с InkToolbar от Microsoft продолжаю до сих пор, однажды я его все таки поставлю.
2. Пользователю должен быть предоставлен «обучающий» контент для практики
Это наверное был самый легкий пункт, так как royalty free контента на просторах интернета довольно не много, но он все таки есть. Так же я обратился к некоторым художникам на DeviantArt с просьбой об использовании их рисунков.
3. «Обучающий» контент не должен никак ограничивать пользователя, пользователь должен иметь возможность работать со своими собственными изображениями
Это возможность реализовывалась достаточно просто, под слой для рисования закладывался слой с изображением… ну вот собственно и все. Позже я прикрутил к этому элементу возможность изменять прозрачность рисунка с помощью слайдера. Единственное НО заключается в том что все изображения реализованы в виде BitmapImage принимающим параметры в виде new Uri — иначе говоря, в виде ссылок. Поэтому для нормальной работы приложения обязательно требуется подключение к интернету.
4. Пользователь должен иметь возможность сохранить свой рисунок
Изначально у меня даже и в планах не было такого, идея сохранять изображения зародилась во время поиска бага в inkToolbar, и изучения документации этого элемента. Увы сохранение изображение такого типа изначально возможно только в формате .gif, так что качество изображения оставляет желать лучшего. Лучше использовать «Ножницы» в стандартных программах Windows для сохранения изображения. Как бы там ни было, с этой проблемой я тоже веду беспощадную войну.
Итак, проще говоря — я сделал приложение которое позволяет пользователю рисовать поверх изображения, позволяя перерисовывать его и практиковаться в рисовании правильных форм, и просто набивать руку. С другой стороны можно скачать почти любой графический редактор, и просто наложить послойно рисунки, эффект получится абсолютно такой же. Маленьким плюсом моего приложения является то что оно бесплатное и его можно запустить на ПК, планшетах и на смартфонах с большим экраном. (На маленьком экране просто будет не удобно, очень. Но все еще возможно.)
Очень грубый вопрос — И все таки, зачем нужно твое приложение если есть обычные граф. редакторы?
— А хз.
Одним из самых «неприятных» этапов для меня, это было создание логотипа. Я далеко не дизайнер, так что логотип возможно поменяется парочку десятков раз. Итак, при первом запуске приложения мы можем лицезреть скромный и кривой логотипчик. Фоновый цвет зависит от цвета темы установленной на вашем ПК.
Что ты творишь, шакал, не сжимай
Перед тем как вы сможете работать, перед вами появится сообщение которое предупредит вас о том что приложение не будет правильно работать без интернет подключения.
Предупреждение
Сама рабочая область выглядит следующим образом. (1 — область рисования 2 — базовый контент с изображениями для практики 3 — Слайдер для управления прозрачностью изображения 4 — загрузка собственного изображения 5 — сохранение изображения 6 — инструмент управления пером)
Картинка
Простая картинкаПодробная картинка
И немножко разных скринов.
Разные скрины
Загрузка своего собственного изображения осуществляется очень просто, достаточно ввести нужный URL и картинка будет загружена.
Загрузка
В начале я хотел назвать это приложение How to draw ponies, но с маркетинговой точки зрения это название через чур длинное, а How to draw уже давно зарезервировано другим приложением. Передо мной стояла задача дать явно понять что это приложение касается «пони контента», и слово «Pony» должно обязательно присутствовать в названии, как и «Draw», не долго думая, я просто соединил 2 эти слова.
Осторожно, присутствует реклама.
Известна проблема что у некоторых людей приложение не запускается на мобильных телефонах с ОС Windows 8.1, проблема решается.
Спасибо что прочли мою статью, надеюсь она вам понравилась.
Если вы хотите посмотреть на приложение своими глазами и пощупать его, то под спойлером вы найдете ссылочку.
СсылкаКартинка
www.microsoft.com/en-us/store/p/pony-draw/9nblggh514g9
О да, первые мои рисунки — это что то. Не
Так уж случилось что моё основное хобби — это создание различного рода приложений. Для телефонов, планшетов, компьютеров, часов и даже очков. Я не профессиональный разработчик, у меня нет диплома об окончании ВУЗа по этой специальности, все что я умею, это плоды беспрерывных ночей самообучения, которые тянутся по сей день. Это приносит мне безграничное удовольствие, создавать что то, что я могу назвать "своим", быть может не совсем нужное, как привило не красивое и уж точно не замысловатое, но зато своё.
Итак, к чему я все это веду. В один из жарких летних дней, скролля табун я снова увидел бесподобную работу местного художника, и мысль о рисовании снова поглотила меня, но вспоминая о своих бесконечных неудачных попытках, желание быстро сходило на нет. И тогда то до меня и дошла быть может и не самая удачная идея создать приложение которое позволит таким же новичкам как и я практиковаться в рисовании. Вроде бы я сделаю что то хотя бы отдаленно полезное, и совмещу 2 занятия которые греют мне душу — рисование и создание приложений. Так и родилась идея создания приложения Pony Draw.
В чем же заключалась главная идея?
- Пользователь должен иметь возможность рисовать
- Пользователю должен быть предоставлен «обучающий» контент для практики
- «Обучающий» контент не должен ограничивать пользователя, пользователь должен иметь возможность работать со своими собственными изображениями
- Пользователь должен иметь возможность сохранить свой рисунок
Немножко подробнееА теперь по порядку.
1. Пользователь должен иметь возможность рисовать
С самого начала у меня возникло множество проблем с реализацией «фундамента» моего приложение. В последнем обновлении Windows 10 Anniversary Update от 2 августа, Microsoft презентовала новый замечательный инструмент для разработчиков под наименованием Windows Ink. Изначально он служил для рукописного ввода на сенсорных экранах, но его так же можно использовать и как холст для рисования, учитывая то что в нем используются более плавные линии. Но проблемы у меня возникли не с ним, а с инструментом зависящим от него — InkToolbar, цель которого предоставить пользователю визуальные элементы управления пером для рисования. После нескольких дней мучений и изучения документации, я нашел несколько багов в этом инструменте, и все равно не смог заставить его правильно функционировать. Пришлось использовать inkToolbar созданный сообществом, в нем намного меньше функционала, но все таки работает. Войну с InkToolbar от Microsoft продолжаю до сих пор, однажды я его все таки поставлю.
2. Пользователю должен быть предоставлен «обучающий» контент для практики
Это наверное был самый легкий пункт, так как royalty free контента на просторах интернета довольно не много, но он все таки есть. Так же я обратился к некоторым художникам на DeviantArt с просьбой об использовании их рисунков.
3. «Обучающий» контент не должен никак ограничивать пользователя, пользователь должен иметь возможность работать со своими собственными изображениями
Это возможность реализовывалась достаточно просто, под слой для рисования закладывался слой с изображением… ну вот собственно и все. Позже я прикрутил к этому элементу возможность изменять прозрачность рисунка с помощью слайдера. Единственное НО заключается в том что все изображения реализованы в виде BitmapImage принимающим параметры в виде new Uri — иначе говоря, в виде ссылок. Поэтому для нормальной работы приложения обязательно требуется подключение к интернету.
4. Пользователь должен иметь возможность сохранить свой рисунок
Изначально у меня даже и в планах не было такого, идея сохранять изображения зародилась во время поиска бага в inkToolbar, и изучения документации этого элемента. Увы сохранение изображение такого типа изначально возможно только в формате .gif, так что качество изображения оставляет желать лучшего. Лучше использовать «Ножницы» в стандартных программах Windows для сохранения изображения. Как бы там ни было, с этой проблемой я тоже веду беспощадную войну.
Итак, проще говоря — я сделал приложение которое позволяет пользователю рисовать поверх изображения, позволяя перерисовывать его и практиковаться в рисовании правильных форм, и просто набивать руку. С другой стороны можно скачать почти любой графический редактор, и просто наложить послойно рисунки, эффект получится абсолютно такой же. Маленьким плюсом моего приложения является то что оно бесплатное и его можно запустить на ПК, планшетах и на смартфонах с большим экраном. (На маленьком экране просто будет не удобно, очень. Но все еще возможно.)
Очень грубый вопрос — И все таки, зачем нужно твое приложение если есть обычные граф. редакторы?
— А хз.
Одним из самых «неприятных» этапов для меня, это было создание логотипа. Я далеко не дизайнер, так что логотип возможно поменяется парочку десятков раз. Итак, при первом запуске приложения мы можем лицезреть скромный и кривой логотипчик. Фоновый цвет зависит от цвета темы установленной на вашем ПК.
Что ты творишь, шакал, не сжимай
Перед тем как вы сможете работать, перед вами появится сообщение которое предупредит вас о том что приложение не будет правильно работать без интернет подключения.
Предупреждение
Сама рабочая область выглядит следующим образом. (1 — область рисования 2 — базовый контент с изображениями для практики 3 — Слайдер для управления прозрачностью изображения 4 — загрузка собственного изображения 5 — сохранение изображения 6 — инструмент управления пером)
Картинка
Простая картинкаПодробная картинка
И немножко разных скринов.
Разные скрины
Загрузка своего собственного изображения осуществляется очень просто, достаточно ввести нужный URL и картинка будет загружена.
Загрузка
В начале я хотел назвать это приложение How to draw ponies, но с маркетинговой точки зрения это название через чур длинное, а How to draw уже давно зарезервировано другим приложением. Передо мной стояла задача дать явно понять что это приложение касается «пони контента», и слово «Pony» должно обязательно присутствовать в названии, как и «Draw», не долго думая, я просто соединил 2 эти слова.
Осторожно, присутствует реклама.
Известна проблема что у некоторых людей приложение не запускается на мобильных телефонах с ОС Windows 8.1, проблема решается.
Спасибо что прочли мою статью, надеюсь она вам понравилась.
Если вы хотите посмотреть на приложение своими глазами и пощупать его, то под спойлером вы найдете ссылочку.
СсылкаКартинка
www.microsoft.com/en-us/store/p/pony-draw/9nblggh514g9
47 комментариев
Скоро, наверное, придумают про грамму которая будет самостоятельно рисовать за человека.
Как это мило.
Кто знает.
Благодарю.
На самом деле смотря на стремительный рост интереса общества к нейросетям, я более чем уверен что мы увидим такие программы в ближайшем будущем
Существующие нейросети, превращающие фотографии в картины известных художников сначала наделали много шума. Но потом как то быстро заглохло, возможно люди принимают это больше как обычный фильтр накладывающий на изображения, что в корне неверно.
Они умеют обучаться, если им показать много картинок любого брони художника к примеру, затем дать простой рисунок они смогут нарисовать его так, что даже сам автор признает свой стиль, и это страшно знаешь. В какой то мере искусство обесценится.
Ожидаем более в будующем!
Боюсь, подходящей для программы операционной системы нет почти ни у кого
Я бы на месте автора вообще собрал приложение в 32-х битах и под семерку — так точно заработает у 90% аудитории.
Ну и под Линух неплохо бы.
Потенциально все может быть очень даже неплохо, да вот вопрос возник — а планируется ли расширение поддерживаемых ОС хотя бы до Семерки?
Что бы запустить эту программу на семерке придется полностью переписывать её из UWP в WPF… на самом деле главная проблема заключается в том, поддерживает ли WPF те инструменты что я использовал в UWP, если нет — это будет интересным гемороем
У меня разве что есть ВиртуалБокс, но он далеко не самый свежий :S
Или WMVare
иди в жопу
Насчет программы: идея сама по себе не то чтобы сильно нужная, но приятная и полезная. А вот к исполнению вопросы. Я там выше написал про операционки. Помимо этого — нахрена ей соединение с сетью-то? Инфу по чужим компам собираешь? Если нет — избавься от этой необходимости, скомпиль под Win7 x86 — и аудитория твоей программы вырастет в несколько раз.
Я верю, что у тебя иногда возникает желание рисовать. У меня такое тоже случается, со всеми вытекающими — с кривыми копытами, с разочарованиями и грустным опытом. Я так же верю, что написание программ доставляет тебе удовольствие. Не могу судить, насколько у тебя получается, потому что сам в этом ни в зуб ногой. Но конкретно вот этот гибрид твоих интересов можно рассматривать скорее для получения удовольствия от создания чего-то, чем как реальную пользу — опять же, на мой невежественный взгляд. Граф. редактору, особенно для новичка, нужна стабилизация, коей я в твоей проге не наблюдаю. Без стабилизации юзер так и будет кривенько обводить поней. Можно долго перечилсять, чего здесь не хватает и что стоило бы добавить для жизнеспособности софтины, но не будем о грустном. Будем о весёлом и полезном. Создавая софт, ты должен в первую очередь ориентироваться на вопрос «Что может предложить моя программа юзеру, чего не могут другие?» В чём эксклюзив, где изюминка? Отличительной особенностью твоей программы является предустановленный обучающий контент, помогающий юзеру совершенствоваться в рисовании. Теперь отделим зерна от плевел — основным твоим достижением в результате всех махинаций стала некоторая база учебно-методического материала, который поможет человеку научиться рисовать пони.
У тебя хорошие способности к поиску и обработке информации, что проиллюстрировано выше в твоих трудах над гнустными тулбарами. Предлагаю вот что — не пытайся тягаться с гигантами вроде Adobe или Autodesk. Лучше займись тем, что у тебя хорошо выходит. Ты уже прошерстил интернет в поисках учебных пособий — систематизируй их, уложи поэтапно, допиши примечания. Пользы от хорошего учебного пособия будет гораздо больше, чем от подобной программы.
Впрочем, всё это лишь рассуждения старого, беззубого, выжившего из ума меня. Кто воспринимает всерьёз безумца? =)
Подробнее про InkCanvas в WPF — professorweb.ru/my/WPF/base_WPF/level3/3_14.php
или Троелсен «Язык программирования C# 5.0 и платформа .NET 4.5» глава 28
Так хотя бы избежишь надоедливых нытиков/противников UWP