В чем опасность развития самообучения? [закрыто]

Я собираюсь отправиться в развитие игры. После ответов на мой последний вопрос я буду использовать C # и XNA.

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

С этим я хочу быть готовым к проблемам, с которыми я могу столкнуться, не имея кого-то, чтобы «держать меня под своим крылом».

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

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

Мне хорошо известно, что ошибки - это большая часть обучения, но если есть ошибки, я могу быть готов к тому, что я был бы счастлив с этим.

56 голосов | спросил Ste 3 Maypm12 2012, 16:57:26

7 ответов


54

Разработка игр похожа на структурную инженерию

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

Следующая часть - большая часть. Часть формы . Форма - это то, что действительно отличает хорошие игры от великих игр. Это та часть, которая является art разработки игры. Я говорю не только о сенсорных активах (графике, звуке и т. Д.). Я говорю о создании опыта. Это трудная часть.

Часть функций исходит из учебников, библиотек и немного времени. Любой может это сделать.

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

Так что вы должны убрать это отсюда:

  • Часто повторяйте тест.
  • Не увлекайтесь функцией прямо сейчас. Не беспокойтесь о оптимизации, или какая библиотека будет лучшей в долгосрочной перспективе. Просто получите минимальную функциональность, , затем итерацию.
  • Как только функция будет выполнена, поздравляйте себя, вы делаете небольшую часть пути.
  • Наденьте солнцезащитный экран.
  • Это умение, которое требует времени для разработки, вы знаете, что от изучения музыкального инструмента это ничем не отличается, вы улучшаетесь.
  • Помните, для чего вы в этом нуждаетесь, радость от создания! Если что-то становится скучным, переключитесь на что-то еще (попробуйте некоторые игровые джемы, чтобы разбить время разработки). Но не уходите, потому что это сложно.
  • Сообщество разработчиков игр здесь, в SE, отлично. Здесь вы найдете все, что вам нужно. Вы можете отправить вопрос или перейти в чат и обсудить свои идеи.

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

ответил MichaelHouse 3 Maypm12 2012, 19:06:31
28

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

Хорошие примеры:

И многое другое!

Мои последние высказывания: не бойтесь. Я тоже самоучкой, 4 года, когда меня познакомили с игровым дебютом, у меня много барьеров, но ничего, что вы не можете решить по поиску и чтению некоторых текстов. Удачи вам в пути:)

ответил Gustavo Maciel 3 Maypm12 2012, 17:33:56
18

Это отношение. Это «не трогайте его, пока вы не знаете, как это сделать». Это действительно задержит вас.

Вы видите это отношение среди начинающих разработчиков всех видов, хотя - не только игр. Сайты также. Эй, сайт - это база данных с интерфейсом html с некоторым javascript. Вы изучаете технологии любым способом, вы можете разместить свой первый сайт вместе. Это не будет фантастическим, но после того, как делать вещи на субоптимальном пути, это не большая сделка с флиртом !! Если вы делаете это «длинный путь» в первый раз, вы всегда можете сделать это лучше во второй раз. Я считаю, что нет опасности. Кроме этого, возможно. Это отношение - это то, что остановит вас , когда-либо сделав что-либо, потому что вы всегда будете отказываться от этой задачи и сказать: «Я еще не знаю, как это сделать».

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

ответил bobobobo 4 Mayam12 2012, 08:59:01
6

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

  1. Начать небольшую

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

  1. Узнайте ВСЕГДА

Это может показаться немного экстремальным, но я имею в виду, что вы узнаете как можно больше о КАЖДОМ аспекте разработки игры - независимо от того, являетесь ли вы кодером, художником или дизайнером. Знание трубопровода является ключом к созданию вещей самым эффективным способом. Если вы используете оружие -> дизайн его, концепт его, моделировать, внедрять, кодировать! Вам, очевидно, не нужно быть дизайнером класса, дизайнером и дизайнером Pipeline, но вы должны быть знакомы со всеми инструментами процесса и понимать каждый шаг создания. Кроме того, ознакомьтесь с игровыми сайтами для новостей и обновлений в бизнесе - gamasutra.com, kotaku и т. Д. У всех есть отличные статьи по темам бизнеса и техники. Не ограничивайте себя только одной областью разработки - впитайте ВСЕ знания, которые вы можете получить:)

  1. Сбой часто, не работает.

Ты сосать то, что делаешь. В начале. Это всегда так (поверьте мне, я знаю.: D), но это будет лучше, если вы продолжите движение и НИКОГДА не прекратите искать способы улучшить свою работу. Интернет - отличный источник учебников, ссылок и справок. Вы никогда не будете по-настоящему застряли, так что приступайте к самым сумасшедшим идеям, терпите неудачу, учитесь на своих ошибках и становитесь более плохими с этим процессом.

  1. Поговорите с людьми!

В то время как Интернет - отличный источник, получение обратной связи с лицом к лицу - это то, с чем вам придется иметь дело на работе ALOT. Поэтому важно улучшить свои умственные навыки. Если у вас еще нет наставника или вообще не знаете слишком много людей, работающих в этой отрасли, тогда вы должны осмотреться вокруг своей области, чтобы инди-dev встретить встречи, перейти к соглашениям и проверить другие события, в которых вы можете начать строить личная сеть знаний и контактов. Это также помогает создавать что-то с другими людьми - самоучка велика, но разработка игр - это командная игра, поэтому проверьте форумы для хобби проекта - например, Epic Forum для проектов UDK, форумов Unity или даже CryEngine Forums все три из этих двигателей широко распространены, там есть грузовик талантливых людей, работающих над побочными проектами, и они в основном также заинтересованы в изучении нового материала.

