Научная статья на тему 'Разработка обучающих компьютерных игр: как сохранить баланс между обучающей и игровой компонентой?'

Разработка обучающих компьютерных игр: как сохранить баланс между обучающей и игровой компонентой? Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
6186
1269
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
БУЧАЮЩИЕ КОМПЬЮТЕРНЫЕ ИГРЫ / МОДЕЛЬ СЦЕНАРИЯ / КОМБИНИРОВАННЫЙ СЦЕНАРИЙ / СРЕДCТВА РАЗРАБОТКИ ОБУЧАЮЩИХ КОМПЬЮТЕРНЫХ ИГР / ОБЪЕКТНО-ОРИЕНТИРОВАННАЯ ПАРАДИГМА / ЯЗЫК ПРОГРАММИРОВАНИЯ С# / PROGRAMMING LANGUAGE C# / EDUCATIONAL COMPUTER GAMES / SCRIPT MODEL / COMBINED SCRIPT / EDUCATIONAL GAMES DEVELOPMENT TOOLKIT / OBJECT-ORIENTED PARADIGM

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Шабалина Ольга Аркадьевна

В работе рассмотрены современные подходы к разработке обучающих компьютерных игр. Показаны возможности и ограничения существующих моделей сценариев, используемых в обучающих играх. Описана модель комбинированного сценария, позволяющая достигать обучающих целей и сохранять при этом баланс между обучающей и игровой компонентой, и способ ее применения в ролевых обучающих играх. Представлен комплекс инструментальных средств, включающий программное ядро обучающей игры и специализированную среду разработки, предназначенный для разработки обучающих игр, реализующих модель комбинированного сценария. Описана обучающая ролевая игра «Камми», в которой реализована разработанная модель.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

In this paper approaches to educational games development are observed. Capabilities and limitations of existing script models using in educational games development are shown. A combined script model that allows reaching educational goals and keeping the balance between learning and gaming components is described. An educational games development toolkit including a game engine and a specialized IDE is presented. Implementation of the combined script model in a role-playing game “Kammy” is shown.

Текст научной работы на тему «Разработка обучающих компьютерных игр: как сохранить баланс между обучающей и игровой компонентой?»

Разработка обучающих компьютерных игр: как сохранить баланс между обучающей и игровой компонентой?

Шабалина Ольга Аркадьевна к.т.н., доцент кафедры «Системы автоматизированного проектирования и поискового

конструирования» (САПР и ПК),

Волгоградский государственный технический университет, пр. им. Ленина, 28, г. Волгоград, 400005, (+7919)7958943

O.A.Shabalina@gmail.com

Аннотация

В работе рассмотрены современные подходы к разработке обучающих компьютерных игр. Показаны возможности и ограничения существующих моделей сценариев, используемых в обучающих играх. Описана модель комбинированного сценария, позволяющая достигать обучающих целей и сохранять при этом баланс между обучающей и игровой компонентой, и способ ее применения в ролевых обучающих играх. Представлен комплекс инструментальных средств, включающий программное ядро обучающей игры и специализированную среду разработки, предназначенный для разработки обучающих игр, реализующих модель комбинированного сценария. Описана обучающая ролевая игра «Камми», в которой реализована разработанная модель.

In this paper approaches to educational games development are observed. Capabilities and limitations of existing script models using in educational games development are shown. A combined script model that allows reaching educational goals and keeping the balance between learning and gaming components is described. An educational games development toolkit including a game engine and a specialized IDE is presented. Implementation of the combined script model in a role-playing game “Kammy” is shown.

Ключевые слова

Обучающие компьютерные игры, модель сценария, комбинированный сценарий, средства разработки обучающих компьютерных игр, объектноориентированная парадигма, язык программирования С#.

Educational computer games, script model, combined script, educational games development toolkit, object-oriented paradigm, Programming language C#.

Введение

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

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

с игровым процессом определяется способом взаимодействия в игре игровых и обучающих действий, т.е. способом интеграции обучающего курса в игровой сценарий.

В существующих обучающих системах используются различные способы объединения обучающих и игровых сценариев. С точки зрения соотношения обучающей или игровой компоненты выделяют обучающие системы с элементами игры и игры с элементами обучения. Обучающие системы с элементами игры реализуют принцип «edutainment» - когда обучающий контент помещается в игроподобную (game-like) среду. Исследования [2,3,4] показывают, что такие игры сильно проигрывают в мотивации, и в итоге не гарантируют достижения цели обучения.

