Некоторые пользователи, изучая основы программирования приложений или игр могут столкнуться с таким понятием, как движок. Что под собой подразумевает этот термин в подобном контексте? В программировании движок – утилита, которая позволяет автоматизировать выполнение определенных функций, в основе которого уже заложен ряд некоторых функциональных особенностей. Таким образом, с помощью этого простого инструмента можно гораздо проще и быстрее сделать свою программу, что для новичков в программировании или небольших студий может оказаться весьма неплохим решением. Конечно, разновидностей движков сегодня – несметное количество. Тем не менее, среди самых популярных и востребованных можно отметить только два из них – Unity и Unreal Engine. Также, существует весьма неплохой аналог – CryEngine, на основе которого был создан Crysis и другие шедевры. Тем не менее, этот движок не так хорош, как описанные выше, так как потребляет гораздо больше ресурсов и попросту не имеет такого функционала, который есть в описанных выше. Unity и Unreal Engine при их более детальном рассмотрении – совершенно разные, чего нельзя сказать на первый взгляд. Во-первых, это обусловлено рядом специфических возможностей движков. Во-вторых, связано с тем, что на них скрипты пишутся под различными языками программирования. Например, Unity сам по себе очень прост в освоении – достаточно беглого взгляда, чтобы понять – где какая функция. Кроме того, все скрипты на этом движке описываются исключительно с помощью объектно-ориентированных языков, то есть создавать всю логику здесь будет несколько проще. Unreal Engine представляет собой «ветерана» в области программирования, который существует практически с начала 2000-х. Чтобы работать с этим движком, вам обязательно потребуются знания C++ - функционального языка программирования, который несколько сложен в понимании. Для новичков именно язык является зачастую причиной выбора того или иного движка. Тем не менее, оба движка имеют весьма хороший функционал. Они позволяют без какого-то дополнительного кода описать физическую модель для объектов, что, например, в играх очень кстати. Если бы этого не было, то программисту пришлось бы самостоятельно, в процессе создания каждого своего «шедевра» заново повторять одни и те же строчки кода. Также, с помощью движков можно создавать анимации персонажей, а в случае с Unity это можно делать даже, не выходя из его графической оболочки. В результате, при программировании большого количества различных приложений, движки позволяют буквально автоматизировать процесс создания программ, не отвлекаясь на лишние манипуляции.