Найти в Дзене

Алгоритм создания компьютерных игр с помощью специальных программ

И так, чтобы создать компьютерную игру, нам понадобятся специальные программы, коих огромное множество. Поэтому я начал выбирать жанр для своей игры и отталкиваться от него на программное обеспечение. Мой выбор пал на эти 4 программы — Unity, Black Ice Mod, Unreal Engine, CryEngine. Протестировав все, самым оптимальным вариантом оказалась программа CryEngine. в ней я и попытаюсь создать игру. Игра будет создана под жанром хоррор-шутер. Установив программное обеспечение и дополнительные компоненты к нему, я перешел к созданию компьютерной игры. 19 2.2 Процесс создания компьютерной игры 2.2.1 Создание ландшафта И так первое с чего я начал, открыв программу это создание ландшафта. Начиная работать в программе, передо мной появилась клетчатая поверхность, на ней ничего не было, поэтому я начал думать какую локацию можно выбрать. Локацией может быть — остров, бесконечно расширяющийся мир, город и прочее. Я решил создать остров, потому что, если игрок додумается дойти до конца карты, он упрется в воду. (рис. 1), (рис. 2). Когда у меня получилась локация похожая на остров, я начал скульптирование ландшафта, тоесть добавление возвышенностей, впадин, гор и. т. д. (рис. 3), (рис. 4). После того как у меня получилось создать нужный мне ландшафт и поделить локацию на 3 части, (для того чтобы перед игроком был выбор пути), я перешел к текстурированию моего острова. 2.2.2 Текстурирование И так закончив скульптировать остров, я перешел к текстурированию ландшафта, тоесть наложение изображения травы, песка, камней и прочего. Текстурировать. я стал методом рисования. взяв инструмент кисть и выбрав нужное изображение на начал накладывать его на остров, ближе к воде я разместил песок и камни, а дальше от песка и воды я начал накладывать зелень. (рис. 5), (рис. 6), (рис. 7). 20 Наложив все нужные изображения на поверхность ландшафта, я остался доволен результатом и решил приступать к созданию дороги, по которой будет ориентироваться игрок. 2.2.3 Создание дороги Чтобы начать создавать дорогу, надо понять откуда и куда будет двигаться игрок. Определившись с точкой спавна, (начальная точка, откуда будет двигаться игрок в начале игры) я начал прокладывать от нее дорогу до конечной точки, где будет заканчиваться игра. (рис. 8), (рис. 9). 2.2.4 Добавление растительности Окончив начальные этапы игры, я начал добавлять растения, чтобы карта не казалась пустой и выглядела красиво. Первым этапом я начал добавлять траву (рис. 10), а затем деревья. (рис. 11). Закончив добавлять растения, карта начала выглядеть более привлекательно. 2.2.5 Настройка освещения Освещение нужно не только для того, чтобы игрок смог разглядеть сцену (хотя это очень важно). Свет влияет на эмоции. Многие приемы освещения в театре, кино и архитектуре используются для усиления эмоциональной составляющей. Связь между картинкой и эмоциональным откликом дает еще один мощный инструмент, который помогает работать с персонажем, нарративом, звуком, игровыми механиками и так далее. При этом взаимодействие света с поверхностью позволяет влиять на яркость, цвет, контрастность, тени и прочие эффекты. В моей игре я решил сделать темное время суток, чтобы задать атмосферу мрачности и ухудшить видимость игроку для повышения сложности игры. Во время темного 21 времени суток. Важно, чтобы игрок не потерялся в темноте. поэтому я добавил на всех участках пути искусственные источники света, которые будут служить указателями. к концу игры. (рис. 12), (рис. 13). 2.2.6 Добавление строений. Архитектура Еще одним шагом для создания моей компьютерной игры стало создание строений. Из строений подразумеваются машины, дома, перегородки и. т. д. Архитектурные и инженерные строения — обязательная часть человеческой культуры: с их помощью люди организуют пространство в соответствии со своими нуждами. Здания помогают структурировать пространство и разделить человеческий мир от дикой природы. (рис. 14) 2.2.7 Враги Для создания шутера необходимым этапом является добавление неигровых персонажей и желательно враждебно настроенных против вас, иначе вам попросту может не понравится игра из-за того, что не будет тех, с кем нужно сражаться. Поэтому я приступил к добавлению в игровой процесс врагов. Для начала я создал зону, где неигровой персонаж сможет свободно передвигаться и атаковать нас, а затем я начал добавлять самих врагов. (рис. 15), (рис. 16). 2.2.8 Тестирование Окончанием моей работы над игрой будет последний этап — тестирование. На этапе тестирования я проведу проверку на работоспособность игры и выявления 22 ошибок, багов и прочих недочетов. Запустив тестирование и проверив, что недочетов нет я завершил работу над моей компьютерной игрой. 2.1 Демонстрация компьютерной игры Закончив работу над компьютерной игрой я бы хотел провести её краткую демонстрацию, чтобы подтвердить гипотезу моего проекта. 23 Заключение Подводя итоги моей работы, можно сделать вывод, что мы рассмотрели историю возникновения, развития компьютерных игр, рассмотрели процесс создания компьютерных игр и начиная создавать свою собственную игру, мы выбрали для себя П. О. отталкиваясь от жанра нашей игры, начали создавать игру и демонстрировать процесс её создания. и наконец, продемонстрировали готовую, рабочую компьютерную игру, тем самым подтверждая гипотезу о том, что, не имея опыта в данном виде деятельности, можно создать свою компьютерную игру. В процессе выполнения проекта я получил довольно много нового опыта в данной отрасли и могу сказать, что создание компьютерных игр и вправду очень трудоемкий процесс, который отнимает большое количество времени и сил. Я надеюсь, что созданный мной алгоритм поможет начинающим задать точку, с которой они будут начинать создавать игру. Для меня процесс создания игры показался довольно сложным и не понятным, но, погрузившись в эту тему сполна, я начал легче осваиваться в П. О., устранять разные возникающие ошибки и легче запоминать и обрабатывать полученную информацию. Перед созданием своей первой игры не думайте, что у вас получится все с первого раза, это не совсем верный ход мыслей. Наоборот, на вашем пути будет много чего не получаться. из-за этого вам может показаться, что вам не удастся создать игру, но не стоит бросать все на пол пути, может быть, решение вашей проблемы прямо у вас под носом. Таким образом, в ходе проектной деятельности, мной успешно был реализован план выполнения работы. Цель и задачи, поставленные в ходе работы, были выполнены. Я создал рабочую компьютерную игру, хоть и не в полной мере. Надеюсь, что вам понравился данный проект. Мало кто знает, но становлению современных компьютеров, а также повсеместному внедрению и развитию программирования мы обязаны играм. Безусловно, это не единственная причина, по которой человек начал модернизировать вычислительную машину, расширяя её возможности, но это одна из причин. Благодаря развитию игр были изобретены контроллеры и самый первый из них — компьютерная мышь. Игры росли и развивались, рос спрос и интерес общественности, а вместе с тем и требования к конфигурации устройств. Многие современные разработки, которые используются в программных кодах, включая нейронные сети, берут своё начало в примитивных компьютерных играх прошлого. 1.1.2 50-е годы XX века Компьютерные игры берут свое начало в 50-ые года двадцатого века. Но точно сказать, кто же является их первоначальным создателем, сказать весьма трудно. История знает трех человек, которые предположительно стали прародителями современных компьютерных игр. Первым из этих людей является инженер Ральф Баэр, который в 1951 году предложил общественности идею интерактивного телевидения. Второй предположительный праотец — А. С. Дуглас. В 1952 году им была написана игра, получившая название «ОХО» или по-русски «крестики-нолики». И, наконец, третья личность, положившая начало компьютерным играм — Уильям Хигинботем. В 1958 году он создал компьютерную игру «Теннис», в которую могли играть сразу два человека. 9 1.1.3 60-е годы XX века В 1960 году компанией Digital Equipment Corporation был выпущен первый компьютер серии PDP. Он получил название PDP-1. Спустя 2 года, в 1962 году для него была разработана первая компьютерная игра — Space War. 1.1.4 70-е годы XX века В 1970 году Дуглас Энгельбарт получает патент на первый в мире компьютерный манипулятор — компьютерную мышь. 1975 год стало годом проявления интереса к компьютерным играм со стороны общественности. Уильям Кроутер создает игру, которая является прообразом приключенческого жанра и называет ее Colossal Cave Adventure. Данная игра распространяется моментально через сеть ArpaNET. Начиная с 1977 года, различные разработчики выпускают все больше и больше новых компьютерных игр, которые в последствии значительно ускорят развитие персональных компьютеров. 1.1.5 80-е годы XX века В 80-е годы в связи с заметным удешевлением домашних компьютеров, рынок компьютерных игр начинает быстро расти. Появляется множество компаний, занимающихся исключительно разработкой игр. Компания Namco выпускает знаменитую игру Pac-Man, суть которой сводилась к управлению круглым существом, которое должно было собирать разбросанные по лабиринту точки, уклоняясь от врагов. В 1987 году появился видеоадаптер VGA, а следом SVGA. Теперь на мониторах стало 256 вместо 16 цветов, что естественно сделало игры более красочными и относительно похожими на современные. 10 1.1.6 90-е годы XX века Начинания с 90-х бум компьютерных игр стал только набирать обороты, а индустрия получила толчок к интенсивному росту. 10 декабря 1993 года компания Id Software выпустила культовую игру, заложившую основы жанра шутер — Doom. В 1994 году появилась Rise of the Triad — первая игра с мультиплеером. А вслед за ней — The Terminator: Future Shock — первый шутер с элементами трехмерности мира и врагов, а также свободным обзором при помощи мышки. В 1996 году на свет появилась Voodoo I — первая видео карта с поддержкой 3Dграфики. В этот период были выпущены игры Duke Nukem 3D и Quake — первые полностью трехмерные игры. Также в этом году появились такие игры, как Super Mario, Command & Conquer: Red Alert, Tomb Raider, Resident Evil, Diablo и многие другие. В 1998 году были изданы знаменитые Half-life и StarCraft. Игры не теряющие популярности до сих пор, спустя уже 19 лет! Впрочем, данная ситуация характерна для многих хитов прошлого, которые сейчас многие называют классикой. 1.1.7 XXI век В первом десятилетии 21-го века игровая индустрия продолжила двигаться вперед. Ежегодно выпускались тысячи игр, расходящиеся по всему миру миллионами копий. Наиболее успешные из них принесли разработчикам сотни миллионов долларов. Одним из рекордсменов по кассовым сборам стала игра Call of Duty Modern Warfare 2. 11 1.1.8 Итоги Всё вышесказанное подтверждает, что развитие компьютеров тесно связанно с развитием игр. Именно им мы обязаны появлением мощных видеокарт, процессоров, росту объемов доступной оперативной памяти. О значении компьютерных игр можно рассуждать бесконечно. Эта перспективная индустрия продолжает развиваться и сегодня, переходя на новые уровни, покоряя большие высоты. Уже сейчас некоторые игровые проекты включают в себя VR и ARразработки, новые возможности нейронных сетей и многое другое. 1.2 Процесс создания компьютерных игр Многие люди, играющие в компьютерные игры, даже не представляют себе, сколько трудов и творческих идей вложено в каждую отдельно взятую игру. Создание игры это — продолжительный и трудоёмкий процесс, состоящий из самых разнообразных этапов, включающий в себя как технические, так и творческие моменты. Вот поэтому, в большинстве своём, игры создают не отдельные личности, а целые команды разработчиков. Каждый отдельный человек в команде — специалист в своей области знаний. 1.2.1 Цель Первое, что нам понадобится - это определиться с нашей целью. Что в итоге мы хотим получить? Если хотите, чтобы ваша игра «выстрелила», нужно для начала точнее прицелиться, а не бить наугад. Этапом концепции и определения цели занимается руководитель проекта. 12 На первом этапе руководитель проекта также должен определиться с жанром. По сути, это вообще фундамент каждой видеоигры, который в процессе разработки может обрастать дополнениями. Тем не менее полностью менять жанр посреди производственного процесса глупая затея, проще будет начать создание с нуля. Также на первом этапе нужно определиться с сеттингом. Сеттинг — это разновидность стилистик или виртуальных миров, к которым принадлежит проект. Например, фэнтези, sci-fi, стимпанк, постапокалипсис, анимэ, Вторая мировая война и еще масса других вариантов. Когда разработчики поставили перед собой цель, определились с жанром и сеттингом, они могут идти дальше. Создание игры в популярном сеттинге обеспечивает её собственную популярность, да и игроки чувствуют себя уютно и комфортно в уже знакомом мире. Некоторые игры создаются в своих уникальных сеттингах или в необычных сочетаниях стандартных тем. Такие игры менее популярны, но, тем не менее, они имеют свою аудиторию особых игроков, которые терпеть не могут шаблонность и однообразие. 1.2.2 Средство Цель игрового проекта задана, теперь нам нужно выбрать средства (материалы и инструменты) для её достижения. И тут мы сталкиваемся с необычным феноменом компьютерного мира — и материалом, и инструментом игрового проекта является одна и та же сущность — программный код. Код как строительный материал — это цифровые изображения, трехмерные модели, звуки и тексты в виде последовательностей единиц и нулей. Код как инструмент — это команды в строчках программного кода, управляющие игровыми объектами всех перечисленных типов. Первым делом разработчики определяются с языком программирования, который и будет основным инструментом для разработки игры. Этим занимается 13 команда программистов, которая должна в зависимости от жанра и сеттинга подбирает подходящий язык программирования. С его помощью создатели начинают оперировать двухмерными и трехмерными объектами в игре, а также привязывают к нему изображения, видео и звуки. Язык программирования словно нить с иголкой помогает сшить все элементы будущей игры воедино. Также важной частью инструментов для разработки является движок. Сегодня уже никто не делает игры используя исключительно один язык программирования, потому что есть готовые модули, которые и называются движками. Они содержат в себе базовый функционал, который упрощает разработку, но чтобы слепить из готовых инструментов стоящую игру, придется писать много кода. Собственно, это и отнимает больше всего времени в процессе разработки. Применение игровых движков ещё не освобождает нас полностью от использования услуг программистов, но сводит их к минимуму. Стандартный программный модуль ещё придётся настроить под себя, добавить в него что-то своё, чтобы игровой проект получился более уникальным. 1.2.3 Игровая механика Самая важная творческая часть любой игры — игровая механика. Эта вещь находится не на поверхности, поэтому часто ускользает от взгляда невнимательных ценителей игр. Молодые подростки (основная часть игровой аудитории) в большинстве своём оценивают игры по качеству графики, и не замечают, что красивые игры хоть и популярны, но их популярность длится всего несколько месяцев после релиза. А в сердцах игроков и в золотых списках вечной игровой классики навечно остаются совсем другие игры, может быть немного неказистые на вид, но имеющие потрясающе захватывающий геймплей. Чем разнообразнее и интереснее игровые 14 возможности, тем дольше игрок остаётся в игре. Например, за что получила всеобщую любовь «MineCraft»? Уж точно не за примитивную кубическую графику, а за то, что эта игра дарит поистине безграничные игровые возможности. Если представить игру в виде автомобиля, то его механика — это все основные системы внутри конструкции, которые заставляют транспортное средство двигаться и выполнять какие-то задачи. Вряд ли вы сильно обрадуетесь, если машина будет иметь потрясающий внешний вид, но из-за кривой механики во время езды ее постоянно будет вести то влево, то вправо. Именно поэтому механику в играх всему голова. Что касается реализации игровой механики, то все начинается с программирования объектов, к которым относится главный герой и другие модели. Далее идет программирование управления и написание физического движка. Второй, как правило, отвечает за движения объектов, которые происходят без воздействия на них игрока. И, наконец, разработчики садятся за написание искусственного интеллекта (ИИ), который помогает оживить NPC, врагов и прочих персонажей в игре. 1.2.4 Уровни Правила игры в виде игровой механики готовы, теперь нам нужно создать площадки, где эти правила начнут работать. Созданные игровые объекты расставляются в отдельных виртуальных пространствах — уровнях (локациях). Игры чаще всего содержат множество отдельных уровней, переход между которыми происходит по ходу сюжета. Но в последнее время, благодаря возросшей производительности компьютеров, выпускаются игры с одним большим цельным миром, лишь условно разделяемом на различные локации (GTA, Skyrim). 15 Как правило, созданием уровней занимаются левелдизайнеры. Причем сотрудников на эту должность берут из числа заядлых геймеров. Только человек, который регулярно играет, может понять, как от перемещения главного героя и объектов в конкретной локации будут меняться игровые ситуации. Все это прорабатывается до мелочей, так что не думайте, что уровни создаются на скорую руку, лишь бы сделать красивое оформление. Над каждым участком игры работают профессионалы и это занимает кучу времени. 1.2.5 Оформление Далее начинаем обтягивать голый каркас игры украшением в виде графики. Созданием графики занимаются художники, геймдизайнеры. Конечно, если Вы разрабатываете простенькую 2D-игру, то Вы сами можете изобразить что-нибудь из пикселей, но в более серьезных и крупных проектах лучше нанять профессиональных художников и дизайнеров. Только после того, как у проекта уже появилась механика и базовые модели уровней, разработчики садятся за графику. Им нужно украсить блеклые формы красивой картинкой, чтобы подчеркнуть сеттинг проекта и в игру было приятно играть. Изначально дизайнеры рисуют арты, которые кучу раз переделываются или улучшаются. Когда появляются окончательные варианты артов, в дело вступают люди, которые занимаются 3D моделированием. Они создают виртуальные модели на основе рисунков. Далее разработчики делают анимирование 3D моделей, которые ранее были созданы, и переходят к завершающему этапу создания графики. На нем нужно сделать фоны для уровней, добавить какие-то спецэффекты и украсить игровое меню. Когда все наконец-то будет готово можно двигаться дальше. 16 1.2.6 Сюжет Как правило, уже после создания «костяка» игры и графической составляющей создатели переходят к сюжету. Чтобы проект купили, он должен быть интересным, и поэтому с каждым годом на эту составляющую игры делают все больший акцент. Есть студии, которые изначально придумывают сюжет и прописывают его до мельчайших деталей, а потом уже садятся за разработку. Такой вариант тоже возможен, и он работает, но большая часть игр все же делается по старинке, сразу со скелета, а потом уже добавляют какой-то сюжет. Если вы думаете, что на этом этапе достаточно придумать историю и как-то подвязать под нее игру, то ошибаетесь. Разработка сюжета включает в себя реализацию диалогов, видеовставки, заскриптованные сцены, случайные события в игре и даже изменение повествования в зависимости от действий игрока, если это предусмотрено игрой. 1.2.7 Звуковое сопровождение Какой бы красивой и увлекательной не была игра, если в ней нет звука, то вы вряд ли задержитесь в ней дольше, чем на пару минут. Последний этап процесса разработки включает в себя создание звуковых эффектов. Они не просто помогают услышать игру, а могут положительно сказаться на ощущении атмосферы. Опытные разработчики делают невероятные вещи со звуком, которые помогают их проектам громко выстреливать на этапе продаж. Кроме звуковых эффектов, также записывается музыка и делается озвучка персонажей. Без этого тоже никуда, и часто богатые студии даже привлекают известных музыкантов или актеров на это дело. В итоге в игре могут звучать песни вашей любимой группы, либо какой-то персонаж заговорит голосом популярного 17 голливудского актера. Когда в проекте появляется звук, он практически завершен, но разработчикам нужно решить последнюю задачу, от результата которой напрямую зависит успех игры. 1.2.8 Тестирование Практически за каждый вышеописанный этап отвечает отдельный человек или группа людей. Игры всегда создаются по частям, параллельно с завершением определенных ее кусочков программисты собирают из всего этого полноценный пазл. После того, как они накинут на проект звук, можно перейти к этапу тестирования, который часто доставляет больше всего проблем. На этом этапе финальная версия проекта переходит в руки тестировщиков. Им нужно месяцами проходить один участок игры за другим и выискивать в нем ошибки. Каждая игра — это огромный проект, над которым работают десятки, а то и сотни человек, поэтому проблем в них куча. Задача тестеров отловить большинство из них и отдать отчет программистам, чтобы те исправили ошибки. Именно большинство, ведь избавиться от всех багов невозможно. Не было еще ни одной игры, которая на релизе была бы идеальной. Такой ее может сделать только качественная поддержка от разработчиков в будущем. 1.2.9 Продажа игры Когда проект наконец-то готов или находится на завершающей стадии разработки, в дело вступает издатель. Его основная задача заниматься рекламой, локализацией и выбором площадок для продажи проекта. Если игру делает индистудия, то этим она занимается самостоятельно, потому что у нее либо ограниченный бюджет, либо его нет. Издатель же дает деньги на реализацию в самом начале разработки, поэтому он так важен для создателей видеоигр. 18 Пожалуй, самая сложная задача — это выбор способа распространения игры. Дело в том, что сегодня есть множество онлайн площадок с играми и с каждым годом их становится все больше. У всех этих Steam, Origin, Epic Store и прочих виртуальных магазинчиков своя аудитория и свои правила для разработчиков. При этом именно издатель выбирает с кем сотрудничать, чтобы ему было выгодно, и потом игра может появиться либо только в одном магазине, либо во всех сразу. Естественно, не обходится без физических носителей, но их выпускают только если проект популярен и его делает крупная компания. Инди-игры на дисках вы не увидите, их можно купить только в онлайн магазинах, есть пара исключений, но они появляются только в том случае, если проект от независимых разработчиков стал известен во всем мире. Чтобы заработать еще денег, выпускают тираж дисковой версии.