В качестве обучающих игр также используются компьютерные игры, по преимуществу игры-стратегии, такие как, например, SimCity [5] или_ Civilization [6], которые разрабатывались как коммерческие продукты и не предназначались для обучения. Однако модели предметной области, реализованные в этих играх, настолько богаты и реалистичны, что игры имеют самостоятельную обучающую ценность [7,8].

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

Анализ подходов к интеграции процесса обучения в игру

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

Имитационные модели реализуется в играх-симуляторах (simulator), которые моделируют реальные условия профессиональной деятельности специалиста в некоторой области знаний. К этому классу игр относятся симуляторы управления различными транспортными средствами, медицинские, тактические, социальные и бизнес-симуляторы. Разработка симуляторов включает разработку реалистичной модели процесса в соответствующей предметной области, составляющей предмет изучения в игре [9,10). Например, разработка авиа-симулятора (Microsoft® Flight Simulator X [11], X-Plane [12] и др.) требует создания физической (симуляция параметров самолёта и его взаимодействия со средой) и графической (виртуальная или реальная машина пилота) моделей. Игровая составляющая в таких играх реализуется с использованием богатых графических и звуковых возможностей современных средств вычислительной техники для компьютерной интерпретации реальных процессов.

Ситуационные модели используются играх, в которых реализовано обучение на примерах (case study-подход) [14,15] с использованием возможностей

компьютерных игр (организация диалогов, визуализация персонажей, событий и среды обитания и т.д.). Эти игры, как правило, реализуются в ролевом (role-playing) или приключенческом (adventure) жанре. Игрок помещается в виртуальную среду, созданную на основе описаний ситуаций из реальной действительности, действует в соответствии с заложенным в игру сценарием (планом действий), ведет предварительно предусмотренные в игре диалоги, выбирает свои решения из

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

В таких играх, как паззлы (puzzle games), игры на сопоставление объектов (matching games), различные варианты игр на тренировку памяти (memory games, brain training games) используется формально-логическая модель предметной области. Такие игры основываются на проверке соответствия вводимых игроком данных заданным в системе паттернам. Введенные данные интерпретируются как высказывания на определенном языке, заданном грамматикой, формальнологическая модель используется для проверки истинности высказываний.

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

Имитационная модель

Формально-логическая Ситуационная модель модель

Рис. 1. Возможности различных моделей предметной области с точки зрения организации взаимодействия игровой и обучающей компонент

Анализ подходов к интеграции обучающих и игровых компонентов позволяет выделить четыре способа организации сценариев в обучающих играх. Под сценарием обучающей игры понимают набор взаимосвязанных элементов сценария, представляющих игровую и обучающую компоненты. Доминирование в игре обучающей или игровой компоненты определяет тип сценария, реализованного в игре (Рис. 2).

Обучение

LA

LA

LA

LA

LA

1)

Игра

LA

A

у r

■> LA

LA

-> LA —► LA

GA GA GA

- игровое действие (Game Activity)

■ обучающее действие (Learning Activity)

2)

3)

GA -> GA * GA -> GA ► GA 1 1

ф Ф ф ! 4)

LA LA LA 1 1

1) обучающий сценарий

2) обучающий сценарий с элементами игры

3) независимые игровой и обучающий сценарии

4) игровой сценарий с элементами обучения

Рис. 2. Модели сценариев в обучающих играх

Типичными примерами игр, в которых реализован только обучающий сценарий, являются игры-симуляторы. Иногда такие игры выделяют в отдельную категорию обучающих систем и не относят к категории игр [13]. Применение в обучающих системах различных игровых элементов определяет принадлежность таких систем к обучающим играм второй группы. Третий способ организации сценария основан на разработке обучающих игр, в которых существуют два непересекающихся сценария, и, соответственно, две непересекающиеся цели - цель обучения и игровая цель. Такой способ организации сохраняет игровую привлекательность, однако не гарантирует достижения обучающей цели. Интеграция отдельных обучающих действий в игровой сценарий позволяет усилить обучающий эффект, однако цель обучения в явном виде также не определяется.

