• Если вы создаете графический инструмент
• Вам надо будет реализовать пользовательский ин-
терфейс
. Кнопки, клики, перетаскивания и тому
подобное. Некоторым не нравится, но я люблю гра-
фический интерфейс. Если вы решите пойти этим
путем, воспринимайте его как ключ к успеху про-
екта, а не как неприятную обязанность.
Даже малейшее усилие сделает инструмент луч-
ше и приятнее в использовании, что напрямую
влияет на качество контента в вашей игре. Если
вы взглянете на многие из ваших любимых игр,
то поймете: зачастую секретом успеха были удоб-
ные инструменты разработки.
• Меньше случаев ошибок
. Поскольку пользователь
создает поведение постепенно, шаг за шагом, ваше
приложение может указывать на ошибки сразу,
в момент их возникновения.
Текстовые языки не видят
никакого
пользова-
тельского контента, пока те не загрузят файл цели-
ком. В итоге процесс предотвращения и обработки
ошибок оказывается сложнее.
• Сложнее реализовать переносимость
. Преимуще-
ство текстовых компиляторов в том, что текст уни-
версален. Простой компилятор читает на входе
один файл, а вывод записывает в другой. Перенос
между операционными системами тривиален.
Когда вы создаете графический интерфейс, вам
надо выбрать среду разработки и много других ве-
щей, специфичных для конкретной ОС. Есть и плат-
формонезависимые наборы инструментов для
Если не брать в расчет
символы окончания
строки. И кодировки.
создания графического интерфейса, но они в рав-
ной степени чужеродны для каждой из операцион-
ных систем — такова цена.
Смотрите также
• Близкий родственник паттерна Байт-код — пат-
терн «Банды четырех» Интерпретатор (Interpreter).
Они предоставляют возможность выражать слож-
ное поведение с помощью данных. По факту вы
всегда будете использовать
оба
. Инструмент, кото-
рый вы используете для генерации байт-кода, бу-
дет содержать дерево объектов, представляющее
код. Вуаля — перед вами паттерн Интерпретатор
(Interpreter).
• Для превращения данных в байт-код вам придется
рекурсивно проходить по дереву, точно так же как
это происходит при интерпретации с использова-
нием паттерна Интерпретатор (Interpreter).
Един-
ственным
отличием является исчезновение мгно-
венного исполнения элементарных инструкций: вы
преобразуете их в байт-код, чтобы выполнить позже.
• Язык программирования Lua — самый распростра-
ненный язык сценариев, используемый в разработ-
ке игр. Он реализуется внутри, как виртуальная ма-
шина на основе регистров.
• Kismet — это графический скриптовый инструмент,
встроенный в UnrealEd, редактор движка Unreal*.
• Мой собственный небольшой язык сценариев,
Wren, простая реализация стекового интерпрета-
тора байт-кода.
* Эта информация актуальна для старых версий движка, но начиная
с Unreal Engine 4 Kismet заменили на новый визуальный скрип-
товый язык Blueprint. —
Прим. науч. ред.
Do'stlaringiz bilan baham: |