Когда есть возможность показать, а не рассказывать — нужно показывать. Желательно, в сравнении. Чем, скажем, просто баннер отличается от баннера «с наворотами»? На мой взгляд, хороший баннер способен создать атмосферу, пускай на долю секунды. Вот для таких неискушенных клиентов быстро накидал пару баннеров, одинаковых по содержанию, но разных по исполнению. Magic стоит денег, не так ли?
Июль, 21, 2009
Июнь, 3, 2009
Просто краткое изложение появившейся в конце мая на InfoQ статьи о десяти главных нововведениях в новой версии Flex 4 SDK:
Что же, будем изучать. Много вкусного.
- Интеграция с Adobe Catalyst. Разработчики и дизайнеры смогут сотрудничать, каждый играя на своем поле и не заморачиваясь не своими проблемами.
- Новая компонентная схема Spark. Скинирование, логика и разметка теперь разнесены. Spark является надстройкой над схемой Halo, что позволяет использовать компоненты, созданные во Flex 3. Новый пакет spark.effects, и соотвественно, новые эффекты (включая трехмерные).
- MXML 2009. Ряд обновлений для поддержки идеи разнесения кода, скинов и разметки. Компоненты Flex 4 поставляются отдельным пакетом spark.components, который требуется выделить в собственное пространство имен, если возникает необходимость одновременно использовать одноименные компоненты схем Halo и Spark.
- Усовершенствования в View States. Новые атрибуты компонентов includeIn и excludeFrom позволяют напрямую указать в каких состояниях (states) этот компонент будет присутствовать или отсутствовать.
- Поддержка FXG. Это векторный формат для обмена между Flex, Catalyst, Photoshop CS4 и Illustrator CS4. Формат поддерживает графические примитивы, заливки, текст, маски, режимы наложения и прозрачности, некоторые эффекты. Формат можно использовать для скинирования в схеме Spark.
- Новые возможности скинирования. Теперь скин можно оформлять в виде отдельного MXML-файла, и в дальнейшем передавать (или даже продавать) разработчикам готовое визуальное решение. Подробнее здесь.
- Обновленная модель разметки. Некоторые типы контейнеров (те, которые служили лишь для указания режима расположения вложенных компонентов, вроде HBox и VBox) больше не нужны. Вместо них появляется что-то вроде внешнего макета верстки, который описывает внутреннее расположение дочерних компонентов.
- Flash Builder 4. Так теперь называется Flex Builder. Он все также представляет собой средство разработки на платформе Eclipse, но в нем появились новые средства отладки, больше рефакторинговых инструментов и поддержка FlexUnit 4. Плюс некоторые возможности разработки data-ориентированных приложений.
- Производительность компилятора. Пока обещают 25% прирост скорости.
- Новые возможности для текста. Gumbo теперь включает несколько новых классов для работы с текстом (RichText, SimpleText и т. д.). Кроме того, Adobe работает над библиотекой Text Layout, чтобы дать возможность возпользоваться возможностями нового текстового движка во Flex 10 (вот отличная презентация)
Что же, будем изучать. Много вкусного.
Апрель, 7, 2009
Не знал раньше, что Яндекс умеет искать цвета по названию и показывать их. Например, кармин. А это нефритовый. Или вот цвет лягушки в обмороке. Гениально!
Февраль, 18, 2009
Рома Воронежский предлагает отличный концепт постлоадера. Посмотрел — выгрузи обратно.
Декабрь, 30, 2008
Новый год, это такая тема когда парочку флэш-открыток надо сделать обязательно. Я и сделал — вот и вот.
А своих читателей я поздравляю по-простому, словами. Спасибо, что читали меня в уходящем году. Вы самые талантливые, креативные и вообще молодцы. Давайте не будем в Новом году тупить, а сделаем много-много красивого и интересного. Научимся разным полезным штукам. И чтобы все у нас было хорошо!
А своих читателей я поздравляю по-простому, словами. Спасибо, что читали меня в уходящем году. Вы самые талантливые, креативные и вообще молодцы. Давайте не будем в Новом году тупить, а сделаем много-много красивого и интересного. Научимся разным полезным штукам. И чтобы все у нас было хорошо!
Декабрь, 12, 2008
Придумывая фон для своего сайта, я решил сделать что-то вроде подмалевка, имитацию лессирующих мазков на полотне. Сегодня я поделюсь своим рецептом данного эффекта.

( Углубиться )

