Чему я должен научиться создавать Mafia 3?

Я хочу знать, какие еще вещи (например, какой 3d движок) мне нужно научиться создавать, например, в Mafia 2 или GTA IV.

5 ответов

Решение

Разработка игры со сложностью и масштабностью, скажем, Mafia или GTA - задача не из легких. Несколько сотен человек участвуют в процессе разработки такой игры, как GTA или любая другая игра ААА. Разработка является очень трудоемкой и нетривиальной задачей в целом. Для одного человека в течение жизни не должно быть возможности выполнять всю работу самых разных видов (дизайн, программирование, тестирование и т. Д.), Реализуя игру с такой же сложностью и качеством.

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

  • Дизайн игры
  • 3D Графика
  • 3D моделирование
  • Текстурная инженерия
  • Разработка шейдеров
  • Техника освещения и теней
  • 3D Space Partitioning
  • Методы выбраковки объектов
  • Звуковая инженерия
  • Управление ресурсами
  • Управление объектами в игре
  • 3D обнаружение столкновений и реагирование
  • Программирование GUI
  • Scripting
  • ...

Тем не менее, для "начинающих разработчиков C++" первым шагом должно стать проникновение в язык программирования C++ (и действительно, действительно понимание концепций) и фундаментальные структуры, такие как std а также boost и тому подобное. Тем не менее, (хобби) разработка игр - потрясающая вещь, и я не хочу, чтобы кто-то испортил удовольствие. Скорее наоборот: я (хобби) разработчик игр, так как мне было 13 лет, так что больше половины моей жизни, и это все еще приносит массу удовольствия. Но это заняло много времени, чтобы прийти туда, где я нахожусь...

UDK(Unreal Development Kit) для движка и нереальный скрипт для языка.

Вам нужно выучить Lua или что-то подобное. С C++ вы можете создать отличный игровой движок:-)

Я не профессиональный разработчик видеоигр, но если вам интересно, вы можете взглянуть на что-то вроде openGL и начать играть с фигурами или чем-то еще. Существует инструментарий C++, так что вы можете использовать openGL, его можно найти здесь:

http://www.nigels.com/glt/

Хотя я не использовал эту привязку, весь мой опыт (к сожалению) связан с JOGL (Java openGL).

Все возможно:)

Первое, что вы должны сделать, это изучить C++. Вы должны узнать, как работают указатели, структуры, классы. Это то, что вам нужно выучить, без этого вы ничего не сможете создать.

Мое мнение, забудьте о любых других языках, C++ - ваш путь. Обучение может занять месяцы, но не сдавайтесь:)

После C++ вы можете изучать основы графики. Вам решать, какой путь выбрать, если DirectX или OpenGL. Я за DX.

Я знаю довольно хороший двигатель, например двигатель Leadwerks. Он имеет простой фреймворк, поэтому вы можете кодировать свою игру только с известными знаниями C++ и создавать сцены в редакторе.

Другие вопросы по тегам