Перейти к публикации
Планета Deus Ex

UnrealEd 2.2x - редактор карт для DeusEx


Рекомендованные сообщения

Опубликовано: (изменено)

Довольно давно Jim сделал адаптацию редактора UnrealEd2 от Unreal Tournament 99, чтобы он работал с картами DeusEx. В целом это работало, но у такого редактора были недостатки - не работала функция Play Map, не отображались модели, а построение путей для ИИ работало несколько иначе. В дальнейшем большинство этих недостатков было устранено, но для правильного отображения моделей требовался дополнительный шаг - конвертация их в формат Unreal 3D. 

 

В чём вообще суть проблемы?

 

Обычный UnrealEd для UT99 не умеет правильно читать модели в формате DeusEx 3D mesh напрямую, потому что ждёт свой  формат, где одна вершина занимает 4 байта. 
А в Deus Ex HP-моделях одна вершина занимает 8 байт: координаты X/Y/Z хранятся точнее, по 16 бит на ось.

Из-за этого, если дать редактору такую модель как есть, он читает вершины неправильно: берёт половинки HP-вершин и считает их обычными старыми вершинами, и в результате геометрия превращается в кашу.

 

Как была решена проблема?

 

Для редактора был создан дополнительный модуль - DXMeshExt.

 

Мы не заставляем весь UnrealEd понимать новый формат глобально. Вместо этого оставляем редактору обычный Mesh/LodMesh-объект, но отдельно храним настоящие HP-вершины Deus Ex (в side-cache).

Когда редактор хочет нарисовать модель, он вызывает функцию UMesh::GetFrame(). Её задача проста: вернуть массив координат вершин для нужного кадра анимации.

И вот здесь срабатывает модуль DXMeshExt.

Редактор предполагает что получает вершины из обычного Mesh-> Verts, но DXMeshExt перехватывает этот момент и подсовывает ему правильный массив координат, собранный из Deus Ex HP-данных. И вместо 4-байтных вершин Unreal/UT в отрисовку уходят нужные нам координаты, то есть  Deus Ex HP вершины: X/Y/Z из 8-байтного формата. 

 

Таким образом, у нас теперь есть возможность просматривать пакеты с моделями в формате DeusEx 3D, без конвертации в формат Unreal 3D, то есть теперь редактор сразу правильно распознаёт пакеты с моделями и правильно их отображает. Весь функционал сохранён - можно просматривать анимации, редактировать свойства модели и прочее.

 

Дополнительные улучшения:

 

  • Возможность предварительного просмотра ParticleGenerator прямо в редакторе. Также поддерживаются ElectricityEmitter, LaserTrigger и BeamTrigger.
  • Просмотр путей CameraPoint.

 

Построение путей для ИИ:

 

Редактор Unreal Tournament строит пути так, чтобы для каждого Inventory добавлялся InventorySpot. Это необходимо для ботов, чтобы они могли находить оружие, аптечки, и прочие предметы. В оригинальном DeusEx эта особенность была отключена, в UnrealEd 2.2x она также была отключена. В дополнение к этому был добавлен PathBlockingActor - специальный Actor, который не позволяет pathbuilder проводить пути там, где он установлен. Это как некий аналог proscribed paths в Unreal 227/Unreal Engine 2.

 

В дополнение к этому, были скорректированы константы PathBuilder, чтобы по поведению он был больше похож на DeusEx-версию, и проводил пути в том числе через узкие дверные проёмы.

 

Установка:

Нужно распаковать архив в базовый каталог DeusEx и запустить UED22x\UnrealEd.exe.

При необходимости можно отредактировать файл UnrealTournament.cmd, он используется когда вы нажимаете кнопку "Play Map!"

Скопируйте DeusExCharacters.u, DeusExDeco.u, DeusExItems.u из DeusEx\System\ в DeusEx\UED22x\, поскольку теперь они в архив не входят. Если ваш мод использует свои модели, то соответствующий package также нужно скопировать в UED22x\.

 

Примечание:

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

 

Важно:

Если вы собираетесь использовать PathBlockingActor, то обязательно включайте файл PathBlocker.u в свой мод. 

 

 

Скачать (тестовая версия):

https://drive.google.com/file/d/1qKEFd5VJ8bSqbbnqKQ0kvCG9L9O-LIym/view?usp=sharing

Изменено пользователем LoadLine Calibration
Релиз

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
×
×
  • Создать...