Диплом, курсовая, контрольная работа
Помощь в написании студенческих работ

Создание приложений игрового назначения

КурсоваяПомощь в написанииУзнать стоимостьмоей работы

M.U.G.E.N — это бесплатный или условно-бесплатный 2D файтинг и удобный движок, который был разработан компанией Elecbyte. Написан движок на «С» с библиотеками «Allegro». MUGEN работает под управлением DOS, GNU/Linux и Microsoft Windows. Для тех, кого интересует создание своего 2D-файтинга. Это не программа, а по сути игра, в которой можно изменять всё, абсолютно всё: вид персонажей, локации… Читать ещё >

Создание приложений игрового назначения (реферат, курсовая, диплом, контрольная)

Содержание Введение

1. Разработка игры

1.1 История создания компьютерных игр

1.2 Обзор игровых жанров

1.3 Конструкторы игр

1.4 Выбор используемых инструментов

1.5 Руководство пользователя

1.6 Разработка игры Заключение Список использованной литературы Приложение А. Листинги файлов программы

Введение

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

Сейчас компьютерную игру может написать каждый, несмотря на общепринятое мнение, что процесс создания игры находится за пределами понимания простого смертного. Конечно, чтобы создать выдающуюся или даже очень хорошую игру, надо приложить много труда, таланта и интеллекта. Как же так получилось, что каждый может создать компьютерную игру? Основная причина — доступность метода drag-and-drop (перетащить и бросить). Пользователь может щелкнуть мышью по имени файла с изображением или звукозаписью, перетащить его в свое приложение и оставить его там. Это делает возможным создание игры без программирования. Людей, которые могут создавать таким образом игры, значительно больше, чем тех, кто владеет программированием. Отметим, что похожая революция произошла во всех областях применения компьютеров: в создании Web-сайтов, обработке текстов и даже в редактировании звуков. Все это упростилось благодаря методу drag-and-drop.

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

Теперь после покупки компьютерной игры не нужно осваивать ее в одиночку и наугад. Многие игры имеют конференции в сети Internet, в которых рассказано о секретах и кодах, даны советы по прохождению игры. В таких известных играх, как «Quakc 3» или «Delta Force 2», можно, например, модифицировать тот или иной уровень по своему желанию, используя редактор уровней.

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

1. Разработка игры

1.1 История создания компьютерных игр История компьютерных игр берет свое начало задолго до всеобщего бума компьютеризации. Первые игрушки были созданы программистами-любителями для себя и своих коллег, в чисто познавательных целях. Естественно, создавались они на машинах, еще не располагающих графическими средствами вывода информации, проще говоря — эти игры были текстовыми. Когда стали доступны графические растровые дисплеи. Hа таких экранах стало возможным изображать не только графики, чертежи и таблицы, но и дерущихся человечков, космические корабли, каких-то совершенно невообразимых чертиков. Первые игрушки с графическим интерфейсом это «Digger» ," Shumus", «Paratrooper», «Bad Street» и «Saboteur». Прогресс не стоит на месте, и вот на смену доминирующим монохромным и четырехцветным CGA-дисплеям пришел EGA с его 16 цветами. Hа базе 16 цветов уже можно было серьезно работать, и мир увидел знаменитых" Pirates!" и «Civilization» Сида Мейера, «LOOM» и «Monkey Island» от LucasArts, «Prince of Persia». Однако, бум начался лишь с появлением дисплеев VGA, позволяющи выдавать изображение либо в высоком разрешении (640×480) с 16 цветами, либо — и это было принципиальным новшеством — с 256 цветами, хотя и в разрешении 320×200. К тому же начали получать широкое распространение различные звуковые платы, такие как Sound Blaster и Adlib, первые накопители CD-ROM, пока еще одноили двухскоростные и притом неприлично дорогие, но все же выполняющие свою основную функцию

1.2 Обзор игровых жанров

3D-шутеры (3D Shooter). В играх данного типа игрок, как правило, действуя в одиночку, должен уничтожать врагов при помощи холодного и огнестрельного оружия, для достижения определённых целей на данном уровне, обычно, после достижения заданных целей игрок, переходит на следующий уровень.

Шутеры от первого (First person shooter, FPS). В шутерах от первого лица игрок не видит персонажа со стороны — он наблюдает за происходящим от лица персонажа и наблюдаемая игроком картина совпадает с тем, что «видит» персонаж. Примеры: Doom, Quake, Unreal Tournament, Call of Duty.

Шутеры от третьего лица (Third person shooter, TPS). В шутерах от третьего лица игрок видит персонажа со стороны с фиксированной (обычно со спины) или произвольной точки зрения. В ряде игр реализована возможность переключения первое/третье лицо и фиксированная/произвольная камера. Примеры: Tomb Raider, Max Payne, MDK, Grand Theft Auto.

«Кровавые» шутеры (gore). Суть таких игр заключается в уничтожении огромного количества врагов, чаще всего компьютерных ботов, большими группами надвигающиеся на игрока. При этом игрок должен иметь пространство для маневра. Примеры: Serious Sam, Painkiller, Will Rock, Left 4 Dead.

Тактические шутеры. Принципиальное отличие от классических шутеров состоит в том, что персонаж не изображает героя-одиночку, а действует в составе команды. В тактическом шутере обычно воссоздаётся деятельность отрядов — взаимодействие между бойцами, маневрирование и выбор направления атаки, подбор команды и её вооружения. В одиночном режиме эти возможности реализуются ботами, в сетевом — через взаимодействие живых игроков. Примеры: Battlefield, Counter-Strike: Condition Zero, Counter-Strike, Counter-Strike Source, Star Wars: Battlefront, Delta Force, Star Wars: Republic Commando, Operation Flashpoint: Cold War Crisis.

