- •Оглавление
- •Введение
- •Глава 1. Анализ предметной области
- •1.1. Исследование существующих игровых программ
- •1.2. Применение игровой программной ситуации для обучения
- •1.3. Общая структура игровых программ для обучения
- •1.4. Постановка задачи
- •1.5. Выводы
- •Глава 2. Разработка и исследование моделей системы обучения на основе игровой ситуации
- •2.1. Разработка сценария игрового обучения
- •2.2. Моделирование информационной базы
- •2.3. Основные алгоритмы разрешения игровой ситуации
- •2.4. Выводы
- •Глава 3. Разработка и исследование архитектуры автоматизированной системы обучения на основе игровой ситуации
- •3.1. Общая архитектура системы
- •3.2. Разработка логической модели интерфейса системы
- •3.3. Разработка базы данных для системы
- •3.4. Разработка управляющей части
- •3.5. Выводы
- •Глава 4. Программная реализация
- •4.1. Общее представление системы с точки зрения пользователя
- •4.2. Сценарий работы пользователя с системой
- •4.3. Тестирование работы системы на основе типичных ситуаций
- •4.4. Основные физические характеристики системы
- •4.5. Выводы
- •Заключение Основные результаты работы
- •Список литературы
- •Приложение Исходный код программы
1.3. Общая структура игровых программ для обучения
Проанализируем структуру типичной компьютерной игры для обучения с точки зрения ее внутреннего устройства и функционирования во время игрового взаимодействия. Результат такого анализа поможет приблизиться к пониманию законов создания компьютерных игр для обучения, а также оценивать их.
Для начала перейдем к рассмотрению технологий разработки игр для современных персональных компьютеров.
Процесс создания таких игр состоит из следующих составляющих:
написание сценария;
разработка графики игры;
разработка компьютерной программы, объединяющей вышеперечисленные компоненты в единое целое, называемое компьютерной игрой.
Далее, рассмотрим структуру игровой программы: в компьютерных играх можно выделить три иерархических уровня, которые позволяют правильно построить схему игры и затем правильно провести программирование. Это оперативный, тактический и стратегический уровни, соотношение между которыми определяет, насколько интересной и полезной окажется игра.
Эти три уровня очень часто могут быть непосредственно соотнесены с текстом игровой программы, и такая связь помогает определить не только логическую и программную структуру игры, но и рассматривать соотношение между чисто игровым и обучающим компонентами в различных играх.
Обычно первое, с чем сталкиваешься в игре, — необходимость в соответствии с правилами игры изменять объекты на игровой сцене. Нажатие на определенную клавишу вызывает вполне определенные изменения: передвижение движущихся персонажей, изменение на один шаг параметров задачи, которые отображены на экране в числовой форме, изменение на определенный угол положения фигур на сцене и т.д. Это и есть оперативный уровень. Сюда относятся также выполнение всех действий программы между двумя последовательными нажатиями клавиш и программный опрос — было ли сделано действие играющим и, если оно было совершено, произведены ли соответствующие действия программы.
Результатом действия оперативного уровня в программе должно быть отображение всех перемещений и изменений на экране дисплея. Играющему должно быть четко видно, что реакция программы на его действия существует, и что эти его действия ощутимо влияют на ситуацию в игре.
Этот уровень почти напрямую связан с блоком взаимодействия с играющим. Как уже было сказано, для игр реального времени важен темп нажатия клавиш, поэтому достаточного времени для существенного изменения картины на игровой сцене нет, а значит, блок игровой среды меняется незначительно. В этом случае темп игры высок, и изображение на сцене должно быть впечатляющим, чтобы позволить оценить ситуацию в очень короткие интервалы времени.
Тактический уровень игры – действия, которые выполняет программа на этом уровне, ведут к достижению некоторой, вполне определенной локальной цели. Про этот уровень можно сказать, что он представляет собой область с расплывчатыми (размытыми) границами и в некоторых играх может даже отсутствовать. И все-таки для большинства игр этот уровень достаточно важен, так как именно на нем играющий достигает заметного улучшения (или ухудшения) положения в игре, после чего блок игровой среды существенно изменяет обстановку на игровой сцене и начинается следующий этап в игре, отличающийся по своим параметрам от предыдущего. Например, все объекты игры начинают двигаться по сцене быстрее, по другим траекториям и в других условиях.
Естественно, в программе должна быть такая часть, которая разворачивает этот игровой этап. Именно эта часть программы имеет отношение к оперативному уровню, точнее, тактический уровень программы включает в себя оперативный уровень, но часто не сводится к нему и имеет свои отдельные блоки. С помощью этих блоков более детально оценивается игровая ситуация (не только тот момент, в который нажимается клавиша), и изменения, производимые блоком игровой среды, более значительны, чем на оперативном уровне.
Интересна и полезна та игра, сложность которой изменяется в самом процессе, возрастая от этапа к этапу. Такое наращивание сложности игры происходит на тактическом уровне. Это один из критериев определения необходимости существования в разрабатываемой игре тактического уровня. Чаще всего тактический уровень можно соотнести с блоком оценки игровой ситуации.
Стратегический уровень включает в себя тактический уровень и задействует некоторое число самостоятельных блоков: для ввода на игровую сцену всех объектов, для определения, задания и визуализации их начальных параметров и вообще организации всей игровой сцены. Сюда относятся также проверка критерия окончания игры, если это игра с окончанием, а также фиксация и визуализация результатов всей игры в целом и результатов прошлых игр.
Пожалуй, именно эта часть игры наиболее существенна: от того, как реализован блок игровой среды, который часто напрямую соотносится со стратегическим уровнем, зависит внешний интерес к игре. В играх, где почти вся нагрузка сосредоточена на стратегическом уровне, следует обязательно выработать определенную стратегию поведения, которая должна привести к выигрышу, и все же быть достаточно гибкой, чтобы при изменении ситуации поменять и стратегию поведения.
Наиболее удобной игрой, т.е. такой, от которой не устают, к которой постоянно возвращаются, результаты которой удовлетворяют, а неудачи не приносят заметного ощущения дискомфорта, является игра, в которой нагрузка на играющего равномерно распределена по трем выделенным уровням: оперативному, тактическому, стратегическому.
Структура игровых программ для обучения существенно отличается от структуры общего класса игр, так как основная их цель – обучение.
На рисунке 1.3 представлена структура игровых программ для обучения.
|
Рисунок 1.3. Структура игровых программ для обучения |