Модель комбинированного сценария и ее интерпретация в игровом контексте

Для обеспечения одновременного достижения игровой цели и цели обучения необходимо, чтобы игровые и обучающие задания выполнялись одновременно, т.е. были объединены в одно действие. Это позволяет обеспечивать баланс игровой и обучающей компоненты и сохранять, таким образом, целостность восприятия игры и достигать цели обучения в результате достижения игровой цели. В этом случае игрок будет стремиться к достижению игровой цели, но при этом он неявно будет стремиться к достижению цели обучения, т.е. игровая цель будет достигаться как цель обучения (принцип qui pro quo).

Объединение игровых и обучающих заданий приводит к слиянию игрового и обучающего сценариев в единый комбинированный сценарий, показанный на рисунке 3).

GA,—

■ игровое и обучающее действия, выполняемые одновременно

Рис. 3. Модель комбинированного сценария

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

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

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

Рис. 4. Интерпретация компонентов обучающего курса в игровом контексте

Предложенный способ интеграции предметной области в игровой основан на симуляционном подходе. Но так как виртуальный мир представляет собой модель предметной области, не имеющую оригинала в действительности, то такая модель названа симулякрационной моделью (Simulacrum model). Способ моделирования, при котором создается новый «виртуальный» объект (симулякр, Simulacres), для которого исходный объект является моделью, предложено назвать симулякрационным моделированием. Для обеспечения возможности внешнего представления (визуализации) симулякрационная модель может наделяться дополнительными свойствами, не присущими объекту моделирования. В этом отличие симулякрационного моделировании от моделирования реально

существующих предметов и явлений, при котором модель является упрощенным сущностным описанием объекта.

Интерпретация обучающих действий игрока в игровом контексте реализуется через отождествление игрока с игровым персонажем и погружение его в этот новый для него мир. Игры, в которых игрока представляет его персонаж, относят к жанру ролевых компьютерных игр (role playing games, RPG). Основная особенность этого жанра заключается в том, что игрок, развивая навыки своего персонажа в процессе игры, может эффективнее справляться с задачами игрового мира. Более того, развитие персонажа и исследование игрового мира может являться главной целью ролевой игры.

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

Состояние игрока в процессе обучения в игре интерпретируется как игровой опыт его персонажа. Действия игрока по освоению пространства знаний интерпретируются как игровые действия. Процесс обучения представляет собой жизнь персонажа в виртуальном мире: освоение правил существования и выживания в мире, саморазвитие, создание и развитие других персонажей[16] (Рис. 5).

Рис. 5. Игровой процесс в игре для обучения

Комплекс инструментов для разработки обучающих игр

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

Комплекс состоит из программного ядра обучающей игры и специализированной среды разработки (Рис. 6). Программное ядро реализует поддержку игрового процесса и процесса обучения. К функциям поддержки игрового процесса относятся симуляция виртуального игрового мира, выполнение сценария, отображение виртуального игрового мира, взаимодействие с пользователем, управление ресурсами компьютера. Функции поддержки процесса обучения: выполнение обучающих действий (отображение мультимедиа контента, тестирование, особые виды заданий и другие, зависящие от конкретной игры), оценка текущих результатов обучения, сбор информации в процессе обучения.

Программное ядро комплекса построено на основе существующего игрового ядра NeoAxis Game Engine [17], дополненного компонентами, необходимыми для организации процесса обучения. Игровое ядро реализует функции поддержки игрового процесса: моделирование и визуализацию игрового мира, выполнение

игровых сценариев, реализацию пользовательского интерфейса, управление ресурсами и взаимодействие с операционной системой.

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

Рис. 6. Архитектура комплекса

1 - мультимедиа ресурсы (модели, текстуры, звуки, изображения и пр.);

2 - описание виртуального мира игры;

3 - описание обучающего курса;

4 - обучающий контент;

5 - параметры имитационного моделирования объектов виртуального мира игры;

6 - состояние объектов виртуального мира игры;

7 - состояние игрока;

8 - обучающие задания;

9 - описание интерфейса пользователя;

10 - вводимые пользователем данные.