Я думаю, что это почти все советы, которые я могу дать. Надеюсь, это помогло вам каким-то образом:)

ответил Nils Diefenbach 5 Maypm12 2012, 14:09:45
3

У меня нет опыта C # и XNA вообще, но я думаю, что это не сделает меня неправильным в следующем утверждении:

Совершенно прекрасно учиться программированию без учителя. Если ваш код работает *, на самом деле не имеет значения, как он был закодирован. Ну, это для совместного программирования, но тогда вы больше не будете кодировать, не так ли? Это также может сделать ваш код менее читаемым для вас в будущем, затрудняя использование старых компонентов или отлаживая новые ошибки, но в конечном итоге все ваши ошибки будут вашими сильными сторонами. Самое сложное в обучении дизайну ООП и MVC - это понять, почему я должен делать это «таким образом». Если у вас уже есть опыт создания плохих программ, вы будете знать сильные стороны шаблонов и использовать их в своих интересах. Если вы всегда делали хорошие программы, следуя шаблонам, которые вас научили, тогда вы будете продолжать делать хорошие (в смысле действительного кода) программы, но вместо того, чтобы использовать шаблоны, вы будете ограничены ими, так как вы их не поймете достаточно, чтобы внести полезные изменения. В конце концов, самое главное, что вы практикуете, а не как, так и в обоих случаях рано или поздно. Вы получите очень похожий опыт.

* важно одно! В случае безопасности Вы действительно должны спросить кого-нибудь, кто испытал, будет ли ваш код выполнен хорошо, поскольку дыры в безопасности не вызывают всплывающих предупреждений об ошибках.

ответил Markus von Broady 3 Maypm12 2012, 18:15:12
3

Как-то это отличный вопрос! : -)

Я начал свою деятельность гамедева не так давно, и это будет второй раз, поэтому я могу поделиться своими мыслями. Вы на самом деле правы, что хорошо иметь наставника. Этот наставник будет интернетом. Таким образом, чем больше информации используется в Интернете, тем легче будет учиться для вас. Вот почему XNA /C # - отличный выбор для начала. Существует много любительских и профессиональных инди-гамедеев, которые делятся статьями и в Интернете. Другие вещи, которые следует упомянуть:

  1. Идите с открытым исходным кодом! Codeplex, GitHub, Google.Code, Bitbucket. Там есть много ценных вещей.
  2. Перейти в сообщество! Вы здесь, и это хорошо. Но также существует большое сообщество Microsoft XNA с некоторым хорошим официальным материалом . Codeproject также является хорошим ресурсом (однако активность гамедева там довольно низкая).
  3. Вероятно, вам нужно будет прочитать / смотреть много. Уже упоминалось ранее. Разработка игр - это не только кодирование. Дизайн игры также важен. Энтузиазм важен.
  4. Как обычно, не пытайтесь укусить много сразу, написание вашей собственной копии тетриса или прорыва действительно хорошая идея.
  5. Это может быть сложно начать, разработка игры не только на самом деле тяжелая, но и очень отличается от приложений «корпоративного». Существует много новых аспектов, графиков, звука и т. Д. Чем больше вы идете, тем легче становится (как обычно).
  6. Написать блог. Экспресс-процесс разработки (в этом процессе вы найдете ответы на свои вопросы), храните ссылки с комментариями к ценным статьям.
  7. Не думайте, что ваш код - худшее, что вы когда-либо видели. Код игры сложнее контролировать, он всегда как-то немного грязнее, чем чей симпатичный «корпоративный» код. Но я заверяю вас, что я видел некоторые ужасные творения (с точки зрения качества исходного кода и организации игр), которые были успешными инди-играми. Итак, не будьте суровыми на себя, особенно. в начале.
ответил Petr Abdulin 4 Mayam12 2012, 06:57:38
1

Это относится к любой дисциплине, связанной с творческой индустрией:

Самая большая опасность заключается в том, чтобы выстроить что-то «слишком большое» или «эпическое» из ворот.

Например, если вы начнете создавать музыку, вы не начнете с того, что хотите сделать 50-часовую симфонию на 2 часа.

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

Итак, я бы порекомендовал что-то вроде следующих планов:

  • Дизайн уровней: постройте небольшую комнату, постройте половину здания, постройте полное здание и т. д.
  • Искусство: сделайте шляпу для TF2 или что-то подобное простое, или некоторые замены текстуры для Skyrim или какой-либо другой задачи размера укуса, чтобы начать работу, прежде чем попасть в скелетные или морфовые сетки и выяснить, как оживить или нарисовать их в zbrush them хорошо.
  • Программирование: возьмите существующий modable или openource игровой движок и измените часть его (например, оружие), затем создайте новое оружие. Если вам не нравится код геймплея, вы можете начать взламывать графический движок.

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

ответил Zoner 4 Mayam12 2012, 08:47:49

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132