Как мне учиться XNA? [закрыто]

15

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

Что касается моих текущих знаний в области кодирования, у меня есть хороший опыт работы с Javascript (в сочетании с HTML5 canvas). Я почти уверен, что мне также нужно будет изучать C # для написания кода на XNA, так что имейте это в виду.

Райан С.
источник
1
С будущим Xbox сейчас в его последние дни, и с будущим XNA по крайней мере с моей последней проверки, в "неопределенном" состоянии, возможно, изучение Xna в это время не является хорошей идеей. К тому времени, когда вы правильно разберетесь с ним, новый xbox, вероятно, будет анонсирован. Как вы, в частности, сказали «разработка игр для xbox», вам может быть лучше потратить свое время на что-то другое.
Dan369
@Danran Вы думаете, что они собираются сделать это со всеми разработчиками? Просто избавиться от XNA? И я совсем не знаю c #, поэтому мне придется сначала изучить это, если я хочу изучать XNA. Тогда, если MS решит отказаться от поддержки XNA, я все же выучу ценный навык C #. И это не по теме, но, я могу потратить свое время на изучение разработки Java-игр, нужна ли мне какая-то инфраструктура, такая как XNA? (очевидно, не XNA, но что-то вроде этого.) Что бы вы порекомендовали?
CJ Sculti
Ну, я не думаю, что они избавятся от этого, но вы никогда не знаете. Они могут заменить его чем-то новым, например, более подходящим для их новой консоли. Что касается разработки Java-игр, я не могу сказать. У меня нет опыта работы с Java, но быстрый поиск в Google для программирования Java-игр SDK дал много результатов. Так что это может быть отличным местом для начала.
Dan369

Ответы:

12

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

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

Как только вы поймете, как работает C #, я захочу скачать студию XNA отсюда - http://www.microsoft.com/download/en/details.aspx?id=23714

Вы хотите начать с изучения SpriteBatch. Некоторые хорошие учебники можно найти здесь ...

  • http://www.xnadevelopment.com/tutorials.shtml (они могут не дать вам слишком далеко (хотя, просматривая его снова, у него есть несколько интересных руководств), вы должны быть в состоянии изучить основы SpriteBatch и вводить их, используя эти хоть)
  • http://www.riemers.net/rus/Tutorials/XNA/Csharp/series2d.php - Это отличное руководство, и если вы сможете адаптировать его к XNA 4.0 (написано с использованием XNA 3.0), оно будет очень полезно

Оттуда вы можете начать экспериментировать с пиксельными шейдерами (на SpriteBatch, http://msdn.microsoft.com/en-us/library/bb313868(v=xnagamestudio.31).aspx ), а также преобразованиями матрицы ( http: // www.david-amador.com/2009/10/xna-camera-2d-with-zoom-and-rotation/ ).

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

Удачи!

FrenchyNZ
источник
+1 за большую часть моего ответа плюс еще несколько полезных советов
Лунин
Что бы вы сказали об этой книге? packtpub.com/…
Райан С.
1
Если вы найдете обучение через книги (и примеры, как это видно из описания), то пойти на это. Несмотря на то, что я изучил XNA отлично, занимаясь очисткой информации через Интернет, я в то же время научился некоторым замечательным методам.
FrenchyNZ
2
@ ryansworld10, я не могу рекомендовать эту книгу достаточно. Он поможет вам пройти несколько полных игр разных жанров, по-настоящему предоставив вам практический опыт и объясняя очень четко и кратко, что происходит на этом пути. Вы узнаете об основах не только платформы XNA, но и о разработке игр в целом, а также о том, какие компоненты необходимы для игры. Он не распространяется на каждый перегруженный метод SpriteBatch.Draw, как это делают некоторые книги XNA, и не должен, для этого предназначен MSDN. Опять же, очень рекомендую эту книгу в качестве отправной точки.
Купер
5

Большой ресурс , который помог мне научиться XNA был набор обучающих программ здесь .

Эндрю Джекман
источник
Очень хорошая ссылка. Просматривая его, я нашел хороший урок по плавной анимации, который я могу использовать с пользой. Благодарность!
FrenchyNZ
Мне очень нравится, как он это представляет, и на самом деле я чувствовал, что я учусь кодировать, а не просто копировать код со страницы.
Эндрю Джекман
В закладки, кажется, отличный ресурс.
Райан С.
Мне нравится, как @Twitchy хочет плавную анимацию.
вер
3

Первым шагом будет загрузка как платформы (XNA), так и MS Visual C # 2010 Express. Я нашел пару книг. Изучение XNA 4.0, опубликованное O'rielly и XNA Game Studio 4.0 Programming ... просто подключите их к Amazon. Для C # мне скорее понравилась серия Head First, но вам может понадобиться более академический том, чтобы дополнить это.

Также XNA RPG учебник был приятным.

Dialock
источник
2

Если у вас еще нет Visual Studio, самый быстрый способ начать работу - это получить Visual Studio C # Express и копию XNA . Оба бесплатны и доступны для скачивания у Microsoft.

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

Лунин
источник
1
JavaScript не то же самое, что Java ...
Эндрю Джекман
Ой, это то, что я получаю за попытку ответить на вопросы, пока люди разговаривают со мной. Убрал эту часть моего ответа. Спасибо за улов.
Лунин
1

Просто изучите XNA с помощью C #, XBOX 360 - это действительно определенный профиль с точки зрения программиста.

в интернете много учебников, но это официальный ресурс .

user827992
источник
1
Ok. Так с чего мне начать? На данный момент я знаю немного Java, немного .net и php (что не имеет значения). Я не знаю ни C, C ++, C #, ни графики / дизайна. Как вы думаете, я должен начать? А потом куда идти оттуда.
CJ Sculti
1
@CJSculti вам нужно освоить C # для продуктивного использования XNA, C # - это язык, а XNA - это фреймворк, всегда начинать с языка, а после этого вы можете начинать с фреймворка. C # действительно похож на java, так что вы будете чувствовать себя комфортно со многими концепциями, внутренние детали того, как работает C #, часто отличаются от Java, но на первый взгляд и в том, что касается основных концепций обоих языков, они действительно похожи. Для изучения C # вы , вероятно , хотите придерживаться книги stackoverflow.com/questions/194812/...
user827992
1

Недавно я начал заниматься основами игр на XNA. В Microsoft Dev Network есть отличный учебник, который шаг за шагом проведет вас по настройке базового космического шутера .

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

Сэл
источник
1

Я запустил то же самое за лето и обнаружил, что официальный сайт очень помог.

http://create.msdn.com/en-US/education/tutorial/2dgame/design

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

Том Пратс
источник
1

Отправной точкой для разработчика XNA является create.msdn.com, хотя теперь это всего лишь целевая страница, на которой можно перейти на страницу инди-игр XBOX Live .

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

Тристан Уорнер-Смит
источник