начни карьеру в IT прямо сейчас
IT Star предлагает полное сопровождение всем желающим освоить новые направления в сфере IT. Мы также обучаем сотрудников белорусских компаний по заказу нанимателей.
30 марта — 2020
Языки программирования для создания компьютерных игр
Компьютерные игры – одно из самых динамично развивающихся направлений в сфере IT. Только в США выручка от продажи компьютерных игр составляет за год около 30 миллиардов долларов. Это отражается и на зарплате разработчиков видеоигр, поэтому изучение языков, на которых пишутся игры – хороший шанс найти высокооплачиваемую работу. В своей заметке мы расскажем о самых популярных языках программирования для создания компьютерных игр.
Устаревшие языки для устаревших игр
Первые видеоигры создавались ещё не для персональных компьютеров, а для игровых приставок. Например, легендарная игра Марио была написана на языке программирования Ассемблер. Этот язык использовался и в десятках других игр, продающихся десятками миллионов копий. Первый суперпопулярный шутер от первого лица Doom, появившийся в 1993 году, был создан на читающимся классическим языке программирования Си. Игра стала законодателем мод в своем жанре. А Си и до сих пор широко используется в программировании, поскольку отличается простотой и четкой структурированностью. Хотя для современных игр программирования разработчики выбирают уже другие, более современные, языки.
На чем пишут игры сейчас
С++
Язык С++ оказался настолько универсальным, что его используют в самых различных направлениях программирования. Создатели игр также не обошли его стороной, написав на нем несколько удачных игровых движков. Одним из ключевых преимуществ этого языка является гибкость и кроссплатформенность, когда игру под персональный компьютер легко адаптировать под игровую консоль. Именно на этом языке написана популярнейшая MMO RPG World of WarCraft, которая собрала 20 миллионов только официальных подписчиков. С++ считается относительно сложным языком для разработчиков видеоигр, однако его широко используют крупные разработчики. На нем написаны движки Cry Engine (шутер Crysis) и Havok (рпг-игра Dark Souls). Если у вас уже есть опыт в программировании, хотя бы небольшой, добро пожаловать на курсы C++ в IT Star. Полученный комплекс практических знаний позволит без труда создавать игры на этом языке.
C#
Мы говорим о языке программирования C#, но подразумеваем, в первую очередь, игровой движок Unity. Его используют для разработки игр под консоли и мобильные устройства. А ещё с помощью Unity создаются игры в социальных сетях, как, например, Вконтакте. Вы тоже наверняка сталкивались с изданиями на C#, если метали птиц в Angry Birds – игре, входящей в топ-3 по популярности среди мобильный игровых приложений. Мы рекомендуем C# для новичков в программировании, так как компания Microsoft, создавшая этот язык, написала немало качественных учебников и сред разработки для него.
Java
Java развивается параллельно с C# и имеет ряд общих черт с этим языком. Однако имеет одну ключевую особенность – игры на Java почти не адаптируются под конкретные платформы. Конечно, эта особенность условна, поскольку игры приходится дорабатывать отдельно для ПК, консолей и мобильных устройств. Но это не мешает создавать настоящие хиты на Java, к каковым без сомнения можно отнести MineCraft с открытым исходным кодом.
В академии IT Star также действуют курсы Java Developer (базовый уровень и продвинутый уровень). Они позволят вам сделать первые шаги в освоении этого универсального языка программирования. Некоторые наши выпускники уже успешно трудятся в IT-компаниях, разрабатывающих компьютерные игры. Если вы также хотите стать востребованным специалистом – приходите в IT Star!
Теперь курсы программирования доступны и в формате онлайн-обучения
Уроки проходят на инновационной образовательной платформе. Совместно с преподавателем Вы разбираете новые темы, а затем дополнительно изучаете предложенные методические пособия. Программа курсы программирования онлайн -может быть изменена, исходя из ваших целей и пожеланий. Учитесь онлайн — это комфортно и результативно!
C# и геймдев
Насколько удобен C sharp для разработки игр? Причем не в контексте использования с юнити, а просто? Есть ли какие-то известные игры, где c sharp используется в качестве основного языка при разработке?
16K открытий
136 комментариев
Написать комментарий.
Я в этом слабенький, но слышал, что для игр лучшим является с++
Развернуть ветку
Аккаунт удален
Развернуть ветку
8 комментариев
Аккаунт удален
Развернуть ветку
>нафига писать свой движок, если есть куча готовых.
Потому, что мне нравится C#, как и большинству моих знакомых кодеров.
>Если хочется сделать что-то серьезное, то тогда С++\С.
Плюсы на нормальном уровне гораздо сложнее в изучении, насчет си не знаю.
Развернуть ветку
63 комментария
я как системный программист с опытом 10 лет, хочу заметить что недостатком шарпов является сборщик мусора, в остальном он ничем не хуже схх. если память использовать аккуратно вы ничего не выйграете. в остальном шарпы новее чем убогий схх. хотите системного хардкора учите D или RUST.
Развернуть ветку
5 комментариев
Мне кажется в современном мире геймдева нужно выбирать не язык программирования, а подходящую среду\платформу\движок.
Развернуть ветку
Развернуть ветку
Бредовый какой то вопрос, если делаете игру на юнити там апи на основе сишарпа. Смысл вообще спрашивать про сишарп без привязки к движку.
Развернуть ветку
Писать на нём очень приятно.
Библиотеки просто подключаются, но по ним меньше документации и самих библиотек меньше.
О Mono можно говорить всё что угодно, но по факту нигде, кроме Windows, игру запустить будет нереально.
Пользователям потом придётся возиться с .Net Framework, ставить разные версии, но это не так уж и сложно.
В целом, лучше использовать Unity.
Развернуть ветку
Дратути net core
Развернуть ветку
А, забыл. Производительность у него средняя. Простенькие проекты вполне выдержит. Выдержит и по-сложнее. Но всякие физические симуляторы или игры с ААА-графикой — это не сюда уж точно.
Развернуть ветку
3 комментария
На самом деле это вечный холивар и спроси ты это на техническом сайте или чате, то тут же поднялся непеальный холливар)
Любой язык программирования(далее яп) — это просто инструмент, и от того как ты им владеешь, будет зависеть то, на сколько тебе удобно будет писать на нём тот или иной продукт.
Конечно у любого яп есть свои технические особенности (на то их так много). Конкретно для C# основной и самый кричащий момент — это то, что он предназначен под windows. Конечно есть Mono Framework, но если честно, то я не видел ни одного реально классного продукта, который был бы написан на нём под Linux. А для геймдева так и вовсе.
В плане применения конкретно к геймдеву (если не считать Unity и невозможности написания под другие платформы из коробки), то у C# очень мало инструментов для написания игр. Майкрософт пытались протолкнуть XNA — свою разработку для написания игр, но что-то как-то заглохло.
Под мобилки писать код на C#, конечно легче, чем под Linux, ибо есть Xamarin(фреймворк для работы с андроид и iOS из C#) , но для игр его вообще не используют — тот же Unity.
В целом и общем язык не так сильно располагает к программированию игр «с нуля». Так что в отрыве от Unity, я бы не стал писать на C# серьёзную игрулину. Ну только если для общего развития. Хотя я безумно люблю C#, все проекты в моей лабе я потдерживаю именно на его основе
Развернуть ветку
Конечно есть Mono Framework, но если честно, то я не видел ни одного реально классного продукта, который был бы написан на нём под Linux.
Развернуть ветку
6 комментариев
Спасибо, конечно, за названия игр. Я благодарен и вам, но основной вопрос в посте — какие плюсы и минусы у си шарпа для геймдэва.
Развернуть ветку
плюсы: есть юнити
минусы: нет анрил
Развернуть ветку
2 комментария
Плюсы и минусы языка в геймдеве +/- полностью совпадают с его плюсами и минусами как таковыми, на самом деле.
Развернуть ветку
Его развитие сейчас переключается на опенсоурсную и более менее кросплатформенную версию .Net Core и вроде говорят, что там и производительность в некоторых местах выше стандартной.
Развернуть ветку
В геймдеве популярнее C++, на нем большинство движков написаны
Развернуть ветку
только игры пишут на скриптовых языках, почти все, и перед ними у юнити капитальное преимушество, тк шарпы #1 вируалка
Топ-10 игр, написанных на Unity
Новые миры, загадки, приключения и квесты – от всего этого ребенок может получить массу впечатлений не отходя от компьютера или смартфона. Ведь в современных гаджетах уже содержится много разных игр для детей. Помимо удовольствия есть еще и польза от гейминга.
Исследователи из Швеции, Германии и Нидерландов выяснили, что ребята 10-12 лет, которые часто играли в игры, показывали более высокий рост общего уровня интеллекта, чем их одногодки.
Некоторые дети настолько сильно увлекаются играми, что хотят пойти дальше – сделать их своим хобби или даже профессией в дальнейшем. Для таких пытливых умов есть уроки программирования для детей, где им рассказывают и показывают, как создавать виртуальные миры самостоятельно. Одной из самых удобных платформ для этого является Unity. Подробнее о ней расскажет школа программирования для детей «Пиксель». Далее вы найдете подборку топовых игр, созданных на Unity, а также узнаете, как эти игры создаются разработчиками.
Как происходит создание игр на Unity?
Обучение созданию игр для детей очень похоже на то, как настоящие айтишники делают цифровые вселенные. Это увлекательный и творческий процесс. Иногда он начинается с придумывания идеи, а порой разработчики делают сначала какую-то уже существующую игру (или похожую), а затем привносят в нее что-то свое и получается совсем другая работа.
Начать творить можно, основываясь на уже существующие шаблоны в Unity через Microgame и Mod. Такой подход помогает быстро втянуться в разработку даже новичкам. При этом ваша игра не будет слишком похожа на другие, так как у каждого шаблона есть своя коллекция ресурсов, которые можно задействовать на свой вкус.
Создание компьютерной игры на Unity как на занятиях для взрослых, так и на уроках программирования для детей состоит из нескольких этапов:
- Оформление идеи и создание прототипа. Сюда относится выбор жанра и формата игры, проработка локаций и персонажей, концептуальные зарисовки и все остальное, что связано с логикой и сутью игры.
- Написание игры. Если говорить просто, то на этом этапе разработчик в определенной среде и на специальном языке программирования прописывает код.
- Тестирование. Разработчики отслеживают баги и проверяют, чтобы все функции игры работали как надо.
- Релиз с последующим продвижением. Команда представляет игру всему гейминг сообществу и реализует рекламный план по распространению своего цифрового творения.
Создание игр для детей происходит примерно по такой же модели, но больше внимания уделяется именно обучающему компоненту. То есть пока что для ребят цель – не продать игру, а научиться ее делать правильно. Познакомиться с Unity и найти более развернутые примеры того, как создаются игры, можно с помощью бесплатных видео уроков на YouTube.
Языки программирования, на которых были написаны популярные компьютерные игры — пять вдохновляющих примеров
Компьютерные игры — это большой бизнес. Суммарная выручка индустрии видеоигр в США достигла 23,5 миллиардов долларов в прошлом году, что на 5% больше, чем в 2014. За каждой великой игрой стоят программисты, которые вносят существенный вклад в конечный продукт. Конечно, для создания разных игр используются разные языки программирования. В данной статье мы представим вам несколько самых популярных.
Язык ассемблера
Многие игры для Sega и Dendy были написаны на различных диалектах языка ассемблера, включая Super Mario Brothers.
Игры серии Super Mario были проданы тиражом более 70 миллионов копий. IGN назвала третью часть Super Mario Brothers самой великой игрой всех времён.
Язык Си
Язык Си до сих пор остаётся одним из самых популярных языков программирования из-за своей относительной простоты и чёткой структуры. Компания id Software использовала Си для создания игры Doom, впервые выпущенной в 1993 году.
Doom была названа самой влиятельной FPS-игрой, став прообразом многих других игр от первого лица и 3D-игр в общем. По приблизительным оценкам Doom набрал около 10 миллионов установок в 1995 году.
С++
Язык С++ использовался для создания многих современных операционных систем, софта, игр и игровых движков. Благодаря его гибкости, игры можно относительно несложно портировать с ПК на консоли и в обратном направлении. Одной из самых популярных игр, написанных на С++, является World of Warcraft.
С момента запуска было продано 14 миллионов копий. 48% подписчиков проживают в азиатском регионе, 22% из США. На вики по WoW содержится более 100 000 статей.
C#
Разработанный компанией Microsoft в 2000 году, С# стал довольно популярен среди разработчиков игр. Движок Unity, широко используемый при создании игр для ПК, консолей и мобильных устройств, написан преимущественно на С#. Одна из самых заметных игр в данном классе — Angry Birds.
Angry Birds находится на третьем месте по популярности среди всех игры для iOS всех времён, сразу за Candy Crush Saga и Fruit Ninja. Стоимость разработки первой версии игры составила порядка $140 000, что является очень скромным числом в своём роде. Четыре человека работали над игрой суммарно порядка восьми месяцев.
Java
Java является в некотором роде родственником C#. Они развиваются под влиянием друг друга, оба имеют сборщики мусора и объектно-ориентированы. Но Java изначально позиционируется как платформонезависимый язык, что означает, что он (по задумке) работает абсолютно одинаково на всех устройствах. Истории успешных игр, написанных на Java, включают в себя RuneScape и Minecraft.
Альфа-версия игры была создана всего за 6 дней. Minecraft — вторая самая продаваемая игра в мире. Изначально она называлась «Cave Game».
На данный момент этот блок не поддерживается, но мы не забыли о нём! Наша команда уже занята его разработкой, он будет доступен в ближайшее время.
Хотите найти больше материалов по разработке игр и, может быть, даже разработать одну свою? Загляните в наш раздел по геймдеву.