Любителям машграфа посвящается - часть 2
ну, чтож, молодцы!
ну, чтож, молодцы!Ну-с, спасибо что ли!)
Немного подумав, мы пришли к выводу, что от всех условных переходов можно избавиться.ВНЕЗАПНО.
ВНЕЗАПНО.Ага, типа того!
Я бы, кстати, предложил завести обсуждаемый тред вроде "Наши разработки", где форумчане могли бы делиться успешно или не очень реализованными идеями в области разработки. Всяко пользы больше, чем от холиваров.
Ты так это говоришь, как будто в подобном треде не будет холиваров.
А внешне все будет выглядеть благопристойно и гладко.
С точки зрения пользователей - вот никогда не понимал, нахрена им такие приложения?.. Или как раз для большинства, для кого смартфон - просто красивая игрушка?
ограничиться поворотом точкиПоворачивать - домножать на матрицу? А перед этим вычислить синусы\косинусы и матрицу заполнить? Думаю, это дороже, чем по if'ам пробежаться.
Приложение совместимо с вашим устройством MTS Samsung GT-S5830.
Гугл определенно слишком много обо мне знает.
С точки зрения пользователей - вот никогда не понимал, нахрена им такие приложения?.. Или как раз для большинства, для кого смартфон - просто красивая игрушкаТоже не понимаю. При этом ТС утверждает, что он еще и наварился на 90 000 руб практически на ровном месте за счет скачек платной версии.
и откуда уверенность что на ровном месте? шарики писали два разработчика очень много ночей, потом затраты денежные и временные на продвижение и то они сейчас только бесплатные перевалили 50к+ за 5 месяцев чтоли.
ну если считаешь что ровное место попробуй что-нибудь создай на ровном месте
и откуда уверенность что на ровном месте? шарики писали два разработчика очень много ночей,Откуда эта советская привычка мерить востребованность товара работой? Не важно сколько вы работали, важно насколько это актуально для пользователей. В данном случае "на ровном месте" означает на и без того пресыщенным свистоперделками рынке. То есть, я, конечно, рад, что у вас получается что-то зарабатывать, но не перестаю удивляться критериям, по которым пользователи айфона выбирают приложения
Поворачивать - домножать на матрицу? А перед этим вычислить синусы\косинусы и матрицу заполнить? Думаю, это дороже, чем по if'ам пробежаться.Смещение цвета по оттенку мы так и делаем. Это бы просто одно умножения на матрицу. А вот блендинг по Hue так уже не сделаешь. Поэтому и требуется переход в HSV/HSL/LCH (luma chroma hue)
Откуда эта советская привычка мерить востребованность товара работой? Не важно сколько вы работали, важно насколько это актуально для пользователей. В данном случае "на ровном месте" означает на и без того пресыщенным свистоперделками рынке. То есть, я, конечно, рад, что у вас получается что-то зарабатывать, но не перестаю удивляться критериям, по которым пользователи айфона выбирают приложенияВо-первых, речь про андроид, а не айфон. Народ под андроидом любит кустомизацию.
Во-вторых, что касается востребованности - на данный момент скачки приложения перевалили за 100 000, прошло чуть меньше месяца.
Ну а по поводу советских мерок - ты сам же ими и пользуешься в первую очередь, иначе бы тебе даже мысль такая в голову не пришла.
Тоже не понимаю. При этом ТС утверждает, что он еще и наварился на 90 000 руб практически на ровном месте за счет скачек платной версии.Красиво - телефон становится няшным. Надоели цвета - поменял.
Полезно - погода, время суток.
Уникально - аналогов на рынке нет, идея оригинальна, людям это нравится по определению
Креативно и интересно - за несколько минут создается любая 2.5д сцена, с молниями, снегом, дождем и любыми другими эффектами.
Девелоперам респект. Безусловный RGB->HSV - круто. Хотя, если нужно решать задачу сдвига тона без упора на точность преобразования (т.е. без перехода в Lab, Luv или Munsell резве нельзя было ограничиться поворотом точки в RGB-кубе вокруг главной диагонали? Или с учётом выхода за границы это было бы сложнее?Да, все так. Все смещения делаются матрицами в одно умножения в пиксельном шейдере. Матрица расчитывается снаружи, поэтому это самый быстрый способ.
Но у нас также есть блендинг по hue, там уже приходится делать переход. Я экспериментировал с разными моделями. На практике, самой быстрой в преобразованиях оказалась hsl. Т.к. нужно было изменить hue и оставить все остальное как есть, выбор на ней и остановился.
Оставить комментарий
edmsk
Доброго времени суток!Напомню, в прошлый раз мы экспериметировали с меташарами под Android. Получилось неплохо - за 2 месяца около 50 000+ скачек бесплатной версии и ~1500 платной (стоимостью $2).
На этот раз хочу поделиться нашими изысканиями в области обработки изображений. На прошлой неделе мы завершили разработку приложения Раскраска Экрана. Основная идея заключалась в том, чтобы дать пользователю возможность легко и быстро изменить задний фон, применив к нему разные цветовые эффекты и добавив анимации (за деньги!)
Как эталон возможностей был взят фотошоп. Промучались мы долго. Основная сложность была в том, чтобы научиться быстрым преобразованиям цветов между разными цветовыми моделями, такими как HSL, HSV, LCH.
Так как все видеокарты работают с RGB, то, например, для изменения оттенка цвета (Hue) необходимо сначала выполнить преобразование RGB в одну из цветовых моделей, основанную на Hue. Любое такое преобразоване содержит достаточно большое кол-во условных переходов (if-ов которые очень плохо сказываются на производительности пиксельного шейдера.
Например, общеизвестная конвертация RGB->HSV выглядит так:
Немного подумав, мы пришли к выводу, что от всех условных переходов можно избавиться. В результате, получился следующий код:
Производительность выросла примерно на 500%, при условии, что на видеокарту телефона/планшета уже приходится большая нагрузка по fill-операциям.
Следующая трудность возникла при попытке имплементировать различные режимы смешивания цветов из фотошопа (Blend Modes).
Например, режим смешивания по цвету (Color Blend Mode) отличается тем, что сохраняет первоначальную относительную яркость каждого пикселя (Preserves Luminocity).
В результате долгих изысканий и попыток самим написать соотв. алгоритм мы наткнулись на документацию от самого фотошопа! И наконец-то получили то, что хотели.
К этому моменту прошло уже более месяца с начала разработки. Начали преобладать угрюмые настроения А еще необходимо было придумать динамические анимации для любой картинки, и приложение выглядело уже как-то не очень радужно в свете пред. сложностей.
Но мы все же собрались с силами и доделали. Добавили анимации времени суток, времен года, погоды и несколько цветовых динамических эффектов. Выглядит это на андроиде примерно вот так: http://www.youtube.com/watch?v=JKZJoyScLSs
Результат превзошел наши ожидания. Кол-во скачек и позитивных отзывов больше примерно в 10 раз, чем у меташариков.
Если кто-то из читающих интересуется данной темой или смежными вопросами - пишите в личку, буду рад помочь и даже поделиться различными исходниками