Когда я год назад проходил курсы Java, мне сказали, что Java используется в основном в зарубежных игровых компаниях, в то время как C ++ используется здесь, в США. На каких языках следует сосредоточиться на углубленном изучении?
Когда я год назад проходил курсы Java, мне сказали, что Java используется в основном в зарубежных игровых компаниях, в то время как C ++ используется здесь, в США. На каких языках следует сосредоточиться на углубленном изучении?
Ответы:
Общие языки программирования могут быть разбиты по «типу» разработки игр.
Большие игры Triple-A, которые выходят за рамки, когда дело доходит до графики, обычно использовали смесь прямого C и C ++ для большей части проекта. Часто задействуется язык сценариев, хотя это не обязательно относится ко всем движкам.
Код игрового процесса часто пишется на проприетарном языке (UnrealScript), Python, Lua (CryTek, Spark Engine) или, в некоторых случаях, на C # (The Sims 2). Несколько игровых движков начинают поддерживать JavaScript (Unity и т. Д.).
Конечно же, используются и шейдерные языки.
В мобильной сфере в iPhone доминирует объектив C, в то время как большинство других мобильных телефонов используют Java (Android, Brew-based и т. Д.).
Что касается инди или небольших компаний, они могут использовать практически все, что зависит от их целевых платформ. Например, C # обычен для небольших разработчиков Live. Разработчики Flash, очевидно, используют ActionScript.
Итак, поехали. Надеюсь, это поможет.
C ++ является языком общения в индустрии консольных игр. C # довольно активно используется для инструментов и конвейеров.
C ++ довольно заметен на современном игровом рынке. Мысль С все еще широко используется.
При создании игр главное внимание должно уделяться не языку, а конечному продукту. Никогда не начинайте проект, думая: «Как мы можем сделать это на языке X?» но "Как мы можем сделать это наилучшим образом?"
Конечный источник является индексом TIOBE . Конечно, он не скажет вам, для чего используется каждый язык ...
Как уже упоминалось, C ++ - это язык для изучения; все основные консоли содержат среду разработки C ++, в лучшую или в худшую сторону. C # начинает развиваться в играх на XNA, но чаще всего используется для разработки инструментов.
Lua также является одним из наиболее часто используемых языков сценариев в играх; полезно иметь хотя бы мимолетное знакомство с ним.
Часто цепочка сборки, используемая для сборки игры, содержит сценарии, написанные на Python или Perl; также полезно быть знакомым с ними (хотя это и не обязательно).
Лучше не изучать один язык, но изучать различные концепции программирования и способы их применения на нескольких разных языках, в разных средах и средах.
Может быть, вы не должны сосредоточиться на изучении одного конкретного языка. Вы должны, как развиваться.
Вчера я скачал iOS SDK и Xcode. И я взял это сразу и сделал небольшой тетрис. Я парень из as3, и я даже не удосужился изучить Objective-C. Но я смог сделать простую игру, потому что я понимаю, как развиваться.
Итак, моя точка зрения заключается в том, что вам, возможно, стоит потратить больше времени на изучение новых концепций, чем на конкретный язык. Или изучите языки X и перенесите свои знания на другие языки.
Разработка игр - это другое приложение для разработки игр с мячом.
В мире игр все зависит от скорости. При подаче конверта с графикой HD 1080p, высоким уровнем дискретизации звука и необходимого AI каждый последний такт процессора считается.
Исторически C и C ++ были быстрыми темпами, но java теперь сравним с c ++ с точки зрения скорости в некоторых обстоятельствах.
C ++ позволяет вам лучше контролировать архитектуру, над которой вы проектируете, чем любой другой язык.
Большинство старших разработчиков игр достаточно старшие, что означает, что их учили по-старому, как они были изобретены, и поэтому они очень опытны в старых технологиях.
Но главная причина того, что коммерческая разработка игр предпочитает C ++, заключается в том, что она используется более 15 лет в игровой индустрии, и для нее есть буквально миллиарды собственных и общедоступных библиотек. Если вы хотите, скорее всего, кто-то встроил его в c ++.
Сказав, что java становится все более и более популярным, поскольку он облегчает разработку в широком распространении и постоянно изменяющейся мобильной архитектуре, но в самых современных играх в течение некоторого времени будет сохраняться ядро, написанное на c ++.
Objective-C для iOS-устройств, конечно. https://developer.apple.com/library/ios/#referencelibrary/GettingStarted/RoadMapiOS/chapters/Languages.html И большинство программ OS X также кодируются в нем: https://developer.apple.com/technologies/ макинтош / cocoa.html