В разработанном комплексе инструментов используется единый подход к описанию обучающих и игровых заданий, что позволяет реализовать предложенную модель комбинированного сценария. Наличие всех необходимых инструментов разработки снижает трудоемкость создания обучающих игр. Пользовательский интерфейс инструментов разработки реализован таким образом, что их использование не требует специальных знаний и навыков в области программирования. Это позволяет специалистам в предметной области

самостоятельно создавать и модифицировать обучающие игры без привлечения специалистов в области разработки компьютерных игр.

Игра для обучения объектно-ориентированной технологии программирования «Камми»

В среде разработки создана игра «Камми» [18,19], в которой реализована модель комбинированного сценария. Игра предназначена для обучения технологии объектно-ориентированного проектирования и языку С#. Главным персонажем игры является «Профессор Камаев»* (с разрешения заведующего кафедрой САПР и ПК Волгоградского государственного технического университета, д.т.н., профессора Камаева Валерия Анатольевича), сознание которого в результате неудачных опытов

переместилось в маленького робота, состоящего из 16 магнитов - Камми (Рис. 7). В своем новом состоянии профессор оказывается в мире больших вещей, о котором он ничего не знает и в котором он не умеет жить. Для того чтобы вернуть профессору его человеческий облик, игрок должен провести Камми до лаборатории и починить установку. Для этого ему предстоит освоиться в новом для него мире и выполнить множество игровых заданий.

Рис. 7. Трансформация «Профессора Камаева» в Камми

Игровой мир разработан как симулякр объектно-ориентированной парадигмы (ООП). Объектно-ориентированные программы представляют собой совокупность описаний объектов и отношений между ними. Для разработки виртуального мира выделены ключевые понятия ООП: типы данных языка; функции; операции и операторы; классы и объекты; отношения классов; библиотека MS; элементарные алгоритмы. Виртуальный мир интерпретирует объектно-ориентированную парадигму как систему правил жизни в виртуальном мире. Примеры интерпретации обучающего курса в игровом контексте показаны в таблице 1.

Таблица 1

Примеры интерпретации обучающего курса в игровом контексте

Раздел курса Интерпретация в игровом контексте Реализация

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Типы данных Идентификация пользователя Для хранения персональных данных игрок должен определить типы этих данных.

Изменение формы персонажей игры Для изменения формы персонажей игрок должен заполнять массивы

Классы и объекты Создание персонажей игры Для заселения мира персонажами игрок должен описывать класс и создавать объекты этих классов.

Функции Управление персонажами игры Для описания поведения персонажей игрок должен создавать и модифицировать функции (методы классов).

Процесс обучения интерпретируется как жизнь и развитие Камми в виртуальном мире. Игрок должен управлять поведением Камми, который помещается в новый для него мир больших вещей. В процессе игры игрок сначала должен ответить на главный вопрос - «Кто я в этом мире?», и это интерпретируется в терминах объектно-ориентированного проектирования с использованием понятий класса и объекта. Для того, чтобы выжить в этом мире, игрок должен научиться передвигаться, но для этого он должен разработать соответствующие методы класса главного персонажа. Игрок встречает других обитателей мира, часто враждебно

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

Процесс обучения развивается по спирали, на каждом витке которой игрок развивает навыки жизни в виртуальном мире игры (Рис. 8).

Как ...?

Рис. 8. Спираль процесса обучения в игре

В таблице 2 приведены несколько элементов игрового сценария, объединяющего обучающие и игровые действия, и реализующего таким образом модель комбинированного сценария.

Таблица 2

________________________Описание элементов игрового сценария_____________________

Содержание элемента

Ты не можешь перемещаться? Напиши заголовок функции MoveForward,

реализующей движение вперед._____________________________________________________

Разработай алгоритм функции MoveForward, реализующей движение вперед.

Хочешь изменить форму Камми? Напиши метод ТгашТогтТо8паке для преобразования Камми в Змейку._______________________________________________

Тебе опять нужно вернуть Камми его прежнюю форму? Напиши метод TransformToKammy, которая позволит Камми преобразовываться

в форму Камми._________________________________________________________________

Напиши вызов функции MoveForward и попробуй перемещать Камми вперед.

Давай модифицируем метод MoveForward таким образом, чтобы можно было увеличить скорость движения._________________________________________________

Давай научим Камми прыгать, тогда он сможет перепрыгнуть препятствие. Для этого нужно добавить в класс Kammy метод Jump, реализующий прыжок.________________

