2011-01-08 5 views
18

Мой 11-летний ребенок-брат хочет научиться программировать игры. Он никогда не программировал, но хотел бы научиться программированию. Его интерес заключается в играх и программировании игр, и он понимает, что это может быть сложно, но он хочет это сделать. Итак, очевидно, я обратился к SO людям, чтобы узнать, что вы чувствуете, как он должен это делать. Помните, пожалуйста, предложите наНачните основы программирования игры

  • Районы, новички могут выбрать,
  • как начать в этой области,
  • что читать в начале,
  • начальные языки в начале и т.д.

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

+13

Может быть более подходящим для http://gamedev.stackexchange.com/ – Sampson

+0

Я бы очень хотел, чтобы вы зашли на сайт фонда малины Pi. Все их предприятие должно поддерживать таких людей, как ваш брат. http://www.raspberrypi.org/ – Aron

ответ

25

Я начал писать свои сочинения о карьере программирования, когда мне было 15, и это было очень весело (хотя я боролся с C++ уже 3 года только потому, что «это то, что используется для написания игр»). Мои два цента:

  • Начать с programming language that is easy to use (НЕ C или C++)
  • Получить начинающую книгу для этого языка программирования (не направленной на играх)
  • Принятие решения о какой API или среде, которая обеспечивает что необходимо для написания игр. Я начал с создания змей, космических захватчиков и т. Д. В консоли, но любая 2D-среда будет делать (оставайтесь на расстоянии от 3D столько, сколько сможете, впереди гораздо важнее всего научиться). SDL/GLUT для OpenGL имеет привязки практически на любом языке. Pygame для Python тоже выглядит многообещающим. Используя HTML5's canvas -элемент, вы даже можете писать программы в браузере с помощью JavaScript. Я не уверен, что лучше всего в наши дни, но есть предложения.
  • Найти сообщество для вдохновения и помощи при застревании. Я использовал gamedev.net. Так как мы находимся на stackoverflow, gamedev.stackexchange.com также должен быть естественным выбором :)
  • Начало маленькое. Очень маленький. Я имею в виду действительно крошечный. Затем предпринимайте небольшие шаги для решения новых задач. Пожалуйста, не пишите MMORPG.
  • Дизайн игры и графика - это весело, но сосредоточьтесь на программировании (на данный момент, по крайней мере). Когда вы написали простую игру, узнайте, как сделать то же самое лучше.
  • Установить цель. Представьте себе игру, которую вы хотите сделать. Не пытайтесь сделать это немедленно, но убедитесь, что каждая новая вещь, которую вы изучаете, делает вас на один шаг ближе. Не узнайте, что вам не нужно так говорить (слишком просто слишком много учиться).

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

5

Для начинающей игры, развивающей энтузиастов, я думаю, что вы не ошибетесь в комбинации Python + Pygame. Python - отличный, элегантный (и простой в освоении) всесторонний язык, и для Pygame доступно множество замечательных уроков, которые объясняют основы (в основном) 2D-программирования игр.

1

Это может занять некоторое время, пока он не сможет запрограммировать правильную игру ...

Но, как я понимаю, он должен начать с Java, как это легко узнать и хорошо для основных игр.

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

Я думаю, вы должны купить ему книгу о java и начать с основ.

Вы получите много разных ответов на этот, как это в основном личное мнение ...

1

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

-3

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

+2

У моего сына тоже 14 лет, и я действительно не уверен, что это хорошее начало! python гораздо легче понять. – VGE

+5

Ничего себе, это много линейной алгебры и громоздкого программирования для четырнадцатилетнего человека, который никогда не писал никакого кода. – LandonSchropp

0

Напишите несколько простых сценариев для такой игры, как Wesnoth, возможно, хорошее начало.

Изучение основы программирования также важно. Вероятно, такой язык, как python, является хорошим началом. Язык понятен и прост в освоении и обучении. И это очень возможно.

1

, часть Stack Exchange, является отличным ресурсом для таких вещей. Он загружен сообщениями, такими как this.

3

There's this post на Gamedev stackexchange, где плакат находится буквально в том же положении.

Цитирование мой ответ оттуда:

Я тоже 15, так что я думаю, что может помочь? : P

Я недавно начал изучать Python (делал C++ в течение года или около того), и я найти его гораздо легче узнать, чем C++. Там гораздо меньше подводных камней, и вам нужен маленький код, чтобы получить что-то на экране - что я нахожу заставляет вас продолжать.

И есть такие обертки, как Pygame и Пиглет над SDL/OpenGL для графической части .

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

И для того, что читать; Могу посоветовать Invent With Python. Это связано с изучением языка очень гамедевым способом, что является хорошим шагом к тому, чтобы он оставался заинтересованным; Я сомневаюсь, что многие дети его возраста захотят узнать все о переменных и циклах, более того, они могут сделать игру - все это позволяет легко вводить PyGame и графику.

1

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

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

Если ему 14 лет, то он имеет школьный возраст (при условии, что он основан на США ...), и есть хорошие шансы, что там доступны курсы программирования. Пусть он размалывает зубы, чтобы усмирить трудности внедрения программирования, а затем, когда он заинтересован в расширении за пределы инструментария, познакомьте его с ответами других пользователей.

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

1

В начале, убедитесь, что вы держите это весело. Попробуйте насмешливые старые игры, такие как 1-этапный или воздушный хоккей. И используйте язык программирования с простой реализацией таймера. Потому что таймеры, я думаю, самый простой способ показать некоторые видимые эффекты. Я бы рекомендовал визуальный базовый или объективный-c (я знаю, что многие люди не согласятся, НО это просто прост в использовании Xcode). Пальцы вверх ! Повеселись.

1

Я согласен с Кристофом о Питоне и Пигаме. Когда дело доходит до языков, Python отлично подходит для новичков, потому что это очень высокий уровень, поэтому его легче понять, а синтаксис чист и прост. И Pygame - отличная библиотека для изучения игрового программирования.

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

Хорошая серия легко читать электронные книги являются следующие три:

http://greenteapress.com/thinkpython/thinkpython.html узнать Python http://inventwithpython.com/ этот сайт имеет две книги, что делать игры в простом Python, а другой делать игры с помощью Pygame библиотека для Python. Как только он получит эти три книги, он сможет начать создавать свои собственные игры на Python, используя Pygame, а затем в конечном итоге перейти к более серьезным разработкам langauges/tools.

0

Это исходный исходный код исходной игры (Butterfly adventure 1.0), сделанный с помощью javascript, чтобы начать изучать программирование. Используются только базовые коды (переменные, если, переключатель, функция, событие и т. Д.).

Возможно, полезно начать обучение разработке игр.

  • Сыграем link
  • Исходный код link
  • Видео уроки (только на турецком языке) link

Скриншот

enter image description here

Удачи.

Смежные вопросы