Construct Classic

Construct Classic
Логотип программы Construct Classic
Скриншот программы Construct Classic
Пользовательский интерфейс Construct
Тип
Разработчик Scirra
Написана на C++
Операционная система Microsoft Windows
Языки интерфейса английский
Первый выпуск 27 октября 2007 года
Последняя версия r2 (5 февраля 2012 года)
Репозиторий sourceforge.net/p/constr…
Лицензия GPLv2
Сайт scirra.com/construct-cla…

Construct Classic (ранее Scirra Construct) — конструктор двумерных и трехмерных игр с открытым исходным кодом для Windows (использует DirectX 9).

Construct Classic (как и кроссплатформенный Game Editor) являются качественными open source альтернативами популярному проприетарному конструктору игр Game Maker.

Программирование

[править | править код]

Подобно другим продуктам аналогичного назначения, описание игрового мира в Construct Classic представляет собой совокупность объектов, с которыми можно работать в WYSIWYG-режиме.

События и действия

[править | править код]

Как и в других аналогичных продуктах, в Construct Classic имеется система событий (англ. events) и связанных с ними действий (англ. actions).

Однако, в отличие от таких конструкторов игр, как Game Maker, Game Editor или Scratch, в которых логика игры программируется посредством определения реакции на события (см. событийно-ориентированное программирование), здесь используются так называемые таблицы событий (англ. event sheets)[1][2], являющиеся, по сути, представлением диаграммы состояний, глобальная, общая для всей игры, а также связанные с игровыми уровнями (англ. layouts)[3]. Редактирование таблиц событий происходит в режиме близком в drag-n-drop, посредством выбора из списка событий и действий.

Аналогом классического объектно-ориентированного подхода, управляемого событиями, в Construct Classic является механизм поведений (англ. behaviors). Каждому объекту можно назначить одно, или несколько поведений (в терминах ООП объект наследует поведение).

Возможность определения поведения через механизм действий, или на встроенном интерпретаторе Python отсутствует, дополнительное поведение может быть написано на C++ и подключено как плагин[4][5][6]..

Имеется большой набор готовых плагинов[7].

С помощью поведения Bone Behavior можно создавать подвижные игровые персонажи, использующие скелетную анимацию[8].

Шейдеры и спецэффекты

[править | править код]

Используя технологию DirectX 9, Construct Classic имеет поддержку множества специальных эффектов, позволяет подключать собственные пиксельные шейдеры на HLSL[9].

Уроки и исходники

[править | править код]

На официальном русскоязычном сайте и неофициальных фан-сайтах достаточно обучающих уроков и исходников в виде .cap файла. Также в самом инсталляторе Construct Classic встроено несколько примеров (демонстрация физики, арканоид на двоих, шаблон для TBS, шаблон для RTS), которые вы можете дополнить или использовать для своих игр.

С помощью поведений и событий можно писать игры не зная ни одного языка программирования, в режиме drag-and-drop. Альтернативой для более опытных пользователей Construct является написание Python-скриптов.

При разработке Construct Classic не использовался Юникод, поэтому перевод как самой программы, так и созданных на ней игр является затруднительным[10]. Во второй же версии программы (Construct 2) Юникод присутствует.

История создания и условия распространения

[править | править код]

Construct был разработан группой студентов. Основные члены команды Scirra до этого писали расширения для Multimedia Fusion от Clickteam. Работая там, они заинтересовались созданием своего собственного игрового конструктора[11]. Первой опубликованной версией стал Construct 0.8, выпущенный 27 октября 2007 года.

Construct Classic свободно доступен, в соответствии с условиями GPL версии 2. Он написан на C++, с использованием Microsoft Visual Studio. В качестве физического движка использует Box2D.

Хотя лицензия самого конструктора Construct Classic — GPLv2, его Runtime библиотека распространяется под пермиссивной лицензией[12]. Созданные с его помощью игры (и, возможно, неигровые приложения) можно продавать, не раскрывая их исходный код[13][14].

Начиная с 2011 года Scirra сосредоточила усилия на разработке Construct 2, похожего на Construct Classic коммерческого конструктора HTML 5 игр. Хотя по функционалу Construct Classic на данный момент уступает коммерческим версиям, на нём продолжают делать несложные игровые сцены, разработка Construct Classic передана сообществу[15].

Примечания

[править | править код]
  1. Event sheet based design. Дата обращения: 1 июля 2011. Архивировано 14 июля 2014 года.
  2. Event Sheets Архивировано 20 марта 2011 года. в wiki-документации
  3. Layouts Архивировано 20 марта 2011 года.
  4. Plugins & Behaviors Архивировано 1 января 2011 года.
  5. Construct — Plugin & Behavior SDK Архивировано 14 сентября 2010 года.
  6. Перевод официальной документации Wiki по SDK. Дата обращения: 3 ноября 2010. Архивировано из оригинала 15 июля 2014 года.
  7. Community Plugins Архивировано 22 марта 2011 года.
  8. Bone Behavior (недоступная ссылка)
  9. Construct — Effects & Rendering Архивировано 1 января 2011 года.
  10. faq по Construct Classic и Construct 2  (недоступная ссылка)
  11. Эксклюзивное интервью с разработчиком программы Construct — Ashley Gullen. Дата обращения: 3 ноября 2010. Архивировано 13 января 2011 года.
  12. Ссылка на один из исходных файлов Runtime библиотеки с описанием лицензии
  13. FAQ по Construct. Дата обращения: 3 ноября 2010. Архивировано 14 июля 2014 года.
  14. Commercial creations in Construct Архивировано 6 июня 2011 года.
  15. Текст на домашней странице Архивная копия от 12 августа 2014 на Wayback Machine гласит: Scirra no longer develops Construct Classic, in order to focus on Construct 2. Construct Classic is, however, open-source, and we’ve handed development over to the community. Several volunteers have been making maintenance changes. Scirra now act as an incubator for the project.

Литература

[править | править код]
  • Entry Level 2D Game Creation Using Construct: Practical Tips & Techniques. Volume ONE. — HobbyPress, 2010. — P. 144. — ISBN 1453713360.