Ты не можешь уничтожать врагов на расстоянии? Добавь в интерфейс класса Kammy метод Shoot, который позволит Камми стрелять._________________________________________

Не устал убегать от врагов? Ты можешь научить Камми отбиваться от них. Давай напишем метод Beat и добавим в класс Kammy._____________________________________________

В качестве примера приведены два фрагмента процесса обучения в игре и экранные формы, сопоставленные этим фрагментам (рисунки 9, 10).

Фрагмент 1. В процессе игры игрок выбирает игровое действие, требующее перемещения Камми вперед. Для этого ему необходимо написать программный код, реализующий метод движения вперед (Рис. 9а).

После разработки функции движения игрок может проверить правильность программного кода. Если программный код правильный, то Камми может двигаться вперед, если нет - Камми остается на месте (Рис. 9Ь).

а) Разработка функции движения Ь) Визуализация результата

вперед выполнения задания

Рис. 9. Трансформация «Профессора Камаева» в Камми

Фрагмент 2. Игрок выбирает игровое действие, требующее изменения формы Камми. Для этого он должен выполнить задание на разработку функции изменения формы (Рис. 10а). Если программный код правильный, то Камми получает форму Змейки, если нет - Камми остается в прежнем состоянии (Рис. 10Ь).

а) Разработка функции изменения Ь) Визуализация результата

формы Камми выполнения задания

Рис. 10. Изменение формы Камми

Все разработанные игроком функции затем добавляются как методы в класс

Kammy.

В процессе модификации класса Kammy игрок изучает конструкторы, режимы доступа, поля и свойства, реализацию полиморфизма. Класс, который создает игрок в процессе игры, показывает возможности для управления игровым персонажем:

class Kammy: Professor {

//координаты объекта на экране private int x; private int y;

private int[,] Shape = new int[16,16,16]; //форма объекта private void BeatRight();//удар правой рукой private void Rotate();//вращение

public Kammy ();//конструктор

public voidMoveRight(int step);//перемещение вправо на шаг step public voidMoveLeft(int step);//перемещение влево на шаг step public voidMoveForward(int step); // перемещение вперед на шаг step public voidMoveBack(int step);//перемещение назад на шаг step public void Jump(int high jump);// прыжок на высоту high Jump public void BeatLeft();//удар левой рукой public voidPush();//толчок public voidAttack();//атака

public void СНщО;//прикрепление к другому объекту public void Shoot();//стрельба

public void TransformToSnake();//преобразование в форму «Змейка» public void TransformToKammy();//преобразование в форму «Камми» public void TransformToWeight();//преобразование в форму «Гиря»

};

Для обучения объектно-ориентированной технологии и языку программирования в игре используются принципы аналогии и работы с чужим кодом. Класс Kammy, созданный игроком, является упрощенным вариантом соответствующего класса Kammy, используемого в самой игре и реализованного на языке C++.

Описание игрового мира, которое создает игрок, в контексте ООП представляется диаграммой классов его сущностей. Диаграмма классов, которую создает игрок в процессе игры (Рис. 11a), отображает упрощенный вариант множества отношений между классами, используемыми в самой игре (Рис. 11b).

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

а) фрагмент диаграммы классов, создаваемой игроком

b) фрагмент диаграммы классов, реализованной в игре

Рис. 11. Фрагменты классов

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

I Прогрлммироааиие иа языке С#

Типы данных Функции

Операции и операторы Классы и объекты Отношения классом Управление временен жизни Библиотека классов Кодирование Анализ кода

Рис. 12. Визуализация текущих знаний игрока в игре (шкала навыков)

Для проверки решений заданий на разработку программного кода реализованы методы верификации и запуска кода. Для реализации метода верификации использованы регулярные выражения. Программный код на языке C# проверяется на соответствие с набором регулярных выражений (используется библиотека PCRE), каждое из которых представляет собой шаблон, описывающий правильное решение. Для визуализации решений используются заранее заготовленные анимации персонажей, соответствующие правильному и неправильному решениям. Для реализации метода запуска в игровое ядро обучающей игры интегрирована среда исполнения .NET и реализован набор классов, организующих взаимодействие игровых объектов с кодом. Это позволяет непосредственно запускать написанный код и использовать его для управления поведением игровых персонажей.

