Теория MMO: неММО: Движок
Что такое игровой движок, зачем его использовать, что он из себя представляет?
Именно такими вопросами я недавно задался, ну а раз они есть, то на них нужно искать ответы.

Думаю многие хоть раз задумывались о данных вопросах, но по каким-то причинам, откладывали поиск ответа «напотом», тем самым отодвигая поиск информации на неопределённое время. Что же, если вы до сих пор не знаете что такое игровой движок, то настало время приоткрыть завесу тайны.

Собственно:

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

В большинстве игр используются такие подсистемы, как:

  • Графическая
  • Подсистема ввода
  • Звуковая
  • Системное ядро


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

Более подробно ознакомиться с движками, а также рассмотреть пример написания оного можно здесь (первая часть), тут (вторая часть) и вот тут ( третья часть).

Post scriptum: приведённые статьи являются переводами на русский язык, оригиналы можно отыскать на этом сайте.

36 комментариев

avatar
Хм теперь mmozg филиал вики? )
  • 0
avatar
Давно предлагали сделать.
  • 0
avatar
А смысл еще одного зеркала?
  • 0
avatar
Я некотором недоумении. Что хотел донести автор?
  • +1
avatar
Мне казалось, что заметку я создавал с одной лишь целью: дать базовые представления о игровом движке. Конечно, есть люди, которые уже давно это знают и это вполне нормально, для них в этом нет ничего особенного и они просто не видят смысл, в том, чтобы публиковать что-то на эту тему. Дело в том, что некоторые люди, (тут я прежде всего подразумеваю себя и некоторых моих приятелей) всегда принимали некоторые базовые понятия как данность и даже не стремились узнать о них хоть что-то. Например, если человек не знает законов физики, то это никак не мешает ему ходить, бегать или прыгать. Обязан ли он их знать? Это зависит от его стремления расширять свои знания. Тоже самое можно сказать и про игры, ведь игроки зачастую не задумываются, про то, как работает игра и как она создавалась. Именно таким игроком был и я. Теперь мне захотелось найти информация о создании игр и первое, что пришло мне в голову при поиски данных — это движок игры. После того как я получил поверхностную информацию, мне захотелось ей поделиться и это воплотилось в заметку. Честно говоря я не преследовал цели «пародировать» wiki, но всё же получилось слишком уж википидично, признаю.
Комментарий отредактирован 2015-12-10 12:50:54 пользователем Henum
  • 0
avatar
Ну просто получилось, что вся заметка это определение термина.
Можно было бы например указать, что вот такая игра использует такой движок, такая этот.
  • 0
avatar
Может быть так получилось потому, что цель заметки, как раз таки познакомить читателя с определением этого термина?

А вот писать про использование определённых движков в разных играх — это не совсем то, к чему я стремился.
Хотя, дополнить текст этим, определённо можно, неплохая идея, спасибо!
Комментарий отредактирован 2015-12-10 13:07:40 пользователем Henum
  • 0
avatar
Да но такая формулировка термина не корректна,
Движок — это набор систем, которые упрощают наиболее часто используемые функции игры
Это описание игрового бота,

движок же это совокупность программных комплексов облегчающих разработку игры(функций игры)
Комментарий отредактирован 2015-12-10 13:13:43 пользователем grehosh
  • +1
avatar
движок же это совокупность программных комплексов облегчающих разработку игры(функций игры)
Нет. Есть движок и есть среда разработки. Эта граница смазана, поскольку само собой разумеется что когда разрабатываться движок под него сразу делается и среда разработки. Но все же найти границу можно. Иногда бывает что одна среда разработки используется для нескольких движков или нескольких версий одного и того же движка (например Unreal Engine и Unreal Development Kit)
  • +1
avatar
Есть движок и есть среда разработки
ок, но это не меняет
Движок — это набор систем, которые упрощают наиболее часто используемые функции игры
Это описание игрового бота,

Ни среда разработки, ни движок не про это.
  • +1
avatar
Ну это да. Бот от Бога :)
  • 0
avatar
Ребята, вы оба не правы :)
Движок действительно не упрощают наиболее часто используемые функции игры. Под такое определение и правда разве что бот подходит.
Конечно, это и не IDE, хоть с готовым движком игру написать и проще, чем ваять свой велосипед.

