|
Страница 2 из 5
Torque Game Engine(http://www.garagegames.com)
Только факты:
| Рассматриваемая версия | TGE 1.4 |
| Платформа, OS | Windows, Linux, MacOS, XBox 360 (другая лицензия) |
| Язык программирования | C++ |
| Render API | OpenGL / D3D |
| Поддержка сценариев (scripting) | Torque script |
| Физика | Своя (collision detection, rigid body) |
| Сеть | TorqueNet |
| Встроенные редакторы | Редакторы уровня, GUI, скриптов, ландшафта (в версии 1.5 источников света и лайтмапов) |
| Лицензия / стоимость | Минимальная 150$ |
Это легендарный движок, который просто поражает списком своих возможностей при своей низкой цене. Он был признан лучшим движком для создания игр под Мак компанией Apple, его использует NASA, о создании игр на Torque написаны книги. Конечно, движок выглядит особенно привлекательно, когда узнаешь о его символической цене (разработчик заявляет о том, что Вы можете пользоваться теми же технологиями, что и "большие дяди" всего за 150 у.е. - вот уж, "дешево и сердито".
Torque действительно обладает рядом ярких возможностей, которые выгодно выделяют его среди общей массы. К ним относятся и встроенная система выполнения сценариев Torque script, которая (теоретически) позволяет написать продукт без изучения / изменения исходного кода движка, и встроенный debugger этих же сценариев (кстати, с возможностью удаленной отладки), и поддержка сети (клиент - сервер), именуемая TorqueNet и встроенный редактор, который позволяет управлять игровыми объектами, уровнями и пр. в режиме реального времени. Ах, да! Я чуть не забыл сказать про систему GUI и встроенный редактор GUI, экспортеры из пакетов моделирования, редактор ландшафта etc, etc, etc. К "железу" он относится более чем лояльно - авторы заявляют о поддержке видеокарт, начиная с Voodoo3. Но это не так и хорошо - я сомневаюсь, что в наши дни можно найти человека, работающего с таким антиквариатом, а вот технологии рендеринга в движке из-за обратной совместимости, не используют возможности современных GPU (я имею в виду CPU unfriendly технологии, типа порталов и пр.).
В освоении Torque не прост, но это компенсируется хорошей документацией и несколькими книгами. Исходный код написан на C++ (вроде бы), но на самом деле многое выполнено в стиле С, код довольно трудночитабельный (как это слово), и испещрен макросами. Впрочем тем, кто не тяготеет к hardcore C++ кодингу и не считает boost пределом совершенства, я думаю - это до лампочки.
Ландшафт основан на chunk'ах, поддерживает несколько материалов, LOD'ы и detail map, само собой. Самое вкусное, что можно сопоставить звук шагов типу ландшафта буквально в одну строчку. Движок различает interior и exterior сцены и для каждого типа использует свой менеджер сцены - портальный и ландшафтный соответственно.
Система поддержки сети глубоко зашита в ядро, а в качестве сетевого протокола используется свой telnet-like протокол. Разработчики называют TorqueNet award winning technology, я не копался в исходниках сети, но скажу, что люди отзывались о ней довольно лестно. А тот факт, что существует MMORPG, использующее Torque, только подтверждает это мнение.
Синтаксис Torque script сами разработчики называют похожим на синтаксис C++, на самом деле больше всего он напоминает аццкую (позволю себе это слово) смесь С и PHP5 (IMHO) и многие вещи в нем неочевидны, но надо отдать ему должное - свою работу он выполняет, и для освоения довольно прост. К плюсам Torque script необходимо отнести его узконаправленность - это неотъемлемая часть движка, без излишеств.
Негативное впечатление у меня осталось после попытки заставить бегать 50 AI игроков по заранее расчерченным путям - движок хоть и не "умер", но FPS стал ниже нуля. Профайлингом я заниматься не стал - оставлю это для читателя.
Torque - универсальный движок и обобщенность алгоритмов это как раз обратная сторона медали. Так что скорее всего возникнет необходимость переписать какую-то часть функционала, хотя потребности типичной игры от первого лица (типа FPS) движок полностью удовлетворяет, но вот, скажем, взять и написать на нем RTS просто так не получится. Вцелом, движок остается очень привлекательной основой для Вашей будущей игры. Это подтверждают многие компании - разработчики игр.
|