Начало работы в разработке игр: действительно ли XNA - хороший выбор? [закрыто]


16

Долгое время читатель; первый раз спрашиваю:

Некоторое время я хотел стать частью игровой индустрии, но мое резюме на 100% полностью посвящено серверной работе.

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

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

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

Повлияет ли сосредоточение на разработке игр с использованием XNA и C # вместо C ++, повредит ли мне мои шансы найти работу в игровой индустрии? VB имеет несправедливую репутацию ненастоящего языка программирования, и программисты VB попадают под это клеймо. Так ли это с использованием C # в сообществе, которое состоит в основном из разработчиков C ++?

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

Ответы:


15

Я не думаю, что это повредит вашим шансам. C # становится все более популярным, особенно с XNA и SlimDX. Я использовал и C #, и C ++, и должен сказать, что я предпочел XNA значительно. Работать с ним было чище, но не настолько, чтобы казалось, что ты ничего не делаешь.

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

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


+1: хороший ответ. Считаете ли вы, что ожидается, что ваши части портфеля должны быть лучше, так как вы использовали XNA? Например, в одном из моих классов аппаратного обеспечения нам было предложено написать наш дизайн-проект в сборке HC12 или с использованием C, но с C наш проект должен был быть значительно более интересным из-за простоты программирования на C по сравнению со сборкой.
— Алан

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

Если вы не ищете конкретно графическую работу, большинство людей не будут искать тонны графического блеска в портфеле. Сделайте что-то, что выглядит более привлекательно, чем красиво. В этом отношении XNA vs. C не имеет большого значения, пока это весело.
— Coderanger

Хотя, если вы хотите, чтобы он выглядел красиво, использование движка рендеринга, такого как Sunburn, поверх XNA может очень помочь!
— Крис Риденур

10

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

Работа с C # и XNA помогла мне сосредоточиться на одной конкретной учебной задаче («Что заставляет игру тикать?»), А не смешивать цели («Как я учу X и играю одновременно?»). Я обнаружил, что всякий раз, когда я комбинировал цели, я получал довольно плачевные результаты. Хотя начало в моей зоне комфорта и опора на XNA помогли добиться успеха.


Мне очень нравится твой ответ. Со всеми языками программирования, имеющими сходные структуры (объекты, управляющие структуры и т. Д.), Я думаю, вам следует изучить концепции того, что вы хотите делать с тем, что вам удобно. Основными отличиями при переходе от языка к языку должны быть синтаксис, основные компоненты и API-интерфейсы.
— Джон

3

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

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

Просто сделай свою работу. В конце дня это и есть разработка игр.


3

Мне сказали, что:

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

  2. Хотя основой большинства более крупных игр является C ++, это потому, что инструменты разработаны на C ++. Если вы не программируете инструменты, возможно, вы все равно не будете программировать на C ++.

Редактировать: Кроме того, иметь готовый демонстрационный проект во всем (C # и т. Д.) Значительно лучше, чем иметь что-то неполное в более сложном языке (C ++ и т. Д.).

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