Так как игрок должен видеть результат выполнения задания через поведение своего персонажа, то для каждого решения задания предусмотрен способ его визуализации. В начале игры реализации методов, которые разрабатывает игрок, очень простые, и они не могут быть использованы для запуска и визуализации (например, задания по синтаксису языка или задания, для которых от игрока требуется более простой код, чем реальная реализация метода). Для проверки таких решений используется метод верификации (таблица 3).

Таблица 3

Примеры способов проверки решений заданий____________________

Задание Решение задания Способ проверки решения

Написать заголовок метода MoveForward (не принимает параметров и void MoveForward(); Верификация с использованием регулярного выражения: A-void'\sMoveForward'\(\s) \s\;$

ничего не возвращает).

Написать метод МоуеРогоаМ увеличивающий переменную х на 1. void MoveForward() { x++; } 1.Верификация с использованием регулярного выражения: Avoid\sMoveForw атй\ (^[ув1ё]'\ё\)'^ {'^х'^(='^х'^'\ + '^1|\ + (='^11\+))\5\; \s\JS (Проверяются 3 варианта решения: х++; х=х+1; х+=1;) 2. Запуск и проверка результата.

Написать программу, позволяющую достичь стены While (! WallBehind()) { MoveForward(); } Запуск и проверка результата

Оценка качества игры «Камми»

Разработанная игра «Камми» используется на кафедре САПР и ПК Волгоградского государственного технического университета в рамках обучения студентов второго курса дисциплине «Программирование на языках высокого уровня».

Группа студентов из восьми человек, применявших игру «Камми» в процессе обучения, была привлечена в качестве экспертов для оценки качества игры. Для оценки качества использован метод эвристических оценок [20]. Метод заключается в в проверке удовлетворения оцениваемой игрой набору характеристик (эвристик), которые по мнению разработчиков обучающих компьютерных игр соответствуют требуемому уровню качества. Эвристики при этом формулируются таким образом, что бы пользователь игры мог однозначно определить, соответствует игра каждой из них или нет. Оценка по методу эвристических оценкок определяется как отношение количества эвристик, которым игра удовлетворяет, к общему количеству использованных эвристик.

Для оценки качества игры «Камми» были использованы три группы эвристик: эвристики оценки качества игровой компоненты, оценки качества обучающей компоненты и оценки качества взаимодействия игровой и обучающей компонент [21]. Результаты оценки показали (таблица 4), что в целом игра «Камми» на 91% удовлетворяет эвристикам качества обучающих игр (68 эвристик из 75).

Таблица 4

Результаты оценки качества игры «Камми»___________________

Группа эвристик Всего эвристик Количество эвристик, которым игра удовлетворяет

Эвристики оценки качества игровой компоненты З7 33 (89%)

Эвристики оценки качества обучающей компоненты З0 27 (90%)

Эвристики оценки качества взаимодействия игровой и обучающей компонент 8 8 (100%)

Итоговая оценка качества обучающей игры 75 68 (91%)

В том числе по группе из восьми эвристик, определяющих качество взаимодействия игровой и обучающей компонент (таблица 5), игра полностью удовлетворяет требованиям качества (8/8).

Таблица 5

Эвристики качества взаимодействия игровой и обучающей компонент

№ Описание эвристики

1. Приобретение знаний изучаемой дисциплины происходит как часть процесса изучения мира; процесс обучения восприниматься как часть игрового процесса.

2. Игровые цели соответствуют учебным целям, их достижение требует от игрока приобретения новых знаний и развития навыков.

3. Выполнение учебных заданий влияет на виртуальный мир игры.

4. Персонажи игры взаимодействуют с игроком и помогают ему учиться.

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

6. Игровая или обучающая составляющие процесса сбалансированы (не слишком долго работает с обучающей подсистемой или не слишком много игровых моментов без обучения);

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

8. Эмоциональные, психологические и иные предпочтения игрока не влияют на получение им знаний. Если в игре существуют альтернативные сюжетные линии, то они должны предоставлять одинаковый набор знаний и навыков.

Заключение

По результатам применения обучающей игры «Камми» в учебном процессе было проведено: оценки применимости разработанной модели процесса обучения и анкетирование в группе студентов. Все студенты отметили, что игра помогла им понять идею объектно-ориентированной парадигмы и базовые принципы объектно -ориентированного программирования и повысила их интерес к изучению дисциплины в целом. При этом студенты отметили высокое качество игры: привлекательность сюжета и богатые игровые возможности.

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

Литература

1. M. Prensky Digital Game-Based Learning // Paragon House Publishers. - 2007. - p. 442.

2. Kirriemur J., McFarlane A. Literature review in games and learning. // NESTA Futurelab series. Bristol: NESTA Futurelab. - 2004. - p. 4.

3. MacFarlane S., Read J. et al. Evaluating interactive products for and with children. // Computers on human factors in computer systems (CHI 2004). Vienna, Austria. - 2004. - pp. 23-24.

4. Sim G., MacFarlane S. et al. All work and no play: Measuring fun, usability, and learning in software for children. // Computers and Education, 2006, 46(3), pp. 235248.

5. SimCity [Электронный ресурс]. - Режим доступа: www.simcity.com/ (дата обращения: 11.07.2013)

6. Civilization [Электронный ресурс]. - Режим доступа: http://civilization.com/ (дата обращения: 11.07.2013)

7. Bittanti V. (Ed.) Civilization: Virtual history, real fantasies. // Milan, Italy: Ludilogica Press. - 2005. - p. 27.

8. Squire K., Barab S. Replaying History: Engaging urban underserved students in learning world history through computer simulation games. // Sixth international conference of the learning sciences. - Santa Monica, United States: Lawrence Erlbaum Associates. - 2004. - 27.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

9. Nutaro J. Building Software for Simulation: Theory and Algorithms, with Applications in C++. // Wiley. - 2010. - pp.13-21.

10. Sokolowski J.A., Banks C.M. Principles of Modeling and Simulation. // Hoboken, NJ: Wiley.- 2009. - p. 6.

11. Microsoft Flight Simulator [Электронный ресурс]. - Режим доступа: http://www.microsoft.com/games/FlightSimulatorX/ (дата обращения: 11.07.2013)

12. Ultra-realistic flight simulator [Электронный ресурс]. - Режим доступа: www.x-plane.com/ (дата обращения: 11.07.2013)

13. Prensky M. Simulations”: Are They Games? // From Digital Game-Based Learning. -McGraw-Hill. - 2001. - pp. 2-10.

14. T. Hainey T. Connolly and L. Boyle Development and Evaluation of a Game to Teach Requirements Collection and Analysis in Software Engineering at Tertiary Education Level // Proceedings of the 3rd European Conference on Games-Based Learning. -Graz, Austria. - 2009. - pp. 145-153.

15. Apurva J., Barry B. Developing a Game for Value-Based Software Engineering University of Southern California //[Электронный ресурс]. - Режим доступа: http://csse.usc.edu/csse/TECHRPTS/2006/usccsse2006-634/usccsse2006-634.pdf (дата обращения: 16.03.2013)

16. Шабалина О.А., Воробкалов П.Н., Катаев А.В. Разработка обучающих игр: интеграция игровой и обучающей компоненты // Открытое образование. - 2011. -№ 2. - стр. 290-294.

17. NeoAxis Engine [Электронный ресурс]. - Режим доступа: www.neoaxis.com (дата обращения: 23.05.2012)

18. Шабалина О.А., Воробкалов П.Н., Катаев А.В. Применение 3ьподхода для разработки обучающих игр по объектно-ориентированному программированию // Вестник компьютерных и информационных технологий. - 2011. - № 6. - C. 46-52 + 3-я стр. обл.

19. Shabalina O., Vorobkalov P., Kataev A., Tarasenko A. 3I-Approach for IT Educational Games Development // Proceedings of the 3rd European Conference on Games-Based Learning/ - Graz, Austria. - 2009. - pp. 339-344.

20. Nielsen J., Molich R.L. (eds.) Heuristic evaluation. In 'Usability Inspection Methods'. -New York: John Wiley & Sons. - 1994. - pp. 9-13.

21. Катаев А.В. Программно-информационная поддержка процесса разработки обучающих игр // Диссертация на соискание ученой степени кандидата технических наук. - Волгоград. - 2012. - стр. 104-106.

i Надоели баннеры? Вы всегда можете отключить рекламу.