Файтинги. Геймплей состоит исключительно из поединков двух и более противников с применением рукопашного боя. Примеры: Mortal Kombat, Street Fighter, Tekken, Virtua Fighter, Dead or Alive, Guilty Gear X

Избей их всех. Разновидность файтингов, бой в которых происходит за пределами арены и со множеством противников одновременно. Примеры: Oni, Enter the Matrix, The Matrix: Path of Neo

Слэшер. Игры с видом от третьего лица, основной частью игрового процесса, в которых являются фехтовальные поединки с применением холодного и другого оружия. Примеры: Blade of Darkness, Rune, Enclave, Jedi Academy, God of War, Devil May Cry

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

Cтелс-экшен (Stealth-action). Игры, в которых предполагается не сражаться с большинством встреченных противников, а всячески избегать возможного контакта с ними, попутно выполняя поставленные задачи. Стелс-элементы (например, возможность выглядывать из-за угла, прислонившись к стене) часто встречаются в играх различных жанров. Примеры: Assassin’s Creed, Thief, Metal Gear Solid, Tom Clancy’s Splinter Cell, Hitman, Manhunt.

Технические. Игра-симуляция. При помощи компьютера как можно более полно имитируется физическое поведение и управление каким-либо сложным объектом технической системы (например: боевым истребителем, автомобилем и т. д.). Если аркадные игры стремятся развлечь игрока при помощи разных невозможных явлений, трюков и остроты сюжета, то главный критерий качества технических симуляторов — полнота и реалистичность моделирования его объекта (автомобиля, воздушного судна и т. д.). Примеры: FlightGear, Live for Speed, Microsoft Flight Simulator, X-Plane, Lock On: Современная боевая авиация, DCS Ка-50: Чёрная акула, Orbiter, Trainz

Аркадные. Упрощённая версия технических симуляторов, нередко с альтернативной физикой. Принципиальное отличие от собственно аркад — наличие хоть и упрощённой, но всё же физической модели. Чаще всего с подобной физикой делаются симуляторы космических кораблей и автомобилей. Примеры: Ил-2 Штурмовик, X-Wing, TIE-Fighter, Wing Commander, Need for Speed, Полный привод, Burnout Paradise

Спортивные (Sport game). Другое название — «спортсим» (от англ. sport simulator — симулятор спорта). Как и следует из названия — имитация какой-либо спортивной игры, наибольшее распространение получили имитации футбола, хоккея, баскетбола, тенниса и гольфа, боулинга и бильярда.

Спортивный менеджер. Спортивный менеджер — разновидность спортивного симулятора. Отличительной особенностью является то, что при симуляции игрок наблюдает непосредственно за игровым процессом и может влиять на ход матча в режиме онлайн, а при менеджменте настройки тактики, стратегии, трансферов и финансовых операций выбираются заранее, и игрок просматривает результаты уже после матча. В спортивном менеджере игрок выступает в роли управляющего собственной спортивной командой (спортсменом). Задачей играющего становится не только победа в матчах, но и грамотное и успешное управление инфраструктурой своего клуба. Примеры: 11×11 — футбольный онлайн-менеджер (Nekki), Короли Льда — хоккейный онлайн-менеджер (Nekki)

Экономические (Business simulation game).Экономические симуляторы, нередко относимые также к жанру стратегий, посвящены отображению экономических, рыночных процессов — чаще всего речь идет о предпринимательстве; целью игрока, руководящего неким предприятием, является извлечение виртуальной прибыли. В «чистых» экономических симуляторах отсутствуют элементы строительства; игрок должен управлять уже существующим коммерческим предприятием; рыночные процессы и поведение конкурентов относительно приближены к реальности. Примеры: Capitalism, Hollywood Mogul, Виртономика.

Стратегии (Strategy). Игра, требующие планирования и выработки определенной стратегии для достижения некоей конкретной цели, например, победы в военной операции. Игрок управляет не одним персонажем, а целым подразделением, предприятием или даже вселенной.

Стратегии реального времени (Real-time strategy, RTS). В этих стратегиях игроки производят свои действия одновременно. Они появились несколько позже пошаговых, первой получившей известность игрой этого жанра была Dune II (1992), сюжет которой основан на одноимённом произведении Фрэнка Герберта. Уже тогда сформировались общие принципы стратегий в реальном времени. Большинство «классических» стратегий в реальном времени предполагают следующий игровой процесс: сбор неких ресурсов; строительство и укрепление базы или лагеря; создание на этой базе боевых единиц (найм солдат, строительство техники); объединение их в группы, штурм и уничтожение этими группами вражеской базы. Примеры: Command & Conquer, Warcraft, Age of Empires.

Пошаговые стратегии (Turn-based strategy, TBS). Пошаговые стратегии — игры, в которых игроки производят свои действия по очереди. Пошаговые стратегии появились раньше RTS и отличаются значительно большим разнообразием. Разделение игрового процесса на ходы отрывает его от реальной жизни и лишает игру динамизма, в результате чего эти игры не так популярны, как стратегии в реальном времени. С другой стороны, в TBS у игрока гораздо больше времени на размышление, во время совершения хода его ничто не торопит, что даёт возможность намного более глубокого и обстоятельного планирования. Примеры: X-COM, Civilization, Galactic Civilizations, Heroes of Might and Magic, Disciples.

Варгеймы (Wargame). В варгейме, в отличие от других видов стратегий, игрок не должен создавать армию, его цель — победить противника в бою, используя те силы, которые у него есть в распоряжении в начале боя. В варгеймах, как правило, делается упор на аутентичность, реалистичность и историчность. Примеры: Правда о девятой роте, Steel Panthers, Panzer General, Warhammer, Squad Battles.