( Углубиться )
Декабрь, 9, 2008
Экспериментальный проект, не flash, а просто забавы ради: Брендогенератор!
Идея родилась после просмотра каталога Икеа и размышлений о том, как этим ребятам удается придумать столько нелепых названий.
F5 — и новое название для вашей фирмы, проги или табуретки готовы!
Идея родилась после просмотра каталога Икеа и размышлений о том, как этим ребятам удается придумать столько нелепых названий.
F5 — и новое название для вашей фирмы, проги или табуретки готовы!
Декабрь, 5, 2008
Угораздило меня в самый кризис искать постоянную работу... По этому случаю выложил свое портфолио.
Август, 12, 2008
Август, 6, 2008
Интересно, существует ли в природе какой-нибудь формализованный способ (инструмент, методология) для описания поведения визуальных элементов внутри интерфейса?
Что-то типа «при нажатии на красную иконку она подпрыгивает, переворачивается и уносится вдаль с тихим дзиньканием, после чего слева выезжает черная панель, по гладкой поверхности которой пробегает блик».
Хорошо было бы, если бы было.
Что-то типа «при нажатии на красную иконку она подпрыгивает, переворачивается и уносится вдаль с тихим дзиньканием, после чего слева выезжает черная панель, по гладкой поверхности которой пробегает блик».
Хорошо было бы, если бы было.
Июль, 25, 2008
Компания Revolver выпустила бета версию FreeSpin3D, первого полигонального решения для воспроизведения коммерческой трехмерной графики в Adobe Flash в режиме реального времени. Трехмерное воспроизведение основано на технологии One Layer 3D, основной технологии компании Revolver.
FreeSpin3D наделяет разработчиков игр, рекламы и контента, надежной, легкой в использовании программой, открывающей новые горизонты возможностей для креативной разработки 3D и 2.5D контента. FreeSpin3D может быть использована как Flash дизайнерами, так и программистами. Для каждой из этих групп FreeSpin3D предлагает специально разработанный набор функций:
Для Flash дизайнеров внедрена панель на уровне Flash разработки, позволяющая создавать 3D контент без использования кода – исключительно FreeSpin3D панель и Flash Timeline.
Для Flash-программистов простираются возможности flash movie clip API, с динамичным и обширным набором 3D функций. Расширенный API позволяет внедрять такие 3D опции, как ротация модели, анимация и collision detection, которые могут быть использованы как во временной зависимости, так и независимыми скриптами, позволяя с легкостью разработать комплексные сценарии со множеством 3D моделей. FreeSpin3D позволяет импортировать 3Dмодели прямо в Adobe Flash как Flash Movie Clip объектов.
Скачать и узнать подробнее.
via Render.ru
FreeSpin3D наделяет разработчиков игр, рекламы и контента, надежной, легкой в использовании программой, открывающей новые горизонты возможностей для креативной разработки 3D и 2.5D контента. FreeSpin3D может быть использована как Flash дизайнерами, так и программистами. Для каждой из этих групп FreeSpin3D предлагает специально разработанный набор функций:
Скачать и узнать подробнее.
via Render.ru
Июль, 20, 2008
Июль, 16, 2008
Flex — это не только серые панельки да прямоугольнички. На Flex можно быстро собрать несложный промосайтец. Например, такой.
Июль, 11, 2008
Computerra: «Осенью прошлого года Adobe выпустила технологию Adobe AIR, связанную с ее (точнее, купленными у Macromedia) технологиями Flash и Flex. Примерно тогда же в свет вышла Silverlight - прямой конкурент Flash/Flex. Flex, AIR, Silverlight, Google Gears, GWT, Mozilla Prizm, Sun JavaFX - все это технологии, созданные для того, чтобы навсегда изменить привычный нам интернет, из "Сети документов" превратить его в "Сеть приложений", могучей волной смыть различие между десктопом и интернетом, веб-сервисом и отдельной программой.» — читать дальше
Июнь, 26, 2008
У замечательного компонента-контейнера Tile есть одна особенность: он резервирует для размещения блоков прямоугольник, высота которого вычисляется как произведение квадратного корня из количества блоков, округленного до целых в большую сторону, на высоту блока tileHeight.
То есть, если в контейнер Tile помещается 5 блоков, то ceil(sqrt(6)) = 3, и высота контейнера будет 3 x [высота блока], или проще говоря, в три ряда. Но поскольку блоков всего 5, то при режиме размещения direction="horizontal" занятыми окажутся только первый ряд и 2 места во втором, а третий ряд останется незаполненным.
С шириной в целом такая же история, но если поставить контейнеру width="100%", то при раскладывании 5-ти блоков и оба нижних ряда могут оказаться пустыми.
Иногда стоит задача сымитировать поведение плавающих блоков в CSS-верстке HTML-страницы (<div style="float:left">), при котором блоки приклеиваются один к другому пока по горизонтали остается место, и перетекают ниже, если места не осталось. Растягивая или сжимая окно браузера мы заставляем плавающие блоки менять позиции, плотно заполняя доступное место. Во Flex компонент Tile идеально подходит для решения такой задачи, с небольшой доработкой.
Вот что должно получиться (опытный взгляд сразу рассмотрит применение вложенных компонентов Repeater):

