Будучи вдохновленным туториалом по созданию треугольной абстракции на сайте blog.spoongraphics.co.uk, я решил сделать свою собственную. Но работа в Adobe Illustrator-е совсем не доставляла мне удовольствия. Я хотел сделать огромное полотно из таких треугольников и постоянное копирование, смещение, повороты, а затем раскрашивание меня быстро утомили. И тут у меня родилась идея - быстренько это все запрограммировать, сделав простенькое приложение на Adobe Air. Название было придумано сразу - TriangleFill.
Programming, Unity3D, C#, ActionScript, Flash, Games, CGI, Maya, Mental Ray
понедельник, 26 марта 2012 г.
пятница, 23 марта 2012 г.
Air Native Process (.exe and .jar)
Начиная с версии 2.0 в Adobe Air появилась возможность общаться со сторонними приложениями через специальный встроенный класс NativeProcess. Это делает возможным написание "ядра" любого приложения на "нативном" языке портируемой платформы (Objective-C, Java, C#), в то время как сам интерфейс и анимацию можно сделать в удобных инструментах Flash-платформы (Flash Professional, Flex, Flash Catalyst). Здесь мы рассмотрим простейший пример взаимодействия Adobe Air и приложения Windows написанного на C#, а также, аналогичного приложения написанного на Java. В результате сделаем AIR приложение для создания "снимков экрана" - Screenshooter.
понедельник, 27 февраля 2012 г.
Design Pattern - Proxy Pattern
Proxy Pattern представляет из себя "обертку", вспомогательный контейнер для объекта функционал которого мы хотим использовать. К примеру, Proxy шаблон позволяет работать с удаленным объектом так, как будто он локальный, т.е. пользователь имеет возможность вызывать методы и свойства удаленного объекта через Proxy, не заботиться о создании соединения или загрузке этого объекта. При этом интерфейс у Proxy объекта может быть такой же как и у оригинального объекта, но реализация отличаться, "прокси паттерн" предоставляет замену (прототип) для другого объекта с целью обеспечения контроля над ним.
понедельник, 24 октября 2011 г.
ApplicationDomain Dynamic Instantiation (NResponder)
Одна из основных трудностей при разработке приложений заключается в копировании графики или доступ к загруженным из вне swf-файлам. К примеру, постройки на карте, юниты, квесты или ключевые персонажи в игре (NPC). При повторном использовании загруженной графики необходим метод быстрого создания копии, к примеру можно использовать класс duplicateDisplayObject, написанный одним из разработчиков FP Trevor McCauley, aka senocular. Или же просто копировать нужную "часть экрана" как BitmapData.
Оба этих способа не очень удобны. Первый тем, что нужно использовать дополнительный класс, второй тем, что копия может быть без прозрачности (альфа-канал).
FP позволят создавать "экземпляры объекта" (instances) через создание копии зарегистрированного класса в массиве всех "объявленных объектов" внутри FP - ApplicationDomain, через метод getDefinition (в том числе и класса внедренной графики (embeded media) из Flash IDE).
понедельник, 8 августа 2011 г.
Design Pattern - Command, Decorator
Когда я только начинал эту статью, то планировалось, что она будет посвящена рассмотрению только Command Pattern-а, но по ходу ейо совершенствования и доработки статья разрослась и в нейо вошло рассмотрение еще двух паттернов, это Singleton Pattern и Decorator Pattern. Поэтому, статья получилась весьма обширная, я разделил ейо на блоки в которых рассмотрены дополнительные шаблоны, их реализация и примеры (в том числе и на Java). Но основной частью все равно является рассмотрение работы Command Pattern-а с интеграцией его в MVC.
Введение
В этом примере мы рассмотрим один из самых распространенных шаблонов программирования - Командный - Command Pattern. Основной идеей этого "паттерна" является выделение функционала в команду, которая будет обрабатывать входящий, переданный ей объект и делегировать выполнение операции в сам объект или другие функции (команды). По сути своей Command Pattern это чистой воды принцип инкапсуляции в объектно-ориентированных языках, когда действие заменяется объектом-командой, а реализация его скрывается. Полученную команду, затем, можно использовать для модификации "подходящих" объектов сколько угодно раз, и в случае необходимости расширения, изменить функционал только в самом объекте или путем модификации команды.
понедельник, 13 июня 2011 г.
Custom Gallery ver. 0.1
Моя старая разработка на ActionScript 3.0 - полностью настраиваемая галлерея. Делал ейо еще зимой. Сейчас взялся за доработку, переработку и решил выложить бесплатную тестовую версию. Вы можете использовать ейо на любом свойом проекте, только при одном условии - мне будет известен этот проект (сайт, игра, интерактивная презентация и другие разработки на технологии Flash).
Рисунок 1. Внешний вид - базовый (картинки сторонние).
Рисунок 2. Внешний вид - развернутая картинка, название, описание, ссылка.
среда, 1 июня 2011 г.
Design Pattern - MVC
Patterns, они же "Шаблоны" или алгоритмы программирования (далее паттерны) предназначены для упрощения работы с кодом, а также организации функционала для лучшего его понимания и расширения. По сути, формирование паттерна это последняя стадия рефакторинга, на которой код принимает наиболее структурированный вид. Паттерн это всего лишь структура кода которая может быть применена к обширному кругу задач. Самым распространенным паттерном является, MVC - связка Model - View - Controller, в которой классы Model (Модель) включают в себя данные и упорядочивают их, View классы управляют отображаемыми на экране объектами, и Control классы управляют данными в модели, могут их изменять, а также обрабатывают сообщения от View, и основе этих изменений (изменений в модели) происходит обновление объектов на экране, т.е. классов View. Таким образом различный функционал, выполняющий одинаковые функции может быть объединен в блоки, которые затем будет легко расширить или изменить. Ниже можно посмотреть простейшую диаграмму того как устроен паттерн MVC.
Простейшей реализацией MVC паттерна является телевизор с пультом управления, где пульт это Controller управляющий каналами в телевизоре, внутренность телевизора представляет собой Model (данные в виде каналов), а View это экран. В данном случае экран не знает о количестве каналов и о том как они изменяются, пульту также абсолютно все равно какой экран у телевизора, а каналы не зависят от переключателя.
Подписаться на:
Сообщения (Atom)






