@great_mage

Можно ли написать AAA-игру на языке программирование Си?

Пока что изучаю на первом курсе язык программирования Си, к С++ и С# не расположен. Можно ли обойтись только этим языком программирования (написание движка, скрипты, в общем все составляющие), или придётся что-то да дополнительное использовать? Например тот же Openbox под GNU/Linux идеально написан, хоть это и не игра вовсе.
  • Вопрос задан
  • 2864 просмотра
Пригласить эксперта
Ответы на вопрос 8
CityCat4
@CityCat4
//COPY01 EXEC PGM=IEBGENER
Можно.

Но сложно. Инди-игру наверное еще одолеете, но вот новый FarCry или Overwatch - точно вряд ли. Слишком много великов придется самому сколхозить...

C - язык системных программ, библиотек, драйверов, консольных утилит. Что-либо юзерское на нем лабать сложно из-за необходимости колхозить множество вещей, уже давно сделанных в плюсовых тулкитах.
Ответ написан
GavriKos
@GavriKos Куратор тега Разработка игр
Можно. Но вы не напишете. И никто в одиночку без вагона кокаина - тоже. Посмотрите для примера размер команды современной ААА-игры. Думаете они там только печеньки офисные едят?
К тому же выбор ЯП конечно важен для создания игры, но далеко не только он важен. Начните ХОТЯ БЫ с выбора движка. Или вы сами будете рендер писать? Знаний хватит?
Ответ написан
Комментировать
Tiendil
@Tiendil
Разработчик ПО.
Возможно, но есть некоторые сложности.

1. ААА разрабатывают командами от 50-100 человек, так что в одиночку в любом случае будет очень долго. Скорее всего даже не сможете успевать за технологиями, чтобы соответствовать ААА :-D
2. Новые движки и либы почти (или уже совсем?) не пишутся на чистом С (может, разве что, в консолях каких он остался). Поэтому придётся линковаться с либами на С++, это может вызвать некоторые затруднения.
3. Для ААА придётся писать и набор всяких утилит (редакторов и прочего), на С. А GUI на нём уже давно не пишут.

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

к С++ и С# не расположен

Смиритесь с тем, что сейчас недостаточно знать 1 язык. Чтобы сделать что-то серьёзное и большое, по-любому придётся писать на нескольких ЯП.
Ответ написан
Комментировать
terrier
@terrier
Можно ли написать AAA-игру на языке программирование Си?

Ну, гм, в принципе, конечно, да - Quake 1/2/3, например, написаны на C. Но сейчас для такого рода игр стандарт де-факто - C++
Ответ написан
p00h
@p00h
Фехтовальщик-стропальщик
На С написано ядро Линукс, пожалуй, это о чем-то говорит)
Ответ написан
devalone
@devalone
̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻
Можно хоть на brainfuck, вопрос только в том, сколько на это усилий и денег потратится, в общем случае для создания игры выбирают не язык программирования, а движок, т.к. незачем изобретать велосипед. Если речь про то, на чём удобнее создавать движок, то на C++, больше возможностей(STL, ООП, шаблоны, etc) и есть возможность оптимизации и нет лишнего оверхеда в отличии от некоторых языков вроде джавы.
Пока что изучаю на первом курсе язык программирования Си

Здесь ошибка в слове изучаю, может тебе повезло с вузом, но в большинстве дадут пару лаб на написание хелловорлда и всё, учить нужно самому. И не думай, что выучишь один ЯП и тебе этого будет достаточно, чтоб стать ценным специалистом.
Ответ написан
Комментировать
garrydvaraza
@garrydvaraza
человек
Сишка очень нишевый язык и в данный момент не стоит использовать его нигде кроме:
1) разработки ОС
2) лоу-левел библиотек
3) сетевых либ
4) firmware

И это намного интереснее разработки игр, я гарантирую это :)
Ответ написан
Комментировать
@GreatRash
Смотря что считать ААА-игрой. Вот Марио на Нинтендо - это ААА-игра или нет? Если ваш ответ "да", то конечно можно.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы