Персональное планирование проекта - PullRequest
18 голосов
/ 06 февраля 2009

Я хочу разработать идею 2D-игры с помощью C # / XNA. Между школой, неопытностью проекта, ограниченными ресурсами и другими вещами, которые могут заставить меня отказаться от проекта, я постараюсь спланировать его до того, как прыгну:

  • Какие ключевые аспекты вы заметили в успешном личном проекте?

  • Как вы (успешно) получили доход от проекта (помимо просьбы о пожертвованиях)? (Примечание: это не главная цель моего проекта, но было бы неплохо!)

  • Как вы планируете аспекты непрограммирования, такие как макеты окон (UI), ход игры и внешний вид?

  • Как вы привносите абстрактную идею игры и превращаете ее в реальный продукт. Какие инструменты вы используете при черчении и планировании?

  • С ограниченными ресурсами (художественным талантом и деньгами), как мне создать некоторые художественные ресурсы, которые мне нужны (помимо стокового искусства)? Или я не должен беспокоиться об этом, пока не получу готовый продукт?

  • Наконец, как вы преодолеваете барьеры в своем коде (это может быть знание, время или упорство)?

Ответы [ 9 ]

14 голосов
/ 08 февраля 2009

Какие ключевые аспекты вы заметили в успешном личном проекте?

Полагаю, это во многом зависит от вашего определения успеха. Я считаю игровой проект успешным, если:

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

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

Как вы (успешно) получили доход от проекта (помимо просьбы о пожертвованиях)? (Примечание: это не главная цель моего проекта, но было бы неплохо!)

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

Как вы планируете аспекты непрограммирования, такие как макеты окон (UI), ход игры и внешний вид?

Pen. И бумага. Я рисую множество скриншотов в качестве руководства, и у меня обычно есть какая-то художественная тема, чтобы соответствовать игровому процессу. Здесь также помогают быстрые прототипы; все, от создания макетов меню и различных экранов в программе для рисования до создания простых интерактивных материалов в одноразовом проекте.

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

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

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

С ограниченными ресурсами (художественным талантом и деньгами), как мне создать некоторые художественные ресурсы, которые мне нужны (помимо стокового искусства)? Или я не должен беспокоиться об этом, пока не получу готовый продукт?

Питер Молинье из Lionhead сказал, что раньше он прототипировал все свои игры с помощью ascii art. Если им было весело с этим ограниченным уровнем графики, то им стоило продолжить. Хотя в некоторых жанрах вам, возможно, не удастся добиться такого простоты (а сам ASCII 3D-шутер может быть новинкой сам по себе ...), безусловно, беспокойство о готовых произведениях искусства, аудио или других ресурсах - это то, что можно сохранить для многих потом. В конце концов, если в игру весело играть, то найти художника, готового работать с вами, становится гораздо более тривиальным. Во многих случаях я использовал активы, защищенные авторским правом, на этапе создания прототипа, когда я просто не мог больше смотреть на свое собственное искусство. Просто убедитесь, что у вас есть что-то подобное, прежде чем вы начнете распространять свой проект ...

Наконец, как вы преодолеваете барьеры в своем коде (это может быть знание, время или упорство)?

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

Удачи.

11 голосов
/ 06 февраля 2009

Какие ключевые аспекты вы заметили в успешном личном проекте?

  1. Не беспокойся о том, как получится
  2. Сделай это ради удовольствия
  3. Не планируйте
  4. Начни с малого, не думай о большом
  5. На самом деле код, а не откладывать на так или другие подобные сайты
3 голосов
/ 06 февраля 2009

Ключевые аспекты: В первую очередь, то, что вас волнует. Сделайте игру, которая ДЕЙСТВИТЕЛЬНО заставляет вас двигаться вперед, и вы будете мотивированы желанием поделиться готовым продуктом с другими - качество вашего конечного продукта, вероятно, будет также улучшено вашей страстью.

Прибыльность: Ну, так как это XNA и все, если вы выпустите версию для Xbox Live, вы будете получать 70% от дохода от продаж, который получает ваша игра. Игры могут быть оценены в 200, 400 или 800 баллов (примерно от $ 2,50 до $ 10).

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

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

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

Преодоление барьеров: Не уверен, что именно подразумевается под этим вопросом, но, вообще говоря, если я столкнулся с какой-то непредвиденной проблемой (техническая проблема / проблема реализации, связанных с игровым процессом, или «что у тебя есть»), я могу либо решить проблему, либо придумать подходящий обходной путь, если я надолго возьмусь за это. Вы имели в виду что-то еще под этим?

3 голосов
/ 06 февраля 2009
  1. Если вы хотите, чтобы кто-то еще использовал эту игру, сделайте ее не личной. Найдите кого-нибудь еще, кому вы можете дать демо-версию и получить обратную связь. Сделать игру очень очень простой. Постройте это прежде, чем перейти к чему-то очень простому. Тогда просто!

  2. не уверен:)

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

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

  5. Искусство - важная часть игры, и без нее невозможно получить готовый продукт. Как насчет поиска в Интернете сотрудника, который заинтересован в том, чтобы сделать это для вас.

  6. Если вы застряли с чем-то в вашем коде, обратитесь за помощью в StackOverflow! :)

2 голосов
/ 06 февраля 2009

Прежде всего - я знаю, что университеты не склонны учить этому, но вы действительно должны это делать ... чтобы система контроля исходных кодов работала. Я бы предложил установить TortoiseSvn отсюда: http://tortoisesvn.net/downloads

С помощью TortoiseSvn (клиент Subversion) - вы можете создать репозиторий на вашем USB-накопителе и носить его с собой, чтобы у вас всегда была копия файлов вашего проекта. Что еще более важно, вы можете быть более уверенными, когда вносите изменения - потому что они хранят историю изменений, которые вы сделали. Так что, если вы что-то сломаете, вы можете вернуться к самой последней версии на вашем флэш-накопителе USB ... или даже к более ранней версии, если хотите. Он также предоставляет способы отображения различий между ревизиями файлов, все из расширения оболочки проводника.

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

Я бы рекомендовал какой-то список задач ... что-то вроде электронной таблицы, найденной здесь на сайте Joels: http://www.joelonsoftware.com/articles/fog0000000245.html

Если вы хотите пофантазировать, я бы предложил что-то вроде Trac: http://trac.edgewall.org/ Trac - это вики, список дел / ошибок и просмотрщик репозитория в одном. Если кто-то еще работает с вами над проектом, сотрудничество с системой контроля версий и общей вики становится более полезным. Также хорошо работать с другими ... вы можете поддерживать мотивацию друг друга.

Недавно в блоге Wolf Fire было несколько интересных идей по дизайну, и он привел здесь источники сервалов: http://blog.wolfire.com/2009/02/design-principles-from-tufte/

Что касается получения денег, другие уже рассказали о сообществе игр.

Художественные активы - есть несколько мест, где их можно найти. Разведайте форумы на www.gamedev.net. Def, посмотрите на этот блог здесь, чтобы найти отличное искусство (и идеи игрового дизайна) http://lostgarden.com/

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

1 голос
/ 06 февраля 2009

Имея опыт разработки игр в подростковом возрасте, я могу предложить следующее:

  • Убедитесь, что у вас есть готовая история или хотя бы основные пункты, прежде чем вы начнете реализовывать. Также убедитесь, что вы не меняете жанр игры, находясь в стадии разработки. (да, я знаю, это глупо, но может случиться ;-))

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

  • Из того, что вы сказали, вы все еще в школе, так что воспользуйтесь этим. Там наверняка найдутся люди с художественным талантом, скорее всего, ваши друзья. Создайте команду. Это то, что мы сделали, и это было в 1993 году! В то время это было еще сложнее. Мы познакомили наших талантливых друзей с 3D-Studio (v3), а некоторые даже с компьютерами в целом, и поверьте мне, до того, как вы узнали об этом, они делали из этого блестящее искусство!

  • Используйте ручку и бумагу для создания раскадровок (еще лучше с друзьями, упомянутыми выше. Определитесь с подходом к разработке. Т.е. какие библиотеки вы будете использовать и т. Д. Узнайте больше об игровом устройстве. Составьте план проект. Дайте ему все возможное; -)

  • В отличие от нас тогда, у вас есть сеть, чтобы помочь вам. Для любых проблем с вашим кодом это легко найти. StackOverflow тогда еще не существовало!

И, конечно, позаботьтесь о том, чтобы вам было весело в этом процессе, иначе он съест вас заживо!

1 голос
/ 06 февраля 2009

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

Как вы (успешно) получили доход от проекта (помимо запроса пожертвований)? Не напрямую. Тем не менее, навыки дают вам работу. Строить навыки.

Как вы планируете аспекты непрограммирования, такие как макеты окон (UI), ход игры и внешний вид?

  1. Сначала создайте внутреннюю модель данных ядра. Если модель данных работает, все остальное гораздо проще.

  2. Создайте модульные тесты для модели, чтобы быть абсолютно уверенным, что она всегда работает.

  3. Решить "поток" и другие проблемы управления на основе этой модели.

  4. Постройте графический интерфейс позже, когда у вас будет прочная основа.

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

Я делаю следующее.

  1. Я использую Argo UML для технических диаграмм UML.

  2. Я пишу документы с учетом своего конечного состояния. Каким будет API Как это будет работать В процессе написания документов я проясняю свои мысли.

  3. Я пишу код по частям, с юнит-тестами и безжалостно реорганизую.

С ограниченными ресурсами (художественным талантом и деньгами), как мне создать некоторые художественные ресурсы, которые мне нужны (помимо стокового искусства)? Или я не должен беспокоиться об этом, пока не получу готовый продукт?

Найдите художника, который хочет помочь.

Наконец, как вы преодолеваете барьеры в своем коде (это может быть знание, время или упорство)?

  1. Сначала создайте внутреннюю модель ядра данных.

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

0 голосов
/ 06 февраля 2009

Какие ключевые аспекты у вас есть? заметил в успешном личном проект? * * 1002

Просто сделай это!

...