Глобальные стратегии (Government simulation game), Cтратегии, в которых игрок управляет государством. В его руках не только война и экономика, но и научный прогресс, освоение новых земель и дипломатия. В некоторых из них наряду с глобальной картой существуют местные, на которых проходят тактические сражения. Примеры: Master of Orion, Civilization, Medieval: Total War, Rome: Total War, Medieval II: Total War, Empire: Total War, Napoleon: Total War, Shogun 2: Total War.

Симуляторы бога (God game), Стратегические игры, в которых игроку предстоит выступать в роли «бога» — некоей сверхъестественной сущности, заботящейся о целом небольшом народе. Подобные игры характеризует, как правило, непрямой контроль над отдельными игровыми персонажами — ими управляет компьютер, а роль игрока определяется «сверхъестественным» вмешательством в их жизнь, постройке зданий, поддержанию оптимального состояния подопечного общества и тому подобному. Многие симуляторы бога не ставят перед игроком никаких конкретных задач, предоставляя ему возможность свободно и неограниченно развивать подопечное общество. Примеры: Black & White, Dungeon Keeper, Spore.

Приключения, адвенчуры или квесты (Adventure, Quest). Игра-повествование в которой управляемый игроком герой продвигается по сюжету и взаимодействует с игровым миром посредством применения предметов, общения с другими персонажами и решения логических задач. Примеры: Space Quest, Ларри в выходном костюме, Siberia, Myst, The Longest Journey

Текстовые квесты. Первоначально, из-за малого распространения графических устройств отображения и недостатка ресурсов (памяти и мощности процессора), все квесты были текстовыми. Позднее этот жанр был назван текстовым квестом. Отличие от графических квестов состоит в том, что игрок взаимодействует с игровым миром посредством командной строки и информация о мире выводится в виде текстов и рисунков из печатных знаков. Примеры: Superhero league of Hoboken и т. п.

Графические квесты. Первые графические квесты появились ещё в начале 1980;х. Примеры: Королевский квест, Космический квест, Ларри в выходном костюме.

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

Экшн-адвенчуры (action-adventure). Главным образом основан на реакции и рефлексах игрока, но есть и элементы классических квестов — предметы и взаимодействие с окружающей обстановкой. Примеры: Legend of Zelda, Resident Evil и другие игры жанра ужасов (которые тоже могут считаться экшн-адвенчурами).

Симуляторы романтических отношений (romantic adventure). Так же известны как романтические приключения. По геймплею некоторые из них близки к RPG, другие — к адвенчурам.

Музыкальные игры. В музыкальных играх геймплей строится на взаимодействие игрока с музыкой. Жанр же может быть любой, от головоломок до ритм игр. Примеры: SingStar, Mad Maestro!, Wii Music, Boom Boom Rocket

Ритмические игры. Поджанр музыкальных игр, который в последнее время набирает огромную популярность, благодаря аркадным автоматам и специальным контролерам, которые часто используются в подобных игр. Но из-за неимения первого и дороговизны второго жанр не распространён в России. Основной идеей является правильно нажатие кнопок показанных на экране под ритм музыки. Примеры: Guitar Hero, Rock Band, Серия Dance Dance Revolution, Hatsune Miku, Project DIVA, Frets on Fire

Ролевые игры (Role playing game, RPG). У главного героя (героев) и других персонажей и врагов (чаще в меньшей степени) присутствует некоторое количество параметров (умений, характеристик, навыков) которые определяют их силу и способности. Обычно, главная характеристика персонажей и врагов это уровень, который определяет общую силу персонажа и определяет доступные навыки и предметы экипировки. Все эти параметры надо совершенствовать путём убийства других персонажей и врагов, выполнением заданий и использованием этих самых навыков.

Присутствует проработанный и обширный мир, сильная сюжетная линия, разветвлённые диалоги с разными вариантами ответов, множество разных персонажей со своими целями и характерами. Примеры: Mass Effect, Deus Ex, Gothic.

Hack’n’Slash RPG. Ролевая игра с акцентом на истребление врагов, собирание наиболее мощных вещей, прокачку характеристик. Обычно имеют упрощённый мир и сюжет, небольшое количество диалогов и вариантов решения квестов и других задач. Примеры: Diablo, Dungeon Siege, Titan Quest.

true RPG (также просто RPG или CRPG). Ролевая игра с большим количеством диалогов, свободой в выборе путей решения различных задач, проработанным миром и сюжетом. Примеры: Fallout, Planescape: Torment, Baldur’s Gate, Dragon Age: Origins.

JRPG — (Японская РПГ). Ролевая игра с проработанным миром и диалогами, но с меньшей свободой выбора, чаще всего имеет очень увлекательный, но линейный сюжет, отсутствие выбора в прокачке характеристик персонажа, а также очень проработанных и красивых персонажей. Игра чем-то похожа на интерактивную книгу. Чаще всего создаётся японскими разработчиками, и существует очень мало игр такого рода, созданных за пределами Японии. Примеры: Final Fantasy, Dragon Quest.

Тактические RPG. Жанр ролевых игр, который является смесью с пошаговой стратегией. Игрок управляет небольшой группой воинов, хотя в некоторых тактических RPG их число может доходить до нескольких десятков. Первые тактические RPG появились на консолях в Японии. Сегодня, однако, много западных и компьютерных тактических ролевых игр. Примеры: Fallout Tactics, Jagged Alliance, Silent Storm, X-COM (UFO), Горький 17, Горький 18.

Головоломки, логические, пазлы (Puzzle). В некомпьютерной головоломке роль арбитра, следящего за соблюдением правил, играет или сам игрок (пасьянс), или некоторое механическое устройство (кубик Рубика). С появлением компьютеров возможности головоломок расширились, так как написать компьютерную программу проще, чем сконструировать механическое устройство. Головоломки, как правило, не требуют реакции от игрока (однако многие ведут счёт времени, потраченного на решение). Примеры: Сапёр, Sokoban, Охота на лис, Portal