( Немного кода )
То есть, если в контейнер Tile помещается 5 блоков, то ceil(sqrt(6)) = 3, и высота контейнера будет 3 x [высота блока], или проще говоря, в три ряда. Но поскольку блоков всего 5, то при режиме размещения direction="horizontal" занятыми окажутся только первый ряд и 2 места во втором, а третий ряд останется незаполненным.
С шириной в целом такая же история, но если поставить контейнеру width="100%", то при раскладывании 5-ти блоков и оба нижних ряда могут оказаться пустыми.
Иногда стоит задача сымитировать поведение плавающих блоков в CSS-верстке HTML-страницы (<div style="float:left">), при котором блоки приклеиваются один к другому пока по горизонтали остается место, и перетекают ниже, если места не осталось. Растягивая или сжимая окно браузера мы заставляем плавающие блоки менять позиции, плотно заполняя доступное место. Во Flex компонент Tile идеально подходит для решения такой задачи, с небольшой доработкой.
Вот что должно получиться (опытный взгляд сразу рассмотрит применение вложенных компонентов Repeater):

( Немного кода )
Апрель, 17, 2008
Компонент-фабрика mx:Repeater способен наштамповать сколько угодно компонентов, однако, иногда возникает необходимость получить прямой доступ к созданным экземплярам. Например, сбросить все поля в форме в значения по умолчанию.
( Углубиться )
( Углубиться )
Апрель, 15, 2008
SitePal — флэш заговорил на всех языках сразу.
Апрель, 10, 2008
Новое слово в рекрутинге — Flash/Flex-разработчикам предлагается отдать свои портфолио напрокат в качестве вступительного взноса за право работать. Смело, очень смело.

Пятнадцать ысяч уэй!

Пятнадцать ысяч уэй!
Март, 30, 2008
Это просто узелок на память, касательно того случая, когда нужно внедрить во Flex swf с таймлайном и проиграть его один раз.
MovieClip, будучи скомпилирован как AS3 для 9 версии плеера, при внедрении во Flex теряет свой код. Это делает невозможным затормозить клип в конце вызовом функции stop(). Описываемый способ управлять клипом, возможно, не самый лучший, но он работает.
Итак, сначала внедряем некоторый символ из SWF, который есть MovieClip.
Теперь нужно превратить внеденный клип в экземпляр класса MovieClip:
Последний кадр клипа делаем ключевым и ставим туда метку "fin". А на экземпляр вешаем слушателя Event.ENTER_FRAME:
Слушатель проверяет наличие метки и когда нужно останавливает воспроизведение:
Разумеется, одной остановкой воспроизведения клипа дело не ограничивается. К примеру, так же можно реализовать плавные переходы между состояниями кнопок, поставив несколько меток на таймлайн, или же организовать библиотеку иконок в рамках одного клипа, не тягая каждую по отдельности.
MovieClip, будучи скомпилирован как AS3 для 9 версии плеера, при внедрении во Flex теряет свой код. Это делает невозможным затормозить клип в конце вызовом функции stop(). Описываемый способ управлять клипом, возможно, не самый лучший, но он работает.
Итак, сначала внедряем некоторый символ из SWF, который есть MovieClip.
[Embed(source='/assets/clips.swf',symbol='clip1')] private var clip_1:Class;
Теперь нужно превратить внеденный клип в экземпляр класса MovieClip:
var my_clip:MovieClip = MovieClip(new clip_1());
Последний кадр клипа делаем ключевым и ставим туда метку "fin". А на экземпляр вешаем слушателя Event.ENTER_FRAME:
my_clip.addEventListener(Event.ENTER_FRAME,checkForStop);
Слушатель проверяет наличие метки и когда нужно останавливает воспроизведение:
private function checkForStop(event:Event):void { if (event.target.currentLabel == "fin") { event.target.stop(); } }Осталось только задать этот клип в качестве значения свойства source компонента mx:Image.
Разумеется, одной остановкой воспроизведения клипа дело не ограничивается. К примеру, так же можно реализовать плавные переходы между состояниями кнопок, поставив несколько меток на таймлайн, или же организовать библиотеку иконок в рамках одного клипа, не тягая каждую по отдельности.
Март, 28, 2008
Adobe Photoshop Express. Любопытно. Вроде бы на Flex.

