• Возрождение ActionScript2.0 c помощью JavaScript

      И вот уже март 2017 года, Adobe Flash Player уже не запускается по умолчанию без явных действий пользователя, по крайней мере в Google Chrome для автоматического запуска контента Adobe Flash Player необходимо выполнить следующии инструкции.Таким образом, акцент веб-разработки все больше и больше смещается в сторону использования JavaStript библиотек, предоставлющих доступ к HTML5 Canvas.

      Одним из удобных способов разработки HTML5 Canvas, заместо Flash, является Adobe Animate CC 2017, который подерживает следущие типы проектов:



      Из списка видно, что подержка ActionScript2.0 полностью исключена из текущей версии среды разработки, а также нет возможности перенести имеющийся AS2/3 код в html5 Canvas.
      Единственное, что можно сделать в Adobe Animate CC 2017 — это преобразовать графическое содержимое Flash проекта и все входящие в него компоненты в HTML5 проект.
      Для этого достаточно открыть Flash проект и выбрать из меню Commands пункт Convert To Other Documents Format после чего откроется диалоговое окно с предложением выбора типа проекта в который происходит преобразование. По умолчанию используется HTML5 Canvas, его и будем использовать в наших новых проектах.


      Читать дальше →
    • Adobe AIR + Starling + растеризация векторной графики



      Прошло некоторое время с тех пор, как я начал делать игры для iOS и Android на Adobe AIR. Сегодня хочу поделиться способом создания игр под различные разрешения экранов — этот подход я успешно применяю в своих проектах.
      Читать дальше →
    • Использование потенциальных полей в сценарии стратегии реального времени

      • Перевод
      Реализация поведения юнитов в RTS играх может стать серьезной проблемой. Компьютер, зачастую, контролирует огромное количество юнитов, в том числе и принадлежащих игроку, которые должны передвигаться в большом динамическом мире, попутно избегая столкновения друг с другом, выискивая врагов, защищая собственные базы и координируя атаки для истребления противника. Стратегии реального времени работают в реальном времени, что делает довольно сложным слежение за планированием действий и навигацией.

      Этот урок описывает метод планирования течения игры и навигации юнитов, который использует многоагентные потенциальные поля. Он основан на работах под номерами [1, 2, 3]. (Смотри в конце статьи ссылки на используемые материалы)



      Читать дальше →
    • Структура данных проекта OpenStreetMap, заглянем под юбку сервису

      Пролог



      Проект OpenStreetMap (OSM) открытых геоинформационных данных под свободной лицензией CC-BY-SA (а в скором времени под Open Database Licence) известен достаточно широко, что бы не тратить время на его подробное представление. Главной особенностью проекта и его основным преимуществом по сравнению с любыми другими аналогами являлся принцип полностью открытых географических данных, которые могут быть использованы кем угодно и и как угодно (в рамках лицензии CC-BY-SA) и могут свободно дополняться и уточняться любым участником проекта. Как и любые другие данные, географические данные точно так же подлежат структурированию при хранении и обработке. В данной статье я постараюсь описать основные части структуры данных OSM остановившись больше на принятых типах данных и представлении их в пространственном виде. Работая постоянно с данными проекта OSM очень часто приходится уточнять или пояснять не которые базовые аспекты, поэтому возникла необходимость кратко изложить их в виде одного текста.
      Читать дальше →
    • Сертификация в Apple Developer Center простым и понятным языком

      Кратко о главном


      В Apple Developer Center с незапамятных времен применяется довольно мудреная система сертификации ваших приложений на каждом из ключевых этапов — разработка, тестирование и публикация.

      Зачастую при первом погружении в эту систему у начинающих (и не только) разработчиков возникают серьезные проблемы с пониманием того, как функционирует Apple Developer Center (будем называть его «девцентр» для простоты). В результате, мне в процессе профессиональной деятельности не раз приходилось наблюдать на новых местах работы огромные свалки из профилей и сертификатов в девцентре, в результате чего приходилось приступать к «разбору завалов».

      При этом, в сети довольно не такой большой выбор материалов на эту тему. Конечно, в официальной документации Apple все хорошо структурировано и очень подробно описано, но зачастую просто не хватает времени на изучение такого количества материала. Как правило, хочется быстро понять, что именно и в каком порядке нужно сделать для корректной работы приложения на этапах разработки, тестирования и при публикации его в магазин App Store. В русском же сообществе подобных материалов, собранных в одном месте и в удобном доступе, я не видел вовсе, поэтому и решил написать эту статью. Для всех интересующихся — добро пожаловать под кат.
      Читать дальше →
    • Секреты тестирования Ethernet каналов

        Добрый день, дорогие друзья. Несколько лет работала сисадмином в некотором количестве корпоративных и домашних провайдеров Санкт-Петербурга и по сей день часто сталкиваюсь с тем, что покупая оборудование операторы смотрят больше на цену и описание функций, чем на реальные показатели, о них поставщики обычно ничего не пишут, в следствии чего вместо одного коммутатора приходится устанавливать еще и еще, а качество связи лучше может и не станет. Про существования понятия SLA(Service Level Agreement) тоже не все операторы в курсе, по этой причине собрала достоверную информацию по тестированию сетей и оборудования, и готова предоставить её вашему вниманию.



        Читаем
      • 6 секретов Bitbucket

        • Перевод
        Один из принципов дизайна в Atlassian — лаконичность. В ходе эволюции UX некоторые непопулярные действия, расчитанные на опытных пользователей, были спрятаны в выпадающих списках или за горячими клавишами. Там они ждут предприимчивого пользователя, который случайно наткнётся на них благодаря случайному нажатию клавиш или клику мышки (ну, или заглянет в руководство). Вот шесть моих любимых трюков Bitbucket Cloud, о которых вы, возможно, никогда не слышали:

        Омнибар


        Омнибар в Bitbucket — это строка быстрого доступа к действиям, похожая на ⇧⇧ в средах разработки JetBrains или ⌘+P в Sublime Text. Запустить омнибар можно на любой странице, нажав клавишу точки.

        По умолчанию, он покажет набор действий, соответствующих текущему контексту:
        Omnibar
        Читать дальше →
      • Трансляция конференций и вебинаров с использованием протокола SIP

        Статья посвящена возможным вариантам организации взаимодействия между программным обеспечением для интеграции между сетями доставки контента и источниками контента с использованием протокола SIP.

        При проведении корпоративных обучающих вебинаров, конференций или общественных собраний, митингов используются существующие сервисы и решения с поддержкой протокола SIP. Однако у таких сервисов, как правило, отсутствуют решения, направленные на массовое вещание (трансляции) в сети Интернет. Существующие сервисы, такие как Zoom.us, InterCall, Twilio, Vidyo, iMeet и так далее, а также другие программно-аппаратные решения и продукты других производителей — не предоставляют функционала конвертации конференции, организованной с использованием протокола SIP, в массовую трансляцию в сети Интернет.

        Общая схема сервисов митингов в Интернете


        Мы поставили перед собой цель определиться, какое из выбранных нами решений (под которым мы понимаем сочетание программных продуктов и сервисов), позволит с минимальными трудозатратами расширить аудиторию мероприятия, как это показанно на схеме выше.

        Ниже будут рассмотрены возможные варианты интеграции между двумя серверами потокового видео Adobe Media Server и Wowza Streaming Engine, сервисами Twilio, Zoom.us, Vidyo, Lifesize, Blue Jeans, iMeet, софтфоном CounterPath Bria 4 и платформами Flashphoner Web Call Server 4 в различных сочетаниях.
        Читать дальше →
      • Удачная модель ветвления для Git

        • Перевод
        Перевод статьи Vincent Driessen: A successful Git branching model

        В этой статье я представляю модель разработки, которую использую для всех моих проектов (как рабочих, так и частных) уже в течение года, и которая показала себя с хорошей стороны. Я давно собирался написать о ней, но до сих пор не находил свободного времени. Не буду рассказывать обо всех деталях проекта, коснусь лишь стратегии ветвления и управления релизами.



        В качестве инструмента управления версиями всего исходного кода она использует Git.

        Читать дальше →
      • Там, где живет Единорог Пикси. Indie-повествование

        Всегда с любопытством читаю очередную историю от инди-разработчиков. О том, как зарождалась идея, какой путь был пройден и что в итоге получилось. Хочу поделиться своей историей создания очень простой, но динамичной игры. Так как будет освещена и техническая часть, это может быть интересно для людей которые хотят сделать свою игру, но не определились с платформой.


        Читать дальше →
        • +13
        • 9,1k
        • 9
      • Компьютер скруткой — это очень просто



          Наигравшись вдоволь с построением компьютеров из моего детства в самых разных вариантах, с использованием как тогдашних, так и современных технологий, я решил, что пришло время переключиться на что-то более существенное. Первым шагом, дабы потом было поменьше соблазнов построить еще что-нибудь, героически взялся за расчистку рабочего места с целью дарения накопившегося добра каким-нибудь юным техникам. Однако, как это часто бывает, даже сам процесс разбора завалов оказался довольно увлекательным — нашлось много интересных штучек, о которых я уже и забыл (или вообще не помнил). В частности, обнаружилось, что у меня намного больше инструментов и расходников для монтажа накруткой (wire wrapping), чем я думал.

          Хотя в свое время я потратил целых пять минут на опробование данной технологии, но у меня что-то не пошло (кривизна рук оказалась больше допустимого), и все было отодвинуто в дальний ящик. Мне крайне не нравится сдаваться в любых делах — всегда пытаюсь доводить все если не до полного завершения, то до осознания, что точно могу сделать, если уж действительно захочу. Поэтому решил осчастливить юных техников попозже, а перед этим все-таки собрать какую-нибудь штуковину, используя монтаж накруткой.

          Долго насчет штуковины для сборки не думал — оставался еще один древний компьютер, до которого ни в детстве, ни сейчас руки так и не дошли. Это был «Специалист», разработанный в 1985 году и опубликованный в журнале «Моделист-Конструктор» в 1987. Так как про этот компьютер (впрочем, как об остальных подобных) есть масса информации, я не буду вдаваться в его особенности, остановлюсь просто на технологии монтажа накруткой и своих впечатлениях о ней.

          Замечание — в статье рассказывается о практически мертвой технологии, нет никаких полезных или интересных know how и тому подобных вещей, полностью отсутствуют великие откровения, поэтому ее стоит читать только при отсутствии у вас в данный момент более полезного/интересного занятия, либо же ярым любителям компьютерной некрофилии.
          Читать дальше →
        • Ещё раз про семь основных методологий разработки

            Разработка программного продукта знает много достойных методологий — иначе говоря, устоявшихся best practices. Выбор зависит от специфики проекта, системы бюджетирования, субъективных предпочтений и даже темперамента руководителя. В статье описаны методологии, с которыми мы регулярно сталкиваемся в Эдисоне.


            Читать дальше →
          • Уязвимости веб-приложений: ситуация не улучшается



              В последние годы крупные организации все активнее используют разнообразные веб-приложения — официальные сайты компаний и системы управления ресурсами предприятий (ERP), электронные торговые площадки, системы дистанционного банковского обслуживания, порталы государственных услуг. Корпоративные приложения на основе специализированного клиентского ПО все чаще заменяются веб-версиями и облачными сервисами. Поэтому неудивительно, что именно уязвимости веб-приложений становятся одним из основных векторов атак на корпоративные информационные системы. В данной статье представлена статистика по наиболее распространенным уязвимостям, собранная экспертами Positive Technologies в процессе работ по анализу защищенности веб-приложений в 2014 году.
              Читать дальше →
            • Разрабатываем систему мониторинга на 55000 видео-потоков RTP

                Добрый день!

                Недавно прочитал очень интересную статью про обработку 50 гигабит/с на сервере и вспомнил, что у меня в черновиках лежит статья про то, как мы год назад разрабатывали систему мониторинга видео-потоков с общим объёмом трафика до 100 Гбит/с. Ещё раз “вычитал” её и решил представить на суд разработчиков. Статья больше посвящена анализу протоколов и поиску архитектурного решения, нежели тюнингу всевозможных подсистем linux’а, потому что мы пошли по пути распределения нагрузки между сервером и сетевыми пробниками, которые подключаются к транспортным потокам 10 Gigabit Ethernet.



                Если интересно, как мы смогли измерить характеристики сетевых потоков от 55 тысяч видео-камер, прошу под кат.

                Читать дальше →
              • Как написать диздок



                  Запрос «как написать диздок», заданный в любой поисковик, даёт немало ответов, представляющих собой как перевод западных статей, так и авторские размышления на эту тему из России, или даже дизайн проекта «Курочка Ряба». В воображении читателя предстает большой единый документ, описывающий идею и геймплей игры с перечислением всех ее фич. Возможно, читатель однажды приходит с такими идеями работать геймдизайнером в крупную российскую или западную компанию, на крупный проект… И обнаруживает, что таких документов больше не существует.
                  Читать дальше →
                • Путеводитель по реализации 2Д платформеров (начало)

                  • Перевод
                  Так как ранее я был разочарован количеством информации по этому вопросу, я решил восполнить этот пробел, собрав разные виды реализации 2Д платформеров, описав их сильные и слабые стороны и порассуждав над деталями реализации.

                  Моей целью было создать исчерпывающий и понятный путеводитель по реализации 2Д платформеров.



                  Оговорка: часть информации в этой статье получена путём реверсивного проектирования поведения игры, а не из исходного кода или от программистов. Возможно, что на самом деле игра реализована не так, как описано в статье, а просто ведёт себя схожим образом. Также стоит отметить, что размеры сетки тайлов для игровой логики могут отличаться от размеров графических тайлов.

                  Четыре решения


                  Мне приходит на ум четыре основных варианта решений при создании платформера. В рамках этой статьи будут рассмотрены все четыре, но из-за большого объема статья поделена на 2 части (прим. пер).
                  Читать дальше →
                • Передаем больше 40 килобайт по LocalConnection

                  С ростом Flash проекта состоящего из раздельных .swf, соединенных между собой через LocalConnection, может возрасти потребность в размерах передаваемых данных. К примеру, это может быть обмен данными присланных сообщений между игрой и отдельным приложением сообщений.

                  Проблемы начинаются когда передаваемых данных становится больше 40 Кб, появляется ошибка и приложение перестает нормально работать.

                  Напомню, что объем данных, которые можно передать как параметры методом send, ограничен 40 килобайтами.

                  Есть несколько выходов из такой ситуации:
                  1. Использовать Local Shared Objects;
                  2. Передавать данные с помощью JavaScript;
                  3. Передавать данные по LocalConnection разбив на части.


                  Первые два пункта требуют больших изменений чем последний. Поэтому с минимальными затратами реализуем передачу данных по частям которые будут меньше 40 Кб.
                  Читать дальше →
                • Памятка начинающему фотографу

                  • Tutorial
                  Хабраюзер nicothin сделал памятку начинающим фотографам — короткую шпаргалку, материал которой описывает тот крайний минимум, который необходим каждому, кто собирается снимать сознательно. Вкратце опишу что это и зачем.
                  Читать дальше →
                • Исследование, которое может показать, что Вселенная это компьютерная симуляция

                  • Перевод
                  Ученые говорят, что если Вселенная продукт симуляции, то мы увидим подсказки в высокоэнергетических космических лучах.
                  Одна из самых взлелеянных идей в современной физике, квантовая хромодинамика, теория которая описывает сильное взаимодействие, как она связывает кварки и глюоны в протоны и нейтроны. Это основание вселенной.

                  Таким образом, интересная цель симулировать квантовую хромодинамику на компьютере, чтобы увидеть что получится на макро уровне. Моделирование на таком уровне должно быть более или менее эквивалентно симуляции самой вселенной.

                  Конечно, есть одна или две проблемы на этом пути. Квантовая хромодинамика мозгосносяще сложна и оперирует вычислениями на планковских масштабах. Поэтому даже используя самые мощные суперкомпьютеры мира, физики могут симулировать лишь маленькие кусочки космоса размером в несколько фемтометров (10^-15).

                  Звучит не впечатляюще, но важно, что такая симуляция практически неотличима от происходящего в реальности (по крайней мере насколько мы это понимаем).

                  Не так сложно себе представить, что прогресс подобный закону Мура, позволит физикам симулировать намного большие участки вселенной. Участки размером всего в несколько микрометров в диаметре могут вместить в себя полную работу человеческой клетки.

                  И снова, работа симулируемой клетки будет неотличима от реальной.

                  Подобные размышления приводят к тому, что возможно наша вселенная запущена на супермощном компьютере. А если это так, есть ли возможность это проверить?

                  Сегодня мы получили в некотором роде ответ от Силаса Бине из университета Бонна в Германии, и его коллег. Они говорят, что есть возможность найти проявления симуляции нашей вселенной, по крайней мере в некоторых сценариях.

                  Для начала небольшое введение. Проблема любой симуляции в том, что законы физики, которые, по сути, непрерывны, в симуляции накладываются на дискретную трехмерную решетку, состояние которой изменяется во времени.

                  Бине и коллеги поставили вопрос, приведут ли ограничения решетки к какого-либо рода ограничениям на физические процессы нашей вселенной. В частности они проверили высокоэнергетические процессы, которые затрагивают меньшие части пространства пока их энергия нарастает.

                  Читать дальше →