Традиционные и настольные (Traditional, Board). Компьютерная реализация настольных игр. Примеры: Шахматы, карты, шашки, «Монополия», серия игр Warhammer.

Interactive Fiction (дословно — интерактивная литература, IF; текстовые квесты; adventure — «адвенчуры») — жанр компьютерных игр, в котором общение с игроком осуществляется посредством текстовой информации. Развитие этого жанра, в связи с низким требованием к ресурсам, началось весьма давно, и не прекратилось даже с появлением графических игр. Существуют два вида интерфейса — интерфейс с вводом текста с клавиатуры или интерфейс в виде меню, где игрок выбирает действие из нескольких предложенных (CYOA — Choose Your Own Adventure).

Игры в псевдографике. Разновидность текстовых игр, в которых имеется графическая картинка в виде мозаики, построенная из ASCII-символов. Примеры: Roguelike.

Одиночные (singleplayer). Рассчитаны на игру в одиночку, против компьютера.

Многопользовательские (multiplayer). Рассчитаны на игру нескольких человек (обычно до 32) по локальной сети, модему или Интернету.

Многопользовательские на одном компьютере (Hot Seat, Splitscreen). На современных персональных компьютерах бывают редко, однако часто встречаются на старых ПК и приставках. Hot seat — игра по очереди на одном компьютере. В режиме splitscreen экран делится на части (обычно две, бывает четыре), каждый из игроков играет на своей части.

Многопользовательские оффлайн-игры (PBEM). Некоторые жанры (спортивные менеджеры, пошаговые стратегии и т. д.) могут работать в таком формате: игроки делают ходы и отсылают результат через веб или электронную почту. Независимо от метода связи (Фидонет, электронная почта, веб…), у этих игр есть такие особенности:

Массовые онлайновые (Massively multiplayer online; англ. Massively multiplayer online RPG). Массовые игры по Интернету. Большая часть не играбельна в оффлайн. Наиболее часто встречающиеся жанры — настольные и ролевые игры (MMORPG). Среди них различают также браузерные игры (игры, не требующие установки какого-либо клиента) из которых выделяется жанр MUD — текстовые онлайновые игры. Примеры: Легенда Наследие драконов, EVE Online, Lineage 2, World of Warcraft, Warhammer Online: Age of Reckoning, Ragnarok Online, Травиан, My Lands, RF Online, OGame, Everquest 2, Steel Giants.

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

3D Game Maker — создание игр различных жанров (аркадные и гоночные игры, action и adventure), не требуется знание языков программирования, полностью трехмерные сцены (около 100 различных сцен), Свыше 500 3D объектов (машины, механизмы, враги во главе с ужасным «боссом», оружие, бонусы, препятствия и пр.), неограниченное количество сюжетов, сценариев и игровых опций (более 12 миллиардов!), свыше 320 звуковых эффектов и более 100 мелодий, добавление собственных 3D моделей, звуков, музыки. Использование собственного изображения в игре, дополнительные объекты в Интернете, поддержка парной игры, редактор размещения объектов на сцене, редактор Уровней, использование различных устройств управления (мышь, джойстик).

3D Game Studio — это полноценный игровой конструктор, целая система для создания трехмерных игр. Для создания простых 3D/2D-игр не нужно знать никаких языков программирования, но для более сложных игр имеется скриптовой язык Lite-C.

Игровые миры делаются достаточно просто: вы с помощью перетаскивания мышью расставляете на экране свои объекты, ландшафты, персонажей. Далее задаете им поведение и прочее. В комплекте поставляются дополнительные утилиты для разработки игры: создание объектов и их анимации. На завершающем этапе нужно настроить все параметры камеры, объектов и скомпилировать игру. 3DGS предлагает хорошие графические возможности, поддерживает простой в освоении язык скриптов, имеется возможность подключения внешних систем на C++, C# или Delphi. Если решили сделать серьёзный проект в 3D, то данный инструмент вам поможет достичь если не наилучших результатов, то очень высоких. Очень популярная программа у геймдевелоперов низкого и среднего достатка. В Gamestudio A8 интегрирован физический движок PhysX, Enet для сетевой работы, динамические тени, неограниченный размер ландшафта с 200 000 объектов на уровень, аудио движок OpenAL, порталы для рендеринга, используются графические ускорители для расчетов анимации и карт и т. д. Gamestudio совместим с версиями А6 и А7 (кроме физики).

M.U.G.E.N — это бесплатный или условно-бесплатный 2D файтинг и удобный движок, который был разработан компанией Elecbyte. Написан движок на «С» с библиотеками «Allegro». MUGEN работает под управлением DOS, GNU/Linux и Microsoft Windows. Для тех, кого интересует создание своего 2D-файтинга. Это не программа, а по сути игра, в которой можно изменять всё, абсолютно всё: вид персонажей, локации, музыку, звуки, искусственный интеллект и всё остальное. Есть игра, а вы что хотите, то и меняйте. Можно сделать свою игру со всеми собственными компонентами, а можно сделать некий сплав, куда напичкать всевозможные компоненты и персонажей отовсюду. У данной программы есть много фанатов, которые сотворили множество разнообразных дополнений виде локаций, персонажей. Перенесли множество бойцов из множества знаменитых игр данного жанра и не только. И теперь можно поиграть, например, бойцами игры Mortal Kombat против бойцов из Street Fighter и выяснить кто-ж кого сильнее.

3d Action Maker — это, как утверждает автор, первый постсоветский движок для создания трехмерных шутеров без программирования. Преимущество 3DAM от других движков состоит в том, что он достаточно легок в освоении и бесплатен. Конечно, на нем можно создавать игры без программирования, но для продвинутых пользователей, для тех, кто хочет создать профессиональную игру, имеется возможность воспользоваться дополнительным скриптингом.

