Учебного трека «Введение в программирование» в рамках проекта «Твой курс: ит для молодежи» в рамках инициативы Microsoft YouthSpark



Pdf просмотр
страница3/3
Дата01.11.2016
Размер2.16 Mb.
Просмотров421
Скачиваний0
1   2   3
Упражнение 2. Создание игры по предложенному сценарию
Вы познакомились с основными компонентами среды программирования Kodu. Но для создания собственной компьютерной игры нужна не только среда программирования, важно еще знать и общие правила создания игр.
Разделитесь на группы по 2-3 человека и попробуйте смоделировать деятельность команды по разработке проекта игры.
Итак, пробуем свои силы?! Ваш первый заказ:
Спортивный теннисный клуб планирует познакомить учеников начальных школ вашего города с игрой в теннис. Они наняли вас для проектирования игры, в целом основанной на правилах тенниса, чтобы увлечь ребят теннисом и повысить популярность этого вида спорта.

Для справки
Теннис, или большой теннис — вид спорта, в котором соперничают либо два игрока («одиночная игра»), либо две команды, состоящие из двух игроков
(«парная игра»). Задачей соперников является при помощи ракеток отправлять мяч на сторону соперника так, чтобы тот не смог его отразить не более чем после первого падения мяча на игровом поле на половине соперника.
Вам предоставили информацию и обзорный тур по тренировочным помещениям клуба.
Итак, клуб выдвигает несколько требований для игры:

два игрока;

красочность;

подпрыгивающий/отскакивающий объект (мяч), по которому ударяют два игрока, перебрасывая его друг другу;

возможность вести счет.
Шаг 1. Итак, сюжет (идея и смысл) игры понятен. Для того, чтобы выполнить заказ, вам сначала понадобится сделать раскадровку игры с текстом.
Для справки
Раскадровка — процесс создания предварительной визуализации кадров.
История раскадровки берет свое начало в эпоху немого кино.
Создайте на листах бумаги раскадровку, отражающую видеоигру в теннис. На различных листах должны последовательно отображаться снимки экрана, соответствующие различным этапам игры: с начала (экран названия) и до конца (экран победы).
Шаг 2. Создайте виртуальный мир, соответствующий сюжету игры:

спроектируйте теннисный корт, выбрав его размеры и нанеся соответствующую разметку;

подумайте, какие объекты можно добавить еще на территории корта и за его пределами (сетка, место для судьи на корте, трибуны, деревья за трибунами и т.п.).
Для справки
Теннисный корт (
англ.
court, от лат.
cohors — огороженное место) — ровная, прямоугольная площадка для игры в теннис
. Длина корта — 23,77 м, ширина —
8,23 м (для одиночной игры) .


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

задайте способ (клавиши) управления и перемещения игроков по полю;

напишите программу, задающую поведение мяча;

опишите условия изменения счёта и запрограммируйте эту ситуацию.

реплики героев и звуки
Шаг 5. Сделайте (в соответствии с имеющейся раскадровкой) экраны начала и окончания игры.
Шаг 6. Протестируйте игру в паре. Предложите поучаствовать в тестировании своим друзьям. Внесите необходимые правки в код. При необходимости осуществите корректировку ландшафта.
Шаг 7.Проведите презентацию игры и представьте разработку каждой группы. Выскажете своё мнение о том, что вам особенно понравилось в представленных проектах, предложите конкретные шаги по доработке.
Шаг 8. Сравните ваш подход и подходы ваших друзей к программной реализации поставленной задачи по следующим параметрам:

оформление виртуального мира и его соответствие поставленной задаче;

прозрачность правил игры;

корректность поведения игроков;

алгоритм подсчета очков (работы счетчика);
Выберите наиболее удачные решения написания кода, аргументируя свой выбор.
Вопросы профессионального программиста:

Какие возможности объектно-ориентированного программирования вы уже использовали?

Продолжите фразу “Объектно-ориентированное программирование позволяет…”
Обсудите свои выводы с друзьями!
Это интересно...
Компьютерные игры часто создаются на основе фильмов и книг; есть и обратные случаи.
С 2011 года компьютерные игры официально признаны в США отдельным видом
искусства.

