«HTML5 — будущее игровой индустрии». Интервью с создателями фрейморка Construct

    Том Галлен и Эшли Галлен — братья, основатели компании Scirra и создатели фреймворка Construct, с помощью которого создать игру может любой желающий, даже без знания программирования. Construct Classic распространяется бесплатно с открытыми исходниками и предназначен для создания DirectX-игр (есть SDK и поддержкой плагинов на C++). На его основе сделан условно-бесплатный Construct 2 для HTML5-игр, где в качестве движка используется Box2D. Описание см. в статье «Разработка 2D игр под Windows и HTML5 без программирования».

    Основатели компании Scirra заметили интерес аудитории Хабра к своей разработке и с готовностью ответили на вопросы хабражителей. Оригинал интервью на англ. лежит здесь на всякий случай.

    В основном, на вопросы отвечал Том Галлен, но он просил отметить, что ему помогал Эшли.

    — Когда вы решили сделать конструктор игр на HTML5 и почему? Вы сами играете в мобильные игры? Как думаете, будущее игровой индустрии — на мобильной платформе?
    — Вообще-то, Construct изначально спроектирован на экспорт в несколько форматов. Это значит, что к нему можно подключать другие модули для экспорта. Мы начали с HTML5, потому что это самая захватывающая новая технология, в которую мы абсолютно верим, и она будет самой популярной на рынке. За последние пару месяцев, когда Construct 2 дорабатывался, мы видели, что HTML5 проделал долгий путь. Наша главная цель прямо сейчас — сделать Construct 2 стандартом де-факто как игровой HTML5-редактор, не требущий программирования. Когда мы достигнем этой цели, то можем посмотреть и на другие модули экспорта, но мы думаем, что по мере развития HTML5 необходимость других форматов экспорта станет менее важной. Мы действительно считаем, что сейчас очевидно: именно HTML5 — это будущее игровой индустрии.

    Насчёт того, чтобы поиграть в мобильные игры, то да, случается! Хотя на самом деле у нас сейчас не так много времени, очень заняты, потому что мы двое — единственные сотрудники Scirra на полный рабочий день. Мы работаем над HTML5-аркадой, которую недавно выпустили и которая набирает популярность, а между собой мы пробуем и играем во все игры, которые к нам закачивают. Моя любимая до сих пор была Project Blaze Zero. Нам очень приятно видеть разные виды игр, которые создаются с помощью нашего инструмента, и видеть, что он используется точно по назначению!

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

    — Почему DirectX, а не OpenGL?
    — Construct 2 на самом деле уже использует OpenGL вместо DirectX. DirectX работает только под Windows, поэтому мы перешли на OpenGL, чтобы в будущем было проще портировать Construct 2 на другие платформы. Впрочем, у нас пока нет таких планов — мы сначала хотим закончить Windows-версию!

    Наши игры также используют WebGL (OpenGL в браузере) для супербыстрого рендеринга с аппаратным ускорением. Он в два-три раза быстрее, чем обычный 2D canvas.

    — У вас есть планы портировать Construct 2 на другие платформы, кроме Windows?
    — Construct 2 был спроектирован под Windows, потому что у Эшли здесь было больше всего опыта программирования, после работы с Construct Classic. Но мы получали положительные отклики пользователей об успешном опыте использования Construct 2 на виртуальных машинах на Mac и Linux (хотя мы официально не поддерживаем эти ОС).

    По поводу других операционных систем у нас есть некоторые многообещающие планы, которые мы, возможно, начнём воплощать в жизнь в 2012 году. Боюсь, пока что я не могут разглашать подробности. :) Мы полностью осознаём, что людям это нужно для Construct 2, мы получаем много писем на этот счёт. Но сейчас пока цель — обеспечить максимально хорошую работу Construct 2 на ПК.

    — Какой функционал вы планируете добавить?
    — Мы только что выпустили эффекты частиц (particle effects), можете посмотреть некоторые демо здесь:
    www.scirra.com/labs/particlesdemo
    www.scirra.com/labs/particlethruster

    Насколько нам известны, у нас первый непрограммистский игровой движок, который официально поддерживает эффекты частиц на HTML5. Мне не терпится увидеть, как его используют в реальных проектах, с его помощью можно создать действительно, по-настоящему красивые игры!

    — Будет ли полностью поддерживаться drag'n'drop?
    — Release 78 поддерживает в том числе официальное поведение drag'n'drop, которое должно всех удовлетворить.

    — Будет ли русская локализация?
    — Потому что мы сами англоязычные, а также из-за разных ограничений по времени проект создавался только на английском языке. Однако, когда он будет готов, мы планируем добавлять языковые XML-файлы, так что каждый желающий может перевести весь Construct 2 целиком на свой собственный язык! Мы с радостью сделаем это, но сначала нужно закончить работу над Construct 2, потому что добавление локализаций гораздо сложнее, чем кажется. Мы хорошо знаем, что российский рынок огромен и значительная часть трафика к нам идёт именно из России! Мы хотим ещё больше угодить российской аудитории, неанглоязычными странами часто пренебрегают в программном обеспечении, а мы не хотим угодить в эту простую ловушку. Ждите значительного прогресса здесь в этом году.

    — Есть ли надежда на увеличение производительности HTML5 игр?
    — Определённо! Каждый месяц HTML5 очень быстро улучшается. Например, только сегодня (на момент интервью — прим. пер.) Google выпустил Chrome для Android, это отличная новость. Я думаю, WebGL в этом году тоже, скорее всего, будет работать на большем количестве устройств. Конечно, остаётся ещё много пространства для улучшений, но HTML5 явно на пути к тому, чтобы догнать и даже превзойти другие технологии, как Flash.

    —Насколько сложные игры можно построить с помощью Construct 2? На какие жанры ориентирован конструктор?
    — Construct 2 подходит буквально для любого жанра 2D-игр! Мы ещё не встречали очень сложных игр, потому что Construct 2 ещё довольно нов, однако Construct 2 на многое способен, пока события аккуратные. :)

    — Будете ли вы добавлять поведения из предыдущего Classic Construct в Construct 2? Речь идет о таких поведениях как Line of Sight, RTS, Turret, Bone Movement.
    — Да, совершенно точно, мы надеемся, что Construct 2 полностью заменит Construct Classic. Однако, Classic делался 3-4 года командой из нескольких человек, а мы начали заново с нуля маленькой командой. Мы серьёзно намерены добавить все эти поведения, просто для нас это очень большой объём работы. Надеемся, что со временем мы всё сделаем!

    — Будет ли поддержка социальной составляющей — Facebook, Twitter и др., а также поддержка InApp-покупок, используя хотя бы тот же PayPal?
    — Мы хорошо знаем, что социальный функционал и InApp-покупок важны для профессиональных пользователей, чтобы монетизировать свои игры и помогать распространять их вирусным способом. Мы работаем над отличными проектами в этой области, которые должны появиться позже в этом году!

    — Насколько в среднем размер исполняемого файла, полученного с помощью ваших инструментов, больше (если вообще больше) исполняемых файлов? полученных обычным кодированием для одной и той же игры? Ведутся ли соответствующие оптимизационные работы? На каких языках программирования написаны предлагаемые конструкторы игр?
    — Редактор написан на C++, а игры кодируются в Javascript. Поскольку Construct 2 имеет широкий функционал, пустой проект после минификации выходит размером около 65 КБ, что меньше нынешней версии jQuery (92 КБ), так что это не должно быть проблемой. К тому же, поскольку мы внедрили многие функции, как автоматическое определение коллизий, это вполне оправдано. Construct 2 также имеет модульный дизайн, так что любые плагины или поведения, которые вы не используете, не включаются в скрипт, что помогает сэкономить место. Использование фреймворка обычно означает немного больший объём кода, но поскольку он позволяет создавать игры настолько проще и быстрее, в итоге так лучше. Мы не хотим делать его излишне раздутым, так что думаю, оставаться меньше, чем jQuery — хорошая цель.

    — Работают ли для open source методологии разработки из Agile-семейства, если учитывать, что они ориентированы все-таки на общение «лицом к лицу»? (Наконец-то есть возможность спросить человека в живом опенсорс-проекте!)
    — Мы такая маленькая команда, что на самом деле не можем комментировать разработку ПО в большом масштабе. В то же время мы действительно полагаем, что общение лицом к лицу важно для эффективной работы. Ещё одна хорошая вещь — связь по скайпу, чтобы каждый был в курсе дел. А вообще, нашу методологию разработки, вероятно, лучше всего описать как «очень много работать»!

    — Нельзя ли сделать на выходе более читаемый js-код (до минификации) для ручного допиливания?
    — Когда вы экспортируете проект в Construct 2, можно отказаться от минификации Closure Compiler. Однако, использование большого непрограммистского фреймворка вроде Construct 2 по определению обычно означает, что код на выходе не очень полезен для программистов. Это не то, с чем вам хотелось бы работать. Если вы программист, посмотрите на наш Javascript Plugin SDK, который позволяет добавить свой собственный код и интегрировать его с Construct 2 — такой способ работает гораздо лучше, чем пытаться редактировать код на выходе.

    — Что вы думаете о русских программистах? :)
    — Россия производит впечатление страны, которая очень интересуется технологиями и программированием, что здорово, это отражается в большом количестве посетителей, которые к нам приходят из России! Один из моих хороших друзей — русский, у него есть младший брат всего лишь примерно восьми лет, и когда я пришёл к ним в гости, он играл с Construct 2 и делал свои собственные игры, и задавал мне много вопросов о том, как работает система безопасности в Construct 2! Мы также очень впечатлены сервером nginx, который написал Игорь Сысоев. Русские программисты явно знают, что делают!
    Поделиться публикацией

    Похожие публикации

    Комментарии 19
      +1
      Тупиковая ветвь.
        0
        Python слишком прост, что бы быть крутым языком?
          –10
          Да.
            +5
            Ок, тогда почему сразу не сказать, что Ассемблер, С++, Java и т.д — некруто. Бинарный код, только хардкор?
            • НЛО прилетело и опубликовало эту надпись здесь
        0
        По-моему, насчет будущего игровой индустрии они немного разогнались.
          0
          Холиваров тут сейчас будет не счесть =)
          Будущее всей игровой индустрии — точно загнули, но то, что достойную нишу займет — не сомневаюсь. Небольшие игры для телефонов и не только — только в путь :-)
            +1
            Имхо, технологии подобные стеку HTML могут быть будущим игровой индустрии когда топовые игры перестанут требовать ресурсы топовых девайсов. Другими словами, когда производительность девайсов позволит внедрять дополнительные (и тяжелые) уровни абстракций без потерь производительности и низкоуровневой оптимизации.
          +6
          15 лет назад я сидел в 3Д чате(VRML), который крутился на IE5.
          10 лет назад любой школьник мог собрать себе игру на Blitz или какие там еще редакторы существовали.
          У флеш как умел все это, так все это и умеет.
          Я конечно понимаю что развитие идет по спирали, но у меня уже голова кружится.
            +7
            Имхо, Kinect — новая захватывающая технология. XNA — очень даже интересная штука. Но сказать, что «Мы начали с HTML5, потому что это самая захватывающая новая технология» — язык не поворачивается.
              +2
              HTML5 может охватить намного больше устройств, чем Kinekt с XNA. Следовательно, она является более захватывающей.
              +1
              Дождался! Спасибо за ответы и удачи вам парни!
              • НЛО прилетело и опубликовало эту надпись здесь
                  0
                  А вообще, нашу методологию разработки, вероятно, лучше всего описать как «очень много работать»!

                  Небесспорное утверждение, но мне такой подход очень нравится.
                    0
                    Я, как простой оффициант считаю, что именно Construct 2 будет прорывом и революцией. Называю это именно так, потому что прорыв будет тогда, когда любая домохозяйка сможет сделать игру и показать подругам. До сих пор игру мог создать только программист с хорошим уровнем знаний. Когда я хотел создать что-то вроде Марио — это был кошмар — какие-то OpenGL, FPS, DirectX и много других страшных слов для просто человека. И создание игр считалось неким достоинством и мастерством программистов и дизайнеров. Это было то, что неподвластно простым смертным. Сейчас же всё меняется и это просто фантастика!

                    Construct 2 — это прорыв и революция. Не бойтесь создатели игр, никто не отнимет лавры. Эта программа будет прорывом не в технологии, а в методе и подходе создания игр.

                    П.С.: Я с женой без знаний всех этих магических кодов и технических данных за 2 недели создали один уровень нашей новой игры. И вы знаете, впервые за всё время я чувствую, что мы можем постараться и попасть в App Store. Это же классно, что у нас теперь равные шансы с программистами!
                      0
                      Конструкторы игр были всегда. Вы можете вспомнить хотя бы одну игру созданную с помощью такого конструктора?
                      • НЛО прилетело и опубликовало эту надпись здесь
                      +2
                      Из этой области знаю мало. Construct 2 это первая программа, в которой можно создавать HTML игры. Здесь даже не вопрос в производительности и мега-крутости, а в доступности и простоте использования. А это очень важно, особенно для простых людей, которым иногда хочется окунуться в мир компьютеров. Моей бабушке 68 лет, зато она отлично управляется с компьютером — читает форумы и переписывается, смотрит фильмы в интернете, находит друзей там, даже в NFS играла :) И вот для такого человека освоить Construct 2 будет не просто, но хотябы доступно.
                        0
                        Респект Бабушке)

                      Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                      Самое читаемое