Russian Qt Forum

Qt => Qt Quick => Тема начата: Отражение луны от Август 12, 2015, 21:34



Название: Длинные тени в qml
Отправлено: Отражение луны от Август 12, 2015, 21:34
Отчасти уже уходящий тренд, длинные и четкие тени, исходящие от текста (и не только), которые чаще всего ассоциируется сейчас с flat design. Если не понимаете о чем я - смотрите иконку хабра или иконки вроде этих http://cdn.onextrapixel.com/wp-content/uploads/2014/11/flat-icons-examples.jpg
Хорошо и весело, когда есть возможность заготовить нечто подобное заранее в виде графики. Но не всегда есть возможность это сделать. В данной случае меня интересует, как же все-таки реализовать отбрасывание подобной тени произвольным текстом. Возможно, кто-либо уже делал или есть какие-либо идеи?
Вариант номер 1: canvas. Вариант не слишком хорош, но если заморочиться - реализовать можно. Работать будет медленно и со скрипом
Вариант номер 2: шейдеры? Я на данный момент мало чего знаю о шейдерах, но, вероятно, они с этой задачей справятся на ура.
Вариант номер 3: любой, о котором я не знаю. Может быть есть такой? Буду рад если кто-нибудь подкинет идейку.


Название: Re: Длинные тени в qml
Отправлено: BuRn от Август 13, 2015, 00:26
Мб подойдет ?
http://doc.qt.io/qt-5/qml-qtgraphicaleffects-dropshadow.html
http://doc.qt.io/qt-5/graphicaleffects.html
Потестил, работает. Экспериментируйте


Название: Re: Длинные тени в qml
Отправлено: Отражение луны от Август 13, 2015, 01:32
Естественно нет. Это была первая вещь которую я попробовал, эта тень полностью повторяет исходный объект по форме, эффект тени достигается за счет смещения.
В моём же случае тень создается вот так: http://www.awwwards.com/flat-long-shadows-step-by-step-tutorial-resources-and-examples.html , принципиально разные вещи вообщем, просто называются одинаково.


Название: Re: Длинные тени в qml
Отправлено: Igors от Август 13, 2015, 09:08
Ну если уж приветствуются любые идеи.. Я бы эти тени просто рассчитал, как они есть в реальной жизни. На плюсах конечно, с Qt Quick не знаком. Это заняло бы до часа, что может и меньше чем поиск "готового решения"  :)


Название: Re: Длинные тени в qml
Отправлено: Отражение луны от Август 13, 2015, 12:52
Готовых решений нет, я загуглил. Буду учить шейдеры, оно того стоит.


Название: Re: Длинные тени в qml
Отправлено: navrocky от Ноябрь 23, 2015, 16:57
Да, на шейдерах оно делается достаточно просто. Советую замечательный ресурс для воодушевления и экспериментирования http://shadertoy.com/