Это интересно...

Геймдизайнер — специалист, разрабатывающий правила, стиль и дизайн компьютерных игр
. Роль геймдизайнера аналогична роли постановщика задачи в обычном программировании и режиссёра в кино. Профессия появилась в конце 1980-х годов.
Это интересно...
Раздел математики под названием теория игр изучает оптимальные стратегии в играх
Под игрой понимается процесс, в котором участвуют две и более стороны, ведущие борьбу за реализацию своих интересов. Каждая из сторон имеет свою цель и использует некоторую стратегию, которая может вести к выигрышу или проигрышу — в зависимости от поведения других игроков. Теория игр помогает выбрать лучшие стратегии с учётом представлений о других участниках, их ресурсах и их возможных поступках.
Это интересно...
Существует профессия сценарист компьютерных игр. Известный сценарист канадец
Дрю Карпишин создает сценарии для видео и компьютерных игр.


Занятие 5. Разработка своей оригинальной игры от “А” до “Я”

Для справки:
Проект (от лат.
projectusброшенный вперед, выступающий, выдающийся
вперёд) — это работа, планы, мероприятия и другие задачи, направленные на создание нового продукта.
В нашем случае проектом будет созданная игра. Какая игра? Это решать вам! Но постарайтесь, чтобы она была интересна не только вам, но и вашим друзьям, родителям, близким, которые будут в нее играть. Вы можете посмотреть примеры удачных игр, созданных в Kodu другими разработчиками на сайте http://www.kodugamelab.com/
Итак, изучив все возможности Kodu, приступаем к проектированию своей игры от “А” до
“Я”!
Советы профессионального программиста:
Конечно, программировать игру можно в одиночку. Но практика показывает, что наиболее удачными являются проекты (продукты), разработанные командой профессионалов с различной специализацией: сценаристов, дизайнеров, тестировщиков и непосредственно программистов! Важно не только собрать, но и правильно распределить роли. Это этого зависит и настроение, и вклад каждого из участников, и самое главное - результат!
Поэтому мы рекомендуем пригласить для совместной работы над игрой одноклассников или друзей. А может быть, родителей?
На этапе обсуждения обязательно обсудите роль каждого из участников вашей команды.
Проведите “мозговой штурм”, а результаты записывайте в
Протокол “мозгового штурма”
Для справки
Метод мозгового штурма (мозговой штурм, мозговая атака, англ. brainstorming) — оперативный метод решения проблемы на основе стимулирования творческой активности, при котором участникам обсуждения предлагают высказывать как можно большее количество вариантов решения, в том числе самых фантастичных. Затем из общего числа
высказанных идей отбирают наиболее удачные, которые могут быть использованы на практике.
Шаг 1. Для начала выберите жанр игры. Что это будет за игра? Уточним, какие бывают жанры. Выбирай…
Для справки:
Жанр определяется целью игры. Игра может принадлежать как к одному, так и к нескольким жанрам.

Приключенческая игра (Adventure) — игра, обладающая полноценным литературным сюжетом, и игрок в процессе игры сам раскрывает все перипетии этого сюжета.
Ролевая игра (RPG — англ.
Role Playing Game) — игра, отличительной особенностью которой является наличие у персонажей определённых навыков и характеристик, которые можно обрести, а впоследствии развивать, выполняя какие-либо действия.
Компьютерный симулятор (Simulator) — игра, полностью имитирующая какую-либо область реальной жизни, например, имитация управления гоночным автомобилем или самолётом.
Головоломка (Puzzle) — игра, полностью или более чем наполовину состоящая из решения различных логических задач и головоломок.
Образовательная игра — игра, включающая в себя элементы обучающих программ, которые подаются через сам игровой процесс и, благодаря повышению интереса к ним в связи с необычным антуражем, впоследствии хорошо запоминаются.
Забавы — игры, в основном рассчитанные на детей, где психологическое впечатление от происходящего на экране гораздо важнее самого процесса игры — например, вид лопающихся пузырьков.
Результат этого шага - разработка ключевой идеи игры. Вы должны в общих чертах
представлять, где будут происходить игровые действия, какими объектами будет управлять играющий и с какой целью.
Шаг 2. Проектируем сюжет игры. Заглянем в словарь...
Для справки:
Сюжет (от фр. subjet — «предмет») — в литературе, театре, кино и играх — ряд событий (последовательность сцен, актов), происходящих в определенном порядке и выстроенных для (зрителя, игрока) .

Советы профессионального разработчика игр:
Проектирование сюжета, естественно, потребует:

придумать и создать эскиз на бумаге как будет выглядеть виртуальный игровой мир (ландшафта и его объектов: вода, дороги, деревья, горы и т.д.), в котором будут развиваться события;

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

Основной персонаж/персонажи (главные герои).

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

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

Какую миссию будут выполнять главные герои (персонажи, объекты)?

Нужны ли в вашей игре дополнительные герои и объекты? С какой целью?

Будут ли персонажи и объекты, препятствующие достижению цели?

Что каждый из героев умеет/будет делать (роль каждого из них в сюжете)?

Каковы свойства и характеристики выбираемых объектов и как они будут использоваться в процессе игры?


При каких условиях и в каких обстоятельствах будут использоваться те или иные свойства (возможности) персонажей (объектов)?

Как будет осуществляться управление персонажами (объектами)?
Итак, на этом шаге вы должны:

придумать ландшафт и выбрать управляемые объекты;

изучить/освежить в памяти возможности управляемых персонажей (объектов);

выбрать варианты поведения персонажей согласно сюжету.
Шаг 3. Детализируем цель игры.
Советы профессионального разработчика игр:
Очевидно, что сюжет игры должен быть ориентирован на какой-либо результат. Каждый играющий в вашу игру должен понимать, что он должен сделать, каков должен быть результат.
Как правило, цель игры (а значит, и победа игрока!) во многом определяется ее жанром.
Например, игрок должен по сюжету:

набрать как можно больше баллов (очков);

то или иное действие выполнить за ограниченный период времени (например, лабиринт надо пройти за 2 минуты);

прийти к финишу первым;

собрать/создать/открыть/разрушить/освободить/ те или иные объекты, персонажей, информацию и т.п.

соревноваться с другим персонажем, управляемым вторым игроком.
Результат этого шага - определить цель проектируемой вами игры и миссию игровых персонажей (героев, объектов) в процессе достижения этой цели.
Шаг 4. Создаём раскадровку и описываем правила игры.
Советы профессионального разработчика игр:
Вам потребуется описать правила для каждого объекта и персонажа, который встретится нам по ходу сюжета. Здесь также можно предусмотреть реплики персонажей и другие свойства и варианты поведения: сияние, исчезание, движение, звуковой сигнал, выражение эмоций, захват предметов и т.д.

Пример правила: Объект Рыба исчезает при столкновении с объектом Снаряд
Шаг 5. Создаем игровой мир, ландшафт, атмосферу согласно нашей раскадровке и сюжету.
Советы профессионального разработчика игр:
Такие вещи как цвет неба, текстура ландшафта, наличие или отсутствие воды влияют на восприятие игроком сюжета и его отношение к игре. Вид игрового мира должен соответствовать сюжету и жанру игры.
Пример: Если действие приключенческой игры происходит в дремучем лесу, то уместно выбрать тёмный цвет неба (а не ярко-голубой!).
Шаг 6. Добавляем персонажей. Программируем действия героев (персонажей, объектов) согласно разработанным правилам и сюжету игры.
Шаг 7. Проводим тестирование игры.
Советы профессионального разработчика игр:
Важно проводить тестирование сразу, по мере создания кода на каждом из этапов разработки в соответствии с раскадровкой - так вам будет проще отследить ошибки в своем коде и быстро их поправить.
Когда игра будет готова, пройдите ее от начала и до конца. Во время прохождения обращайте внимание не только на корректность поведения героев, но и на детали.
Постарайтесь сделать что-то против заданных вами правил! В процессе разработки используйте метод “защита от дурака”.
Для справки

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