Из технических особенностей можно отметить только то, что имеется возможность создание 3D-игр, подключение графических 256-цветных картинок для заставок. Улучшенная 3D-графика при поддержке DirectX. Возможность добавлять свои объекты. Готовые проекты можно компилировать в исполняемый файл exe. Дополнительно к 3DAM поставляются некоторые утилиты в помощь.

3D Rad — позволяет создать онлайн игры, создавать игры для web-страниц. Конструктор не ограничивает разработчика игр в жанре, можно создавать RPG, FPS, TPS и т. д. Игры можно делать как в 3D, так и в 2D. Предлагается AI, возможность скриптования для создания и достижения сложных задач в игре.

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

Racer — это свободный гоночный 3D-движок-игра-конструктор для кроссплатформенной (Windows, Linux, Mac OS X) разработки (для некоммерческого использования). Движок использует современную профессиональную автомобильную физику. Великолепная реалистичная графика, которая добавляет максимум реализма! Используются OpenGL-технологии. Для полного удобства вашей разработки в пакет включены редакторы трасы, моделей, физики автомобилей и пр.

3D Engine Virtoolsподходит для создания 3D-игр практически любого жанра и сложности: шутеры, квесты, симуляторы, стратегии, многопользовательские игры и т. д. Прототипы можно создавать буквально в считанные минуты. При разработке крупных проектов приложение легко разделяется на модули, что позволяет совмещать работу группы программистов, дизайнеров, моделлеров и.т.д. Virtools 3D engine содержит все необходимые компоненты для создания как казуальных, так и крупных игр. На базе технологий Virtools создан целый ряд успешных компьютерных игр для различных платформ.

Unity — это профессиональный мультиплатформенный игровой движок и интегрированный мощный игровой редактор для облегчения создания игр.

Этот движок из себя представляет что-то вроде конструктора игр, так как имеется отличная среда редактирования с удобным пользовательским интерфейсом, позволяющим создавать игру визуально! Редактор прост и интуитивно понятен, настраивается. Свойства объектов настраиваются несколькими кликами мыши, чтобы назначить текстуры, звук, поведение, скрипты и т. д. Визуальное перетаскивание и манипуляция с объектами. Клонирование объектов — иногда нужно перенести или размножить сложные игровые объекты. Игровые объекты полностью управляемы и настраиваются, интерактивные.

3D-RPG Builder — один из немногих конструкторов, который позволяет создавать в нём 3D игры жанра RPG. 3D RPG на нём получаются довольно-таки скромные по графике (по нынешним меркам), но при наличии определенных умений данное обстоятельство можно обыграть дизайном. Создание игр в данном конструкторе основывается на редактировании уровней: расставляете объекты и присваиваете им свойства. Так же имеется поддержка скриптового языка LUA, который достаточно удобен и прост в освоении благодаря хорошей документированности на многих языках мира, в том числе и на русском. Тем не менее, скрипт применяется в основном для того, чтобы назначать события в игре. Для создания нормальной 3D RPG в 3D RPG Builder’е всё же некоторое написание скриптов требуется.

Blender — программа для создания анимированной компьютерной графики и производства видео. Это по сути 3D-редактор, который поддерживается многими пользователями благодаря открытому исходному коду. Но на данном 3D-редакторе, благодаря встроенному игровому движку «Blender Game Engine», можно создавать и игры любого типа, направленности и жанра. Как оказывается, игры на нём можно создавать не прибегая к скриптовому языку, который, кстати, имеется (Python) для некоторых потребностей. Утверждают, что игры на нём можно создавать за пять минут. Имеются справки и руководства как по пользованию, так и по созданию игр. Можно ещё рассчитывать на большое комьюнити пользователей Blender’а, к которым можно обратиться за помощью. 3D-графика обладает всеми наворотами OpenGL, различные высокие разрешения, поддержка практически всех популярных аудио и видео форматов.

RPG Maker — это первая программа для создания игр жанра jRPG и, пожалуй, самая популярная. Её любят многие создатели игр без программирования, и у неё есть своя армия поклонников, в том числе и среди русскоязычного контингента. И поэтому достаточно легко найти примеры игр, учебники, статьи по данному конструктору. Создание игр в этом конструкторе несложное. Требуется минимальное знание местного скриптового языка. На демонстрационных примерах можно понять суть работы всех геймплейных особенностей, как они выполнены при помощи скриптовых команд. При создании игры у вас имеется возможность подключать шрифты, звуки (mid, wma, ogg, mp3 и CD-Audio), графику, видео (wav, avi) и пр. В конструкторе можно реализовывать все функции жанра jRPG: битвы, прокачку, диалоги, квесты, магию и пр.

XtremeWorlds (XW) — это мощный бесплатный движок-конструктор 2D MMORPG. В XW вы можете сделать свою собственную MMORPG без знаний программирования в считанные минуты! Но если вы желаете больше возможностей, нежели вам доступны без программирования, вы можете использовать специальную скриптовую систему, которая расширяет возможности движка и позволяет вам осуществить некоторые нестандартные решения

Quest3D — это готовое комплексное решение для создания 3D интерактивных приложений. Главной особенностью программы является возможность создавать достаточно сложные 3D приложения без глубоких знаний программирования, будь то 3D архитектурные интерактивные демонстрации, симуляторы, игры, приложения виртуальной реальности или что-либо ещё. Разработка программ в Quest3d происходит не с помощью классических языков типа С++, а с помощью специальных блок-схем, которые позволяют сделать код более гибким и наглядным, а также значительно ускоряют процесс разработки приложений. Quest3d позволяет импортировать 3D модели в различных форматах (X, 3DS, Collada и.мн.др), материалы, текстуры (BMP, JPG, PNG и.т.д.) и звуки (MP3, OGG). Кроме того, в программе предусмотрены редакторы параметров импортированных ресурсов (материалов, геометрических объектов, анимированных персонажей и.т.д.), а также полноценный редактор уровней, с помощью которого можно компоновать 3D сцены.