Движок — это совокупность взаимосвязанных библиотек, обеспечивающий некоторый готовый набор механик. Например, это может быть механика взаимодействия предметов, механика рендеринга, механика физики, механика скриптования, механика взаимодействия с устройствами ввода-вывода. Список, понятно, не полный. Его можно использовать просто как чёрный ящик, оборачивая вокруг свой дизайн, скрипты, whatever.
  • +2
avatar
Движок — это совокупность взаимосвязанных библиотек
Юнити содержит в себе IDE. хотя можно использовать и стороннюю.
  • 0
avatar
Сама по себе юнити IDE не содержит. Или вы можете назвать игру, в которой можно вызвать редактор?
  • 0
avatar
Лучше не надо про Юнити. Потому что это ни то ни другое. Это мультиплатформа.
Хотя на офф-сайте на сайте они про себя пишут — Unity is the ultimate game development platform.
  • 0
avatar
Да согласен, лучше про платформы не вспоминать )
  • 0
avatar
Ну мы же не про игры в конечном виде сейчас говорим?
  • 0
avatar
Ну, не знаю. Я бы всё-таки отделял средства разработки от собственно того, что потом будет частью игры.

Тем более, что наверняка там слегка обработанный напильником eclipse какой-нибудь и всё.
  • 0
avatar
Думаю, многие хоть раз задумывались о таких глобальных процессах мироздания, как Большой взрыв, формирование чёрных дыр, разделение материи на обычную и т.н. тёмную. Так вот, метеорит — это просто камень. А за всем остальным — в википедию.

Какое-то вот такое ощущение от публикации. Надо либо глубже самостоятельно прорабатывать тему, либо сразу использовать формализованный сухой язык.
  • +2
avatar
Лаконичненько…
  • 0
avatar
Да, но я ведь и не ставил перед собой цели подробным образом расписывать что такое движок, мне лишь хотелось познакомить тех людей, кто мало что о нём знал, с его определением.
Комментарий отредактирован 2015-12-10 13:10:55 пользователем Henum
  • 0
avatar
Ну… скажем так, если кто-то не знал, но хотел узнать, то выше правильно заметили, есть википедия.

В моем представлении, эта заметка должна была выглядеть примерно так:

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

Примерно так. То, что вы написали. тянет скорей на ответ из экзамена «Расскажите об игровых движках на 1000 символов».
  • +1
avatar
На 1000 как раз таки можно подробнее немного расписать. А тут до 200 не дотягивает.
  • 0
avatar
Скопируй заметку в счетчик =))
Комментарий отредактирован 2015-12-10 13:42:02 пользователем Kaizer
  • 0
avatar
До двухсот слов и правда не дотягивает :)
А символов и правда больше тысячи.

Да, скопировал, ну что теперь.
  • 0
avatar
А, точно, ты же про символы… Я привык всегда слова считать. Обычно всегда по ним меряют, а не по символам.
  • 0
avatar
Я не просто так про экзамен упомянул, там ответы обычно символами отмеряют.
  • 0
avatar
Словами всегда было, сколько помню.
  • 0
avatar
Возможно получилось не совсем так, как я планировал, с другой стороны всё мы люди и всё совершаем ошибки, а я себя отношу к людям, поэтому может быть и следовало написать по другому (=
В любом случае спасибо за замечание, постараюсь исправиться.
  • +1
avatar
Грубо говоря, на пальцах — игровой движок — программный код связывающий воедино модели, текстуры и все такое прочее и управляющий всем этим.
  • 0
avatar
Смотрите и ужасайтесь Игровому Движку :)
  • +8
avatar
Вызов принят
  • 0
avatar
Физику не обязательно реализовывать внешние. Какая-то схема адептов PhysX :)
  • 0
avatar
Мне кажется, что стрелки — это не связи, а состав.
  • 0
avatar
Хех.
В каком-то смысле автор заметки свою задачу выполнил: почитав комментарии к ней, свои познания в этой области обогатить уже можно :)
  • 0
avatar
комментаторы сделали все за автора :)
  • 0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.