Проверьте, реализована ли цель игры и соответствует ли она обозначенному жанру.
Шаг 7. Презентация игры.
Советы профессионального разработчика игр:
Советую для презентации игры привлечь как можно большую аудиторию. Это могут быть ваши друзья, одноклассники, родственники. Вы можете провести презентацию игры в социальной сети. Во время презентации обязательно обоснуйте, чем ваша игра отличается от других и почему люди должны захотеть играть в эту игру?

Расскажите о сюжете и правилах вашей игры, что вас вдохновило на ее создание.

Представьте свою команду разработчиков (кто за что отвечал при разработке), отметьте вклад каждого участника.

Запустите игру и предложите поиграть в нее всем желающим. Поинтересуйтесь мнением. Обратите внимание на замечания и пожелания, возникшие у игроков трудности. Это поможет вам усовершенствовать игру и привлечь новых игроков.
Это самый большой успех программиста!
Шаг 8. Поделитесь (загрузите) своей игрой в сообществе Kodu и на сайте
“ИТ для молодёжи”


















Дорогие друзья!
Вот и закончились 5 занятий по освоению Kodu. Вы сделали первые шаги в программировании и получили важные навыки по созданию 3D-игр. Теперь вы знаете и умеете:

разрабатывать сюжет и стратегию игры;

проектировать виртуальный мир, создавать и редактировать модель местности;

управлять объектами, создавая программный код;

привязывать действия объектов к определенному времени;

использовать звуковое сопровождение в игре;

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

Вам понравилось создавать игры в Kodu? Обязательно поделитесь мнением о
пройденном курсе, заполнив
небольшую анкету
. Это займет всего 2 минуты.








ПРИ ОЖЕНИЯ
Инструкция по установке и работе с Kоdu
Перед установкой программы ОЗНАКОМЬСЯ с требованиями к ПК:
1.
ПК должен работать под управлением ОС Windows.
2.
ПК должен поддерживать графику DirectX9.
3.
ПК должен поддерживать Shader Model версии 2.0 или более поздней.
Определение версии DirectX

Для Windows 7 и Windows Vista: в меню «Пуск» введите в поле поиска строку Cmd.
Для Windows XP: в меню «Пуск» выберите пункт «Выполнить» и введите команду Cmd.

Выполните в открывшемся окне команду Dxdiag. Версия DirectX будет указана на первой вкладке.
Если на компьютере не установлено ПО .NET Framework версии 3.5 и XNA
Game Studio версии 3.1, программа установки предложит установить эти продукты.
Загрузка Kodu с сайта разработчика

Kodu является бесплатно распространяемым программным обеспечением (ПО). Для того чтобы установить программу на ПК, её необходимо скачать с сайта разработчика http://fuse.microsoft.com/Kodu
(рисунок 1). Информация на сайте представлена на английском языке, но современные браузеры (программы для просмотра веб-страниц) позволяют автоматизировать перевод на русский язык. В контекстном меню веб-страницы (открывается при щелчке по телу веб-страницы правой кнопкой) выбрать команду «Перевести на русский».

На главной странице сайта выбрать ссылку Download it here for FREE,
(рисунок 2).

На сайте разработчика программы щелкнуть по кнопке Download,
(рисунок 3).


Браузер предлагает выбрать действия - выполнить программу или сохранить её. Программа Kodu занимает 199 МБайт. При выборе команды «выполнить» программа автоматически начинает установку.
При выборе команды «сохранить» программа сохраняется на жесткий диск компьютера, что позволит установить ее на других ПК без обращения к Интернету.

Выбрать команду «сохранить как», указав место для хранения файла,
(рисунок 4). Информацией о том, что файл данного типа может нанести вред компьютеру можно пренебречь, так как программа скачивается с официального сайта корпорации Microsoft, которая ответственно подходит к вопросам обеспечения информационной безопасности своих пользователей.