Dungeon Craft — это свободный конструктор игр на PC в стиле First Person RPG. DC является проектом с открытым исходным кодом, распространяется бесплатно. Простой, удобный и, главное, если вы фанатеете от игр Wizardry и Eye of Beholder, то он для вас! Данный конструктор игр предназначается для разработки игр по игровой системе AD&D. С Dungeon Craft вы сможете создавать игры типа SSI’s Forgotten Realms Unlimited Adventures (FRUA). Однако в Dungeon Craft возможностей больше, чем в упомянутых хитах жанра, поэтому возможно создание более оригинальных игр жанра.

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

Разработчику дается возможность меньше возиться с кодированием, давая возможность сосредоточиться на проектировании геймплея. Возможность использовать готовые скриптовые шаблоны. Прост в использовании. Создание игры происходит в большей степени визуализировано. Поддерживает популярные форматы файлов. Тулсет Blade3D позволяет создавать 3D миры в реальном времени, объединяя их. Всё редактируется и настраивается. Все инструменты связаны и вам незачем прерывать работу — полная функциональность и совместимость. Некоторые из плюсов: интерактивный редактор сцен, C# скрипт эдитор, аниматор, поддержка мульти-камеры, кроссплатформенная разработка, импорт 30 форматов графики, HLSL редактор, импорт более чем 15 форматов моделей, импорт многочисленных звуковых и видео форматов, документации, большое сообщество.

Scrolling Game Development Kit (GameDeve) — это свободный (лицензия GPL) инструментарий для разработки 2D-игр аркадного жанра. Программа разработана на стандарте OpenGL 1.2. Для успешной работы с программой необходим некоторый опыт и время на изучение особенностей программы. Но эта программа может использоваться и новичком, и даже без умения программирования. Опытный разработчик тоже может использовать данный конструктор для создания своих игр, если хочет создавать игры перетягивая объекты и щелкая кнопки, что ускоряет процесс разработки. Для опытных пользователей имеется скриптовой язык (по подобию Visual Basic), который значительно расширяет возможности. Сам движок написан на языке программирования C# с использованием Microsoft .NET Framework 2.0.

1.4 Выбор используемых инструментов Для решения задания воспользуемся конструктом игр Game Maker.

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

Игра в GameMaker строится как набор игровых объектов, поведение которых задаётся путём программирования реакции на события. Программировать можно, используя графическое представление программ. Это представление отличается от обычного, например, тем, что для того чтобы начать условный оператор, нужно перетащить на панель действия восьмиугольник с иконкой, обозначающей тип проверки, а затем, возможно, ввести какие-либо значения в появившуюся форму. Имеется в нём и скриптовый язык GML похожий на JavaScript.

Рассчитан в основном он на создание двухмерных (2D) игр любых жанров. Также подойдёт для создания различных презентаций и т. п. Начиная с 6-й версии появилась ограниченная возможность работать с 3D. Game Maker позволяет создавать 2D игры любых жанров абсолютно без знаний программирования, но имеется и возможность создавать 3D игры. Для разработки 3D игр в Game Maker’е необходимо использовать встроенный язык программирования Game Maker Language. 3D объекты могут содержать до 32 000 вершин (в GM7 было 1000).

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

Поставляются некоторые ресурсы (спрайты, фоны и звуковые эффекты), сделанные пользователями GM, которые могут быть использованы без каких-либо ограничений. Имеется возможность для работы с веб-ресурсами, чтобы создавать онлайновые игры, для чего нужны расширяющие библиотеки (32.dll).

Имеется экспортёр любых ресурсов GM. Спрайты, звуки, бэкграунды, скрипты, шрифты, временные линии, объекты и комнаты, информация об игре и глобальные настройки могут быть экспортированы/импортированы за несколько кликов мышки в специальные игровые файлs. Есть встроенная в интерфейс система обучения, которая поможет новичкам по шагам создать свою игру на Game Maker. Конструктор очень прост в освоении, например, механику платформенной 2D игры на нём можно создать за пару минут. В сети очень много примеров, уроков и движков с игровой механикой для GM. Game Maker распространяется на условиях Shareware, бесплатная версия ограниченна в функциональности, а при запуске игр показывается лого Game Maker’а. В Lite-версия GM ограничена в возможностях, она доступна для свободного скачивания. Pro-версия продаётся за 25 $, в ней включены все функции, а также возможность разрабатывать коммерческие игры. [2]

1.5 Руководство пользователя Игра представляет собой 3D шутер от первого лица. Игроку надо пройти через лабиринт при этом уничтожать врагов которые будут пытаться уничтожить игрока. Управление осуществляется при помощи клавиатуры A-налево, D-направо, Wвперёд, S-назад, пробел-стрельба также передвижение мыши вправо-влево поворот направо, налево. При столкновение с игрока с монстром у игрока отнимается здоровье. Если здоровье уменьшается до минимума, игра начинается сначала.

1.6 Разработка игры Игра представляет собой 3D шутер от первого лица. Игроку надо пройти через лабиринт при этом уничтожать врагов которые будут пытаться уничтожить игрока.

Хотя вся графика будет трехмерной, на самом деле игра будет в двумерном мире, поэтому у нас будет использована стандартная механика создания игры в Game Maker, но вместо рисования двумерной комнаты, мы создадим трехмерную графику. Создадим спрайты Рисунок 1: вертикальный и горизонтальный, игрока и препятствий. Игрок будет представлен маленьким синим диском с добавленной красной точкой в правом краю. Стены серыми прямоугольниками, препятствия синим квадратом, монстра красным квадратом, колоны черным квадратом. Во время игры они будут одеты в свои спрайты.

Рисунок 1. Создание спрайтов В директории Objekts создадим базовый объект для стен и назовем его obj_wall_bac. Этот объект станет родительским для всех остальных объектов стен. Это значительно упростит проверку столкновений и отрисовку. Объекты вертикальных, горизонтальных стен, игрока, в свойствах которого поместим события клавиатуры, мыши, столкновение со стеной и прорисовку, монстра, препятствий Рисунок 2.

Рисунок 2. Создание объектов Созданием уровень с несколькими регионами Рисунок 3.

Рисунок 3. Создаем уровень Для отрисовки стен Рисунок 4, монстра Рисунок 5 понадобятся несколько текстур. Для создания используем файлы содержащие изображения нужных нам видов. В интернете их огромное количество, но их можно создавать самим в Game Maker есть встроенный редактор изображении.

Рисунок 4 Текстура стен Рисунок 5. Текстура монстра В событии игрока Greate мы проинициализируем трехмерный режим используя следующий кусок кода: [3]

Код на языке GML:

{

d3d_start ();

d3d_set_hidden (true);

d3d_set_lighting (false);

d3d_set_culling (false);

texture_set_interpolation (true);

}

А так же управление которое осуществляется как с клавиатуры, так и при помощи мыши W — вперед, D — назад, A — поворот налево, D — поворот направо также сдвиг мыши налево поворот игрока налево, сдвиг мыши направо поворот игрока направо нажатие на левую клавишу стрельба. Для того чтобы движение не выглядело резким, его нужно сгладить или придать инерционности. Для этого в событии нажатия кнопок мы добавим действия выполнения кода:

Код на языке GML:

{

if (speed < 2) speed = min (2,speed + 0.4);

}

Спрайт — это плоское изображение. Если вы посмотрите на него сбоку, то он будет выглядеть тонким или вообще невидимым. Чтобы исправить это, мы используем код:

Код на языке GML:

{

(x — L. sin (D * pi / 180), y — L. cos (D * pi / 180))

(x + L. sin (D * pi / 180), y + L. cos (D * pi / 180))

}

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

ЗАКЛЮЧЕНИЕ

компьютерный игра game maker

В данной курсовой работе решены задачи разработки программы игрового назначения при помощи игрового конструктора Game Maker. Была разработана игра в жанре 3D шутера от первого лица.

1. Эхерн Л. Создание компьютерных игр без программирования./Пер. с англ. М.: ДМК Пресс, 2001 -304 с.

2. gmakers.ru — русскоязычное Red System Game Maker Community — в частности этому сообществу принадлежит перевод справки по Game Maker 8

3. www. game-maker.ru — создание игр. Огромный выбор примеров, исходников, уроков, статей, игр созданных на Game Maker. А также новости, конкурсы, книги, журналы из мира GM.

ПРИЛОЖЕНИЕ, А Листинг программы.

Information about object: ob_wall_bac

Sprite:

Solid: false

Visible: true

Depth: 0

Persistent: false

Parent:

Mask:

Draw Event:

execute code:

{

d3d_draw_wall (x1,y1,z1,x2,y2,z2,tex, 1,1);

}

Information about object: ob_wall1_hor

Sprite: wall1_hor

Solid: false

Visible: true

Depth: 0

Persistent: false

Parent: ob_wall_bac

Mask:

Create Event:

execute code:

{

x1 = x-16;

x2 = x+16;

y1 = y;

y2 = y;

z1 = 64;

z2 = 0;

tex = background_get_texture (bac_wall);

}

Information about object: ob_wall1_ver

Sprite: wall1_ver

Solid: false

Visible: true

Depth: 0

Persistent: false

Parent: ob_wall_bac

Mask:

Create Event:

execute code:

{

x1 = x;

x2 = x;

y1 = y-16;

y2 = y+16;

z1 = 64;

z2 = 0;

tex = background_get_texture (bac_wall);

}

Information about object: wob_player

Sprite: player

Solid: false

Visible: true

Depth: 100

Persistent: false

Parent:

Mask:

Create Event:

execute code:

{

global.camx = x;

global.camy = y;

dir_player=mouse_x;

friction=0.2

//инициализация 3D

d3d_start ();

d3d_set_hidden (true);

d3d_set_lighting (false);

d3d_set_culling (false);

//добавление тумана

d3d_set_fog (true, c_black, 16,300);

// интерполяция текстуры

texture_set_interpolation (true);

global.camsin = sin (direction*pi/180);

global.camcos = cos (direction*pi/180);

}

set the health to 100

Step Event:

execute code:

{

if (mouse_x<=dir_player)

direction+=2;

if (mouse_x=0)

direction+=2;

if (mouse_x>=dir_player)

direction-=2;

if (mouse_x=639)

direction-=2;

dir_player=mouse_x;

global.camx = x;

global.camy = y;

global.camsin = sin (direction*pi/180);

global.camcos = cos (direction*pi/180);

}

Collision Event with object ob_wall_bac:

execute code:

//добавление скольжения вдоль стены

{

x = xprevious;

y = yprevious;

if (abs (hspeed) >= abs (vspeed) && not place_meeting (x+hspeed, y, ob_wall_bac))

{ x += hspeed; exit;}

if (abs (vspeed) >= abs (hspeed) && not place_meeting (x, y+vspeed, ob_wall_bac))

{ y += vspeed; exit;}

speed = 0;

}

Keyboard Event for A-key Key:

execute code:

{

direction += 3;

}

Keyboard Event for D-key Key:

execute code:

{

direction -= 3;

}

Keyboard Event for S-key Key:

execute code:

{

if (speed > -2) speed=min (-2,speed-0.4)

}

Keyboard Event for W-key Key:

execute code:

{

if (speed<2) speed=min (2,speed+0.4)

}

Other Event: No More Health:

display message: КОНЕЦ

restart the game

Draw Event:

execute code:

{

// устанавливаем проекцию

d3d_set_projection (x, y,10, x+cos (direction*pi/180), y-sin (direction*pi/180), 10, 0,0,1);

// устанавливаем цвет и прозрачность

draw_set_alpha (1);

draw_set_color (c_white);

// рисуем пол и потолок

d3d_draw_floor (0,0,0,640,480,0,background_get_texture (bac_foor), 32,32);

d3d_draw_floor (0,0,64,640,480,64,background_get_texture (bac_ceiling), 24,24);

}

Information about object: ob_pistol

Sprite: pistol

Solid: false

Visible: true

Depth: -100

Persistent: false

Parent:

Mask:

Create Event:

execute code:

{

image_speed = 0;

image_index = 0;

can_shoot = true;

}

Mouse Event for Glob Left Button:

execute code:

{

// check whether you can shoot

if (not can_shoot) exit;

can_shoot = false;

// show the animation and play the sound

image_speed = 0.4;

image_index = 0;

sound_play (hot);

// determine what you hit

var xx, yy, ii;

xx = global. camx;

yy = global. camy;

repeat (50)

{

xx += 4*global.camcos;

yy -= 4*global.camsin;

ii = instance_position (xx, yy, ob_box);

if (ii == noone)

{

ii = instance_position (xx, yy, ob_monstr_bac);

if (ii == noone) continue;

with (ii) instance_destroy ();

break;

}

if object_is_ancestor (ii.object_index, ob_plant_bac) continue;

//if (ii.object_index == ob_box); //|| (ii.object_index == obj_door)

with (ii) instance_destroy ();

break;

}

}

Other Event: Animation End:

execute code:

{

image_speed = 0;

image_index = 0;

can_shoot = true;

}

Draw Event:

execute code:

{

d3d_set_projection_ortho (0,0,640,480,0);

//d3d_set_hidden (false);

draw_sprite_ext (pistol,-1,120,480−256,2,2,0,c_gray, 1);

draw_set_alpha (0.4);

draw_healthbar (5,460,100,475,health, c_black, c_red, c_lime, 0, true, true);

draw_set_alpha (1);

d3d_set_hidden (true);

}

Information about object: ob_monstr

Sprite: monstr

Solid: false

Visible: true

Depth: -10

Persistent: false

Parent: ob_monstr_bac

Mask:

Create Event:

set variable image_speed to 0.3

set variable image_index to floor (random (4))

Begin Step Event:

execute code:

{

if (point_distance (x, y, global. camx, global. camy) > 200)

{ speed = 0; exit; }

if (collision_line (x, y, global. camx, global. camy, ob_wall_bac, false, false))

{ speed = 0; exit; }

if (point_distance (x, y, global. camx, global. camy) < 12)

{

speed = 0; health -= 2;

}

move_towards_point (global.camx, global. camy, 1.4);

}

Draw Event:

execute code:

{

if (point_distance (x, y, global. camx, global. camy) > 240) exit;

var tex;

tex = sprite_get_texture (tex_monstr, image_index);

d3d_draw_wall (x-8*global.camsin, y-8*global.camcos, 19,

x+8*global.camsin, y+8*global.camcos, 3, tex, 1,1);

}

Information about object: ob_monstr_bac

Sprite:

Solid: false

Visible: true

Depth: -10

Persistent: false

Parent:

Mask:

Collision Event with object ob_wall_bac:

execute code:

{

x = xprevious;

y = yprevious;

if (abs (hspeed) >= abs (vspeed) && not place_meeting (x+hspeed, y, ob_wall_bac))

{ x += hspeed; exit;}

if not place_meeting (x, y+vspeed, ob_wall_bac)

{ y += vspeed; exit;}

if not place_meeting (x+hspeed, y, ob_wall_bac)

{ x += hspeed; exit;}

}

Information about object: ob_monstr_ded

Sprite: monstr_ded

Solid: false

Visible: true

Depth: -10

Persistent: false

Parent:

Mask:

Other Event: Animation End:

destroy the instance

Draw Event:

execute code:

{

if (point_distance (x, y, global. camx, global. camy) > 240) exit;

var tex;

tex = sprite_get_texture (tex_monstr_ded, image_index);

d3d_draw_wall (x-8*global.camsin, y-8*global.camcos, 19,

x+8*global.camsin, y+8*global.camcos, 0, tex, 1,1);

draw_set_alpha (1−0.5*image_index);

}

Information about object: ob_box

Sprite: box

Solid: true

Visible: true

Depth: -20

Persistent: false

Parent:

Mask:

Draw Event:

execute code:

{

if (point_distance (x, y, global. camx, global. camy) > 240) exit;

var tex;

tex = sprite_get_texture (tex_box, image_index);

d3d_draw_wall (x-12*global.camsin, y-12*global.camcos, 24,

x+12*global.camsin, y+12*global.camcos,-3,tex, 1,1);

}

Information about object: ob_plant_bac

Sprite:

Solid: false

Visible: true

Depth: 0

Persistent: false

Parent: ob_wall_bac

Mask:

Information about object: ob_pilar

Sprite: pilar

Solid: false

Visible: true

Depth: 0

Persistent: false

Parent: ob_wall_bac

Mask:

Draw Event:

execute code:

{

d3d_draw_cylinder (x, y,0,x+15,y+15,64,background_get_texture (bac_pilar), 10,10,0,32)

}

Показать весь текст
Заполнить форму текущей работой