Как сделать компьютерную игру квест
Как создать игру, ничего не умея. Часть первая: модели и анимации
Привет, меня зовут Павел, и я разработчик игр. На идею рассказать о разработке игр людьми, которые ничего не умеют, но горят желанием, меня натолкнул мой брат.
— Я придумал игру, создай мне её.
— А почему ты сам её не создашь?
— Я не умею.
И я задумался, а так ли сложно что-то создать с нынешним количеством уроков и тем по созданию игр в интернете?
С чего начать?
Для начала нам нужна идея, что за игру мы будем создавать, благо у меня была идея брата. Рассмотрим её поближе.
Думаю, что данный план вполне подойдёт для создания шедевра ААА класса =).
Начнём создавать шедевр
В первую очередь регистрируемся на сайте Unity, скачиваем и устанавливаем движок последней версии. Далее перевоплощаемся в человека, который совершенно ничего не знает о движке и о создании игр.
Идём в интернет и спрашиваем «как нам начать использовать Unity?».
Запускаем Unity Hub.
Выбираем NEW и далее 3D проект, пишем название и местоположение проекта.
И открывается сама программа.
И тут, наверное, знатоки начнут кидаться картошкой со словами «Зачем столько воды? Все и так это знают» НО! Материал предназначен в первую очередь для тех, кто ничего не умеет, а не для гуру геймдева =).
Дальше снова идём в интернет либо проходим туториал в самой программе, чтобы научиться основам работы с движком. Для того, чтобы воспользоваться туториалом в программе, нужно в окне Unity Hub нажать на строчку Learn и выбрать любой из проектов. Я советую пройти все уроки и посмотреть несколько роликов по созданию игр.
Как создать модели для игры?
Я выбрал второй вариант. Отправляемся в AssetStore. Если у вас не активировалась ваша учетная запись, повторно входим в личный кабинет. И начинаем искать подходящие паки. Я нашел то, что нужно, примерно за 3 минуты по поиску knight. В паке, помимо моделей самих персонажей, были модели окружения. Купил за 10 долларов, нажал Import, поставил все галочки, и пропала проблема, неумения моделировать. 1/4 игры готово.
Сцена
Дальше начинается самое нудное. Нужно собрать рабочую зону (scene, сцену, кому как привычнее называть).
Я привык сначала прописывать персонажей, анимацию, и прочую ненужную (очень нужную) ерунду в начале работы, а уже после того как основные механики готовы, я собираю уровень (локацию, игровую зону). Для начала давайте в сцену поставим кусок земли, на которой будет стоять наш персонаж, и начнём работать с анимацией.
Далее добавляем персонажа (рыцаря, демона, ниндзю, тяночку, или кто вам больше по душе). Персонажа берем из папки Prefabs: мы уже знаем (вспоминаем, чему нас научили во вкладке Learn), что туда сохраняют полностью готовые объекты, персонажей и так далее.
И вот он, наш герой, который будет покорять всех и вся.
Анимация
Помните в рейде «Цитадель Ночи» в World of Warcraft был босс Алуриэль? Когда она произносила заклинания, то кричала «Аннигиляция, репликация, детонация, АНИМАЦИЯ. ». Нам необходимо с криком «Анимация!» наброситься на интернет и понять, как её сделать.
Изучаю кучу материала по созданию анимации, и…, либо я дурак, либо лыжи забыл. Реально перелопатил полтора часа материала, но так ничего более-менее подходящего не нашел. Поэтому я решил объединить несколько уроков в один и собрать простой способ анимации.
Что нужно в первую очередь? По мне — так научиться ходить и бегать. Возьмём анимацию ходьбы и бега.
Теперь создаём папку Animation в Unity и добавляем туда нашу анимацию. Начинаем настройку.
Вот мы и победили нашу анимацию! УРА! Теперь нам нужно подключить её к нашему персонажу. Вперед, к финишной прямой!
Выбираем персонажа, inspector, окно Animator, и в строке Controller нажимаем на кругляшок. Появится выбор, где мы и увидим нашу Animation, выбираем её и нажимаем на кнопку Play в Unity. Если вы всё сделали правильно, то сейчас должны наблюдать как ваш персонаж стоит, и у него проигрывается анимация Idle. То есть, он стоит и немного покачивается.
С анимацией разобрались, пора включать снова человека, который ничего не умеет =)
Скрипт W A S D
Анимация у нас есть, теперь нужно заставить нашего персонажа двигаться. Покопавшись в интернете, я узнал, что можно просто добавить компонент Character Controller. Так и сделаем — тыкнем Add Component, в поиск вбиваем Character Controller и добавляем его, в строке Center выставляем Y=1 (нужно, чтобы «яйцо» покрывало всего персонажа. Если у вас получилось меньше или больше, то просто настройте его вручную).
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Move: MonoBehaviour
<
public float speed = 3.0F;
public float rotateSpeed = 3.0F;
void Update()
<
float horizontal = Input.GetAxis(«Horizontal»);
float vertical = Input.GetAxis(«Vertical»);
CharacterController controller = GetComponent ();
transform.Rotate(0, horizontal * rotateSpeed, 0);
Vector3 forward = transform.TransformDirection(Vector3.forward);
float curSpeed = speed * vertical;
controller.SimpleMove(forward * curSpeed);
Тут я немного поясню скрипт.
Верхние четыре строчки — это подключение библиотек, public class — название скрипта. Если у Вас скрипт называется Moving или что-то в этом роде, то поменяйте название. Учтите, к регистру скрипт тоже придирчив.
public float speed = 3.0F; public float rotateSpeed = 3.0F; — это скорость персонажа, настраивается по желанию. Далее идёт подключение управления Character Controller и, соответственно, анимации.
Перетаскиваем скрипт в Inspector персонажа и проверяем. It’s ALIVE.
Но есть нюанс: поворачивается наш персонаж слишком быстро и не подключена анимация бега. Скорость поворота лечится просто — выставляем в строке Rotate Speed 0.5, и наш персонаж больше не использует чит-крутилку из CS GO. Теперь сделаем, чтобы наш персонаж все-таки побежал. Снова интернет, хотя, по мне, тут можно и логически додумать, как всё провернуть, но всё же я нашел строчку кода, чтобы всё заработало. Добавляем в наш код такую строчку
Если у Вас возникли вопросы, что такое Fire3, то ответ прост: это LShift, а проверить это можно, зайдя File->Build Setting->Player Setting->Input Manager. Эту информацию также не составило труда найти в интернете.
После проверки наш персонаж при нажатии клавиши LShift сменил свою анимацию на бег, но при этом его скорость никак не изменилась. Снова уже по протоптанной дорожке идём сами знаете куда, и я снова нашел строчку кода, которая мне подошла и оказалась полностью рабочей.
В итоге весь скрипт у нас получился такого вида
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Move: MonoBehaviour
<
public float speed = 3.0F;
public float rotateSpeed = 3.0F;
void Update()
<
float horizontal = Input.GetAxis(«Horizontal»);
float vertical = Input.GetAxis(«Vertical»);
CharacterController controller = GetComponent ();
transform.Rotate(0, horizontal * rotateSpeed, 0);
Vector3 forward = transform.TransformDirection(Vector3.forward);
float curSpeed = speed * vertical;
controller.SimpleMove(forward * curSpeed);
if (Input.GetKey(KeyCode.LeftShift))
<
speed = 6.0f;
>
else
<
speed = 3.0f;
>
Всё проверили, всё работает, осталось только прикрепить камеру к персонажу. Без заморочек просто перетаскиваем Main Camera в нашего персонажа, далее её настраиваем как нам удобно, проверяем и празднуем ПОБЕДУ!
Заключение
Я считаю, что не имея никаких знаний и денег, а только немного терпения, можно самому создать свою игру. Если вас смущает покупка пака из Asset Store, то всегда можно найти бесплатные паки. Я порылся в интернете и нашел как минимум 6 ресурсов, которые их предоставляют. Советую помимо интернета начать изучение какого-либо направления гейм дева.
Все описанное в этой статье было собрано без специальных знаний с помощью интернета.
EduNeo
актуальные методики преподавания, новые технологии и тренды в образовании, практический педагогический опыт.
Лучшие онлайн-сервисы для создания обучающих игр и игровых упражнений
Игры и игровые упражнения активно используются современным педагогом на занятиях. Ниже будет представлен обзор интересных онлайн-сервисов для создания игрового контента.
Мини-курс “Инфографика на занятиях: создаем и применяем”
1. Learning Apps
LearningApps — бесплатный сервис для создания обучающих игр и игровых упражнений. Является одним из самых популярных онлайн-сервисов, которые используют в своей работе преподаватели.
Плюсы сервиса:
Недостатки сервиса:
Работа в онлайн-сервисe
1. Можно создать упражнение самостоятельно.
2. Можно переделать чужое упражнение. Есть особенность: в галерее упражнения сгруппированы по темам, а не по типам.
Инструкция по работе в LearningApps:
Дополнительные инструменты в LearningApps
Классы в LearningApps
Если вы регистрируетесь в LearningApps как учитель, то можете воспользоваться функцией “Классы”:
Примеры созданных работ
Заполни пропуски. Задание для занятия по РКИ. Автор: Дарья Голубева
Резюме
LearningApps позволяет бесплатно создавать множество интерактивного контента. Имеются удобные шаблоны. Однако обладает «устаревшим» дизайном и ограниченным функционалом в плане статистики по работам пользователям. Задания (по-мнению автора) больше ориентированы на детскую аудиторию.
Обратите внимание также на сервисы, подобные LearningApps:
Онлайн-сервис Flippity — позволяет создавать игровые упражнения на основе Google-таблиц.
Преимущества:
Варианты игровых заданий в сервисе Flippity
Варианты игровых активностей в сервисе Flippity
Онлайн-конструктора ProProfs – онлайн-сервис с большим функционалом. Можно создавать тесты, пазлы, кроссворды и т. п.
Позволяет создавать красивые тесты и опросы на основе шаблонов + доступна аналитика:
Создание теста в Proprofs
Позволяет создавать “Brain Games”:
Brain Games в ProProfs
Недостатки сервиса:
2. Онлайн-сервисы для создания викторин
Создаваемые викторины подходят для групповой и фронтальной работы в классе.
Kahoot
Один из самых известных сервисов для преподавателей — это Kahoot. Он позволяет создавать интерактивный контент для вовлечения обучающихся, использовать его как в классе, так и для самостоятельной работы слушателей.
Плюсы и возможности сервиса:
Внимание! На Kahoot появилась новая функция — Челлендж (см. ниже)
Недостатки сервиса:
Как работать:
2. Для участия викторине необходимо предоставить участникам пин-код доступа.
Сайт для прохождения игры учащимися: https://kahoot.it/
3. Можно назначить получившуюся викторину в качестве домашнего задания. Смотрим мини-инструкцию:
Фрагмент урока с использованием Kahoot
Пример организации взаимодействия с учениками на уроке с помощью викторины Kahoot:
Другие сервисы, которые позволяют создавать викторины:
Factile — онлайн-сервис для создания викторин по принципу “Своя игра” или “Кто хочет стать миллионером”.
Виды создаваемого контента в Factile
Плюсы:
Минусы
Мини-инструкция по созданию викторины (на англ. языке):
Пример викторины на русском языке:
Викторина на русском языке в Factile
Резюме
Есть разнообразные онлайн-сервисы для создания викторин/опросов/ игр по типу “Кто хочет стать миллионером”. И взрослые ученики, и дети очень любят подобного рода активности. Создание викторин в подобных сервисах не займет много времени. Также для создания викторин подойдут Google-формы.
3. Онлайн-сервисы для создания мини-игр.
Российская разработка – Umaigra. Проект позволяет создавать дидактические игры с использованием прототипов.
Примеры игр
Пример игры, созданной в Umaigra
Плюсы и возможности:
Недостатки:
2. UI Class, который включает себя:
Интерфейс для учителя. UI Class
Интерфейс ученика
3. В UI Editor создаем несколько игр согласно предложенным прототипам.
Выбор прототипа для игры
Видеоинструкция по созданию игры:
4. После создания нескольких игр учитель может:
Резюме
Umaigra – интересная российская разработка, в которую добавляется новый функционал. Сервис пока полностью бесплатный.
А как создавать онлайн-тесты и интерактивные рабочие листы для учеников?
Вебинар “Тесты на занятиях: принципы создания, основные ошибки и онлайн-сервисы”
Сиди дома и делай игры: программы и игры, которые помогут вам стать разработчиком
Самоизоляция продолжается и на мой взгляд это хорошее время для того чтобы заняться творчеством. Например, создать свою игру. В этом блоге я расскажу о программах, которые помогут вам стать начинающим разработчиком прямо на дому.
Конструкторы игр и движки
Game Maker Studio 2
Для того чтобы понять, подходит вам программа или нет, скачайте демо-версию и посмотрите уроки создания игр на сайте разработчика.
Clickteam Fusion 2.5
ClickTeam это яркий пример программы, в которой вместо программирования обычного пользователю предлагается программирование визуальное. Это по сути перетаскивание различных иконок и значков, кликание по различным пунктам и установка условий. У такого подхода масса подводных камней, но это не мешает многим разработчикам делать свои игры в ClickTeam.
GDevelop
Godot
Бесплатный движок, который поддерживает комьюнити. Поддерживает самые разные платформы и идеален для тех, кто не хочет платить, но хочет мощный инструмент для работы с 3D и 2D. А еще это вероятно единственный подобный движок, имеющий простую настройку управления в игре.
Love2D
Стоит отметить, что среди современных разработчиков очень популярен язык Lua. Если вы решите его изучать, не забудьте попробовать поработать в среде Love. Это open source проект, для увлеченных програмированием людей. Стоит помнить, что это не конструктор игр, а фреимворк, который тем не менее поможет в их создании.
Defold
Но если Love для вас слишком сложен, есть смысл попробовать Defold от компании King, известной своими мобильными хитами. Defold значительно упрощает создание игр, а его мощности вполне хватит на типичную инди или мобильную игру. Желательно знание языка Lua, хотя для простой игры хватит и нескольких руководств.
Когда вы запустите Defold, вам предложат скачать примеры поэтапного создания игр. К сожалению, они на английском языке, но разобраться в них не сложно не сложно. А после вы можете скачать готовые игры и посмотреть как они устроены. Defold сегодня весьма популярен за счет того, что работать в нем можно очень быстро и эффективно, при этом он полностью бесплатен и имеет большое дружное сообщество, где ответят на практически любой вопрос.
Движки, для работы с 3D
Я не люблю движки, которые заточены под 3D. Во многом потому что за фасадной простотой скрывается куча сложных для понимания и изучения вещей. Но не упомянуть такие движки в этом блоге нельзя.
Естественно, это далеко не все 3D движки, но я выделил лишь их.
Программы для создания спрайтов и анимаций
Я настоятельно рекомендую знакомиться с программи через триал-версии, дабы не накачать вирусов.
Пиксельарт
Pixelformer и спрайт из Hotline Miami
Программа для создания ярлыков Pixelformer позволяет рисовать крутые пиксельные арты и детально изучать чужие работы. Если вам нравиться стиль какого-нибудь художника- закиньте его рисунок в PixelFormer и посмотрите его работу в деталях. Я думаю вы будете поражены всей сложностью пиксельных рисунков.
Не поленитесь и поищите программу сами, их много. Главное не используйте Paint, он для этого плохо подходит.
Скелетная Анимация
Spriter Pro
Многие игры сегодня используют продвинутую скелетную анимацию, которая у многих геймеров вызывает устойчивую ассоциацию с мобильными играми. Но на самом деле скелетная анимация это очень крутая вещь, позволяющая создавать очень сложные и “живые” арты. Наиболее продвинутой в этом плане я считаю программу Spriter Pro, которая несмотря на наличие ряда проблем и платных дополнений, вполне пригодна для серьезной работы.
Альтернативой платным программам может быть Dragon Bones, в котором есть все тоже самое, но при этом нет платных материалов. Также программа может быть использована для создания моушн-комиксов.
Blender
3D Coat
Игры, в которых можно создавать игры
Как ни странно, создавать игры можно в некоторых играх. Например, Dream на PS4 это настоящий прорыв в песочницах, предлагающий игроку интуитивное и простое управление, дающее неограниченные возможности. Хотя это и консольная игра, она дарит игроку возможности, аналогичные для ПК-программ: можно лепить скульптуры, изменять их размеры, возводить здания и создавать ландшафты. Игру абсолютно любого жанра можно создать с помощью геймпада! Игра закономерно получила высокие оценки, но на ПК её к сожалению нет.
Зато на ПК есть безумно популярный онлайн проект Roblox, в котором тоже можно создавать свои игры. Roblox невероятно популярна в США и соперничает даже с Minecraft, в России же игра не слишком известна. Важно отметить, что Roblox дает возможность создателям своих игр зарабатывать, что выделает её на фоне других игр, в которых контент создают сами игроки.
Главное, из-за чего писался этот блог
Не отказывайтесь от бумаги и ручки, возможно именно они помогут вам нарисовать нечто уникальное. Не забывайте лепить руками и не считайте плохой идеей собрать уровни своей игры из конструктора или кубиков. Так вы не просто посмотрите на свою работу по-новому но и будете развивать свое творческое мышление.
Спасибо за внимание.
Очень интересный материал, однозначно лайк. Попробую на днях Spriter Pro, поскольку с Live2D как-то не срослось.
Tellery Spyro-Cynder Mix Как по мне, Dragon Bones лучше Просто Spriter Pro более популярен и у многих с бандла остался
NightGameMassacre Тогда его тоже попробую.
Sioux123 Я наверное скажу уже далеко не в первый раз, но раньше в играх было больше души, игроки это чувствуют.
Tellery Spyro-Cynder Mix Да, дружище, согласен полностью. Я сейчас, попутно, играю в англоязычные текстовые игры от Спекки. Вспоминаются 90-е годы. Снова рисую карты, исследую миры. Как же мне нравились эти адвентюры. Очень был удивлен, когда запустил эмуль на полный экран, предварительно настроив его. Думал, что будет размазня на современном монике. И каково же было мое удивление, когда увидел четкий текст на экране. А как же снова интересно вспоминать Бейсик. Что-то уже подзабылось. Но когда все снова получается, вызывает просто щенячий восторг. Не знаю как другие, но я всегда вспоминал Спекки с теплотой и благодарностью.
серию rpg maker от еnterbrain нужно тоже иметь в виду.
самый простой движок наверно Raycasting Game Maker не требует никаких особых познаний кроме рисования человечков в пейнте. (хотя я пек-пек так и не понял как упаковывать много уровней) вот оно как раз сиди дома и жди конца света а всякий гобот оно па моему слишком сложнае. был еще какой та 3д движок без программирования для уровня игр квейк 3 арена. но как бы то с ним думается возни значительно больше.
Теперь я знаю, откуда в гуглплей так много говна, спасибо.
Давно искала, что то подобное! Автору респект! Думаю здесь любой сможет что-то для себя подчеркнуть.
отлично! автору респект! несколько программ скачал. буду изучать. а то надоели Source, Construct 2, Unity, UE.
Странно что не написал РПГмейкер. Вполне себе норм.
Ещё нужно озвучивать игру, музыку добавить.
мaша Музыка не проблема, поскольку есть библиотеки royalty free треков и их используют даже опытные разработчики. Куда хуже дела обстоят со звуками.
NightGameMassacre Музыка самое главное, если авторская игра. Звуки можно где нибудь насобирать или насинтезировать.
вот это реально интересный материал! автору влепил лайк!
Сори, Для музыки Garageband
Для 3д моделей думал самый популярный это zbrush.
teoXXX Он на равне с 3д котом.
Использую RenPy, хотя и не совсем стандартно.
Теперь ждем наплыв иди игр от отечественных хоумстудий)
Есть знакомые игроделы, которые перешли с Unity на Defold и визжат от счастья. Причем реально серьезную игру делают.
NightGameMassacre GMS 2 и MMF 2.5 тоже платные. GMS 2, как по мне, тоже не стоит своих денег. Это уже чисто индивидуальные предпочтения и мнения проо цену и удобства. Но исключать его из списка, неправильно. Тем более, что так же, имеет развитое русскоязычное комьюнити.
sem6666 Сегодня почти все движки имеют русскоязычное комьюнити. Если бы этот блог был про движки вообще, я бы обязательно упомянул его и кокос, а заодно геимсалат и прочие веселые вещи. Но я писал о самых доступных и выгодных движках. GSM2 есть в стиме и получает скидки. CT тоже. По ним не раз были бандлы. Их приобрести проще. У Конструкта же замороченный ценник. Не то что бы я считал его плохим, просто он стоит дорого. Возможно, если я все таки допишу блог о том, в каких конструкторах сделаны популярные инди игры, он там будет.
годный пост. Автор, если не сложно, запили такой же толковый пост про видеоредакторы и конверторы
И не одной ссылки, ну что за люди.
Джонни Фест А зачем? Просто вбиваешь в поиск название и рядом слова official site. Можно еще искать на гитхабе. Сайты могут поменяться, их могут заблокировать и т.д. Лучше искать самому, главное качать с официальных ресурсов. Anefion Я в них не разбираюсь к сожалению и не уверен что это тематика сайта. Лично я пользовался OpenShot Video Editor для монтажа видео.
_access_denied Были в прошлом блоге в разделе про анимацию, Hammer это инструмент для создания карт. мaша Музыку можно нарыть, а вот хороший звук часто просто негде создать