Дождаться загрузки файла KoduSetup.msi на жесткий диск компьютера.
Время ожидания зависит от скорости работы интернета.

Найти сохраненный программный файл и двойным щелчком по имени файла запустить его на ПК.

В процессе инсталляции (установки) файла могут появиться сообщения о том, что некоторые компоненты не установлены (рисунок 5). Следует выполнить их инсталляцию. Информация, приведенная на рисунке 5, может отличаться, так как она зависит от того, какие компоненты были установлены на компьютере ранее. В данном примере приложение
.NET Framework 3.5 было установлено ранее, а утилита XNA
Framework 3.1 требует установки. Для установки следует щелкнуть по кнопке «click here to download» и загрузить необходимые для работы ресурсы.

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

После установки всех необходимых для работы приложений NET
Framework 3.5 и XNA Framework 3.1, продолжить процесс инсталляции, обязательно отметив флажок о присоедини к лицензионному соглашению «I accept the terms in the License
Agreement» (рисунок 6).


После успешной инсталляции на рабочем столе и системной кнопке
«Пуск» появятся иконки для запуска программы.
Процесс инсталляции Kodu можно понаблюдать на
видео-уроке “Установка
Kodu”

Рисунок 1. Главная страница ресурса Kodu Game Lab
Рисунок 2. Ссылка для скачивания программы

Рисунок 3. Выбор опции для сохранения программы на ПК
Рисунок 4. Выбор команды для сохранения программы на ПК
Рисунок 5. Информация о доступности необходимых приложений
Рисунок 6. Лицензионное соглашение

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

Определение частоты смены кадров
Запустите приложение «Configure Kodu Game Lab» из меню программ на
ПК. Появится панель инструментов настройки Kodu. Установите флажок
«Show Frames per Second» («Показывать число кадров в секунду»).
При следующем запуске Game Lab на экране будет отображаться количество кадров в секунду (Frames per Second, fps). Отображение числа кадров в секунду можно включать и отключать в любой момент, устанавливая или снимая флажок Show Frames per Second в панели инструментов настройки.
2. Повышение частоты смены кадров

Если в панели инструментов настройки выбран параметр Advanced
(Shader Model 3) («Модель построителя текстуры версии 3»), выберите вместо него параметр Standart (Shader Model 2) («Модель построителя текстуры версии 2»).

Снимите флажок Fullscreen («Полноэкранный режим»).

Выберите в раскрывающемся списке Resolution («Разрешение») меньшее разрешение. При этом уменьшится детализация изображения, и приложение будет потреблять меньше ресурсов процессора.

Снимите три флажка визуальных эффектов: Glow («Свечение»),
Smoothing («Сглаживание») и Animation («Анимация»).


ПРИМЕЧАНИЕ ДЛЯ ПОЛЬЗОВАТЕЛЕЙ НОУТБУКОВ.
Некоторые ноутбуки со встроенными видеоадаптерами не поддерживают ряд возможностей Kodu, но позволяют использовать основные средства Kodu и играть в игры.
















ПРИ ОЖЕНИЕ ПРОТОКО (Занятие 5)
Протокол “мозгового штурма”
Шаг
Результат
Опишите жанр игры
Придумайте название вашей игры
Сформулируйте и запишите идею сюжета вашей игры
Опишите виртуальный мир: в каких условиях
(ландшафт, объекты и т.п.) будут происходить действия игры?

Какие игровые персонажи или объекты вы планируете использовать? Назовите главных и второстепенных персонажей, возможных противников и т.п.
Опишите характеристики игровых объектов.
Какие из их свойств будут использоваться в игре?
Детализируйте цель проектируемой игры
Выполните раскадровку (выполните на отдельных листах и приложите к протоколу!)
Опишите правила для каждого объекта на каждом этапе игры в соответствии с раскадровкой
Итак, переходим к написанию кода!
Успехов вам!


Поделитесь с Вашими друзьями:
1   2   3


База данных защищена авторским правом ©nethash.ru 2017
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал