Как вы начинаете разработку игры? [закрыто]


28

Когда вы начинаете новый игровой проект, что вы делаете в первую очередь? Как вы начинаете? Что дает вам лучший старт для завершения проекта, а не для того, чтобы его выгореть, пока он никуда не добрался?

Моды, пожалуйста, помогите с тегами ... Я понятия не имею, как классифицировать это ... :)

Ответы:


27

Прототип. Попробуйте реализовать свою игровую концепцию, используя какой-то инструмент быстрой итерации. Попробуйте python или просто простой в работе API-интерфейс с открытым исходным кодом, чтобы запустить свою «идею игры». Постарайтесь максимально упростить, используйте шарики вместо персонажей, понизьте визуальное представление. Таким образом, вы всегда можете посмотреть на это, обсудить это, обсудить это и дать обратную связь. Поставьте установленную шкалу времени для каждого прототипа (может быть, 2 дня, может быть, неделя вершин?). Таким образом, вы получаете только столько, сколько хотите в прототипе.

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

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

Я надеюсь, что эти несколько советов помогут :)


7
Во время прототипов старайтесь убирать все, что кажется невеселым, пока у вас не появятся только забавные вещи.
Тон

1
самый быстрый двигатель-прототип - это все еще ручка и бумага :)
oberhamsi

28

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

Лучшее средство для этого - безжалостно ограничивать ваши возможности. Вместо того, чтобы говорить "как мне сохранить энергию, достаточную для завершения длинного проекта?" вместо этого вы должны сказать: «Как мне спроектировать достаточно короткий проект, чтобы я мог закончить его до того, как мне надоест?»

Мероприятия "Game jam" (игры типа "сделай игру в выходные") - отличный способ начать, и они хороши для формирования хороших привычек при создании быстрых прототипов. В WORST вы проводите выходные, делая паршивую игру ... вы, вероятно, чему-то научились в процессе ... И вы сэкономили месяцы работы над идеей, которая в итоге оказалась не такой крутой, как вы думали изначально. В лучшем случае вы обнаружите, что у вас есть что-то действительно особенное, и можете начать добавлять небольшие функции по одному, пока у вас не появится полнофункциональный проект.

В моих собственных небольших проектах для хобби, я также обнаружил, что помогает мне начать с полного списка всех известных задач разработки, которые необходимо выполнить, упорядочить и уменьшить, чтобы каждая отдельная задача была выполнимой и тестируемой в От 30 до 60 минут, топы. Очень энергично выполнить маленькое задание, увидеть, как оно работает в игре, и вычеркнуть его из списка ... что значительно повышает вероятность того, что я сделаю следующее в списке, так как последний был так легко, а потом следующий ... вроде как есть чипсы.

Еще один совет: всякий раз, когда вы успешно внедряете новую функцию, делайте резервную копию (или используйте контроль исходного кода, который в основном одно и то же, но не все используют контроль исходного кода, если только они работают над собственным проектом). Таким образом, если вы полностью испортите код в 2 часа ночи и не сможете понять, как вернуть его в рабочее состояние, проект не будет мертвым и его не нужно будет перезапускать с нуля; вместо этого вы просто возвращаетесь к последнему завершенному и рабочему этапу и попробуйте снова.


4
+1 на этот пост, его хороший совет. Сфера является убийцей проекта.
Подчеркнутое

12

Я бы сказал, что действительно важно всегда иметь что-то показывающее.

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

Я думаю, что первым является восходящая разработка; работа от фреймворка до фактического контента, а второй сверху вниз; работать от получения некоторого контента и наращивания оттуда.

Небольшое замечание, но то, что действительно помогает.


10

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


3
Оригинальный подход, +1.
topright

6

Однажды я работал над проектом, который, казалось, делал все правильно. Они создали веб-сайт / доску объявлений для всех, кто работает над проектом для совместной работы. Они предоставили всем конкретные сроки и цели, и сама игра была хорошей концепцией. Несмотря на это, людям потребовалось всего около 2 месяцев, чтобы начать уходить с карты. Через 3 месяца разработка была закончена и игра так и не была завершена.

Так что, если вы работаете в команде, я думаю, вам нужен стимул. Вам нужно, чтобы кто-то постоянно общался со всеми, чтобы быть уверенным, что они делают работу, и напоминать им, почему они хотят продолжать делать это.

Если ты работаешь один; Я не слишком уверен. Я ужасен с художественными работами и т. Д., Поэтому я в основном концентрируюсь на стороне двигателя вещей. Этого всегда достаточно, чтобы заинтересовать меня :)

Разработчики всегда скажут вам не переходить на новые области, пока вы не закончите ту, над которой работаете сейчас. Если вы пытаетесь создать игру самостоятельно, я не думаю, что это слишком отвратительно, если вы решите нарушить это правило. Работать над чем-то свежим - это хороший способ поддержать ваш уровень возбуждения!


3

Есть много хороших ответов, но я также добавлю свои:

  • Всегда есть работающий проект, на который вы можете посмотреть. Не переходите в танковый режим, в котором вы кодируете в течение 2 недель, и вам нечего показать.
  • Держите петлю обратной связи короткой (это еще более расширяет предыдущий пункт): добавьте немного новой функции, покажите ее, получите обратную связь.
  • Не когда - либо реализовать что - то вам не нужно прямо сейчас, что является следствием: никогда не построить каркасное первое дело в проекте.

Я хотел бы немного остановиться на последнем пункте, поскольку я видел, как это происходило несколько раз: никогда не создавайте фреймворк первым. Есть много причин, но в основном у вас не будет необходимого видения, чтобы все делать правильно, вы будете тратить много времени на размышления о том, что, если, и вы потеряете мораль, когда после X дней / недель работы, будет нечего показать за это.

Проблема в том, что фреймворки часто необходимы для конечного продукта, так что же делать кодеру? Начните строить конкретно, с жестко закодированными значениями. Когда вам нужно будет изменить значение, сделайте его изменяемым в настройках. Когда вам нужно сделать две одинаковые вещи, абстрагируйте одинаковые части вместе, но оставьте остальное конкретным. Если вы продолжите делать это, вы на самом деле получите фреймворк, который возникает из-за необходимости, вместо того, чтобы сначала тратить время на что-если.

После того, как вы создадите свою X-ую игру, вы можете начать с фреймворка, к тому времени у вас будет достаточно опыта, чтобы осуществить его.


Что ж, в игре, которую я делаю (шмуп), мне пришлось развернуть «каркас» для оружия, снарядов и кораблей, и я не представляю, как бы это работало, если бы попытался вырастить каркас в рекламе. специальная манера На самом деле, я могу: я, вероятно, закончил бы беспорядком: P
RCIX

Справедливо, но то, что вы описываете, действительно очень мало. По своей структуре, я больше думаю о игровом движке, системе сценариев и т. Д. Коллекция классов / объектов, которые вы не можете удобно разместить в своей голове, если хотите. То, что я сказал, не избавляет от необходимости продумывать структуру вашего объекта.
АБР

2

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


2

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

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

Независимо от того, как продвигается ваша стратегия развития, я не могу особо подчеркнуть, что вы не зациклены на попытках разработать и кодировать игровой «движок». Каждая функция, которая не имеет видимого или тактильного эффекта в игре, будет приносить очень мало вознаграждения. Чтобы помочь компенсировать это с основными системами, выведите на экран информацию о разработке. IE FPS, AI-переменные и любой другой текст, который поможет раскрыть то, чего не было раньше. Нет ничего более изнурительного, чем потратить 10 часов на кодирование системы, компиляцию и получение того же опыта, что и раньше.

Несколько лет назад я написал статью о поиске души в играх, которая может вас заинтересовать: http://deleter.phatcode.net/index.php?page=articles&a=8

редактировать: И еще одна вещь, которую я вижу, упоминается в другом посте, я хочу уточнить. Играйте в игры не только во время разработки своей игры, но и в любое время, когда вы не чувствуете мотивации работать над своей игрой. Я обнаружил, что игра в подобные игры помогает мне вспомнить, почему я хочу делать свою игру, и помогает мне получить дополнительный импульс, который мне нужен для продолжения.

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


1

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


1

Начните с концепции игры, установите причину игры, игровой процесс, внешний вид игры, которую вы хотите создать.

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

Таким образом, по крайней мере, у вас есть код и ресурсы в течение нескольких дней или недель, чтобы поднять боевой дух и начать свой проект.


s/moral/morale
RCIX

Отредактировано неправильное написание = p
Wight

0

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

В противном случае, я вроде бы застопорился с тем, что рано оказался неудачным проектом: /

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.