Поможет ли получение степени по математике в разработке игр? [закрыто]

11

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

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

Поможет ли мне получение второй степени по чистой математике с этой целью?


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

Ответы:

14

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

Опыт козырей учится. Если вы хотите быть хорошим программистом, тогда начинайте программировать . У меня нет ученой степени, но я занимался программированием различных проектов для развлечения с 15-16 лет; Излишне говорить, что я на несколько лет опережаю своих друзей, которые изучали информатику в университете, и задавал мне вопросы типа «лучше ли проверять права администратора для моего сайта через PHP или вариант SQL GRANT?».

Томас Бонини
источник
2
С другой стороны, тот, кто знает их математику, может создать гораздо более эффективный код. Простой пример: сложение чисел от 1 до x. Некоторые программисты не знают о способе O (1) сделать это, но любой математический майор должен быть.
cHao
10
@cHao - Вам не нужна степень, чтобы понять это.
ChaosPandion
3
Согласовано. Это всего лишь простой пример. Есть гораздо более сложные, такие как ... скажем ... вращающиеся точки вокруг центральной точки, или выяснение центра тяжести. Каждый из которых может найти применение в игре, причем очки весьма распространены. Да, вы можете найти какую-нибудь формулу в интернете, чтобы сделать кое-что из этого. Но если вы не поймете, почему формула работает, вы обнаружите, что застряли в первый раз, когда возникла проблема, которую cut-n-paste не может решить.
cHao
3
@cHao: Google не только предоставит формулу, но и предоставит подробное описание того, как она работает, и принципы, на которых она основана, которую вы можете изучить при первой необходимости. Это гораздо эффективнее, чем изучать все заранее, «на всякий случай».
Томас Бонини,
2
Вы когда-нибудь пытались понять эти подробные описания? Очень многие из них читаются как линейный шум, и для их расшифровки потребуются некоторые математические знания.
cHao
11

У меня есть математическое образование (бакалавр с двойной специализацией по чистой и прикладной математике, затем доктор философии по прикладной математике). Однако я работал разработчиком последние 6 лет или около того. Моя степень по математике дала мне мою первую работу по разработке (в индустрии VFX-фильмов - так что графика тяжелая вещь). Но фактическая математика, которую я использовал в своих работах, была минимальной.

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

ИМХО, некоторые люди умеют решать проблемы такого рода (я, конечно, сделал), но они все равно будут совершенствоваться с некоторым формальным обучением (я, конечно, сделал это снова). Такого уровня обучения может быть очень не хватать по некоторым специальностям CS Engineering.

Я бы сказал, собери как можно больше математики, ты не пожалеешь об этом. Он не стареет, как язык программирования. (FORTRAN устарел всего через 30 лет. C #, вероятно, пойдет тем же путем. Но исчисление, геометрия, теория групп будут здесь через несколько сотен лет).

Майкл Андерсон
источник
5

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

В вашем случае я бы взял еще один или два урока математики. Некоторые предложения - линейная алгебра, дифференциальные уравнения, моделирование или геометрия. Математическая степень займет еще 1-2 года; это не легче, чем степень информатики. По дороге с другим ребенком деньги с работы будут полезны.

Jaimz
источник
Я взял дифференциальные уравнения, и некоторые концепции, безусловно, были бы полезны.
ChaosPandion
4

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

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

Скотт Саад
источник
2

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

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

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

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

Дэвид Торнли
источник
2

Ценность математики, вероятно, будет излишней. Хотя знание математики вам очень поможет (особенно в любой серьезной попытке 3D-программирования), у меня есть ощущение, что вы не сможете применить многое из того, что вы изучите, с чистой степенью математики. Тем не менее, я бы порекомендовал вам пройти хотя бы несколько занятий.

Что касается аргумента «опыт превосходит изучение», то некоторое количество обучения может удержать вас от необходимости учиться столько же методом проб и ошибок. Я знаю, что предпочел бы заранее сказать, является ли то, что я пытаюсь сделать, лучшим способом сделать это (или даже работать). Толпа проб и ошибок, как правило, не знает ответа, пока не потратила много времени.

Chao
источник
Я согласен, что целая степень по математике была бы излишней. Несовершеннолетний в математике, вероятно, будет полезно, хотя. У меня есть несовершеннолетний в математике, и я не жалею о прохождении дополнительных курсов
Санге
Да, если я когда-нибудь пойду в школу, я, вероятно, буду несовершеннолетним по математике, независимо от того, на какую другую степень я пойду. Просто кажется таким полезным в ряде областей, не в последнюю очередь из которых программирование.
cHao
Только что получил степень по математике - это совсем не перебор. Цель получения степени по математике (и ее использования в программировании) не в том, что вы будете использовать навыки из каждого класса, который вы посещаете («Чувак, я рад, что я изучил интеграцию Лебега, теперь я понимаю наследование!»), А скорее мышление, что математические основные заставляет вас адаптироваться. Я хотел бы сказать то же самое о CS (я получил две степени), и хотя многие занятия по этой специальности помогают сформировать хороший ум решения проблем, он просто не делает это так же, как математическая степень. Сейчас я смотрю на проблемы совершенно по-другому, очень хорошо.
Галуа
1

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

Кстати, изучение математики - это круто и поможет вам больше, чем вы думаете, если у вас есть мотивация, отличная от прохождения теста на получение степени. : О)

Pagotti
источник
1

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

aggietech
источник
0

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

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

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

Жаклин Со
источник