S.T.A.L.K.E.R. Wiki

We've Moved! Just as Gamepedia has joined forces with Fandom, this wiki had joined forces with our Fandom equivalent. The wiki has been archived and we ask that readers and editors move to the now combined wiki on Fandom. Click to go to the new wiki.

ПОДРОБНЕЕ

S.T.A.L.K.E.R. Wiki
Advertisement
X-Ray SDK: Level Compiler
Успешное завершение компиляции на ОС Windows 10
Успешное завершение компиляции на ОС Windows 10
Номер сборки1097
Дата компиляции2 февраля 2002
В составе xrAI.exe
xrLC_Options.dll
Работоспособностьзапускается / работает
Защита

Компилятор AI-сетки, присутствует в полном составе в составе SDK 1097, под именем xrAI.exe.

Описание

Является самой старой из известных сообществу версией компилятора ИИ. Был предназначен для сборки AI-сетки на уровнях[прим. 1][источник 1], с последующей линковкой нод для передвижения по ним ИИ и просчетом укрытий.

История сборки

Написанная в начале 2001 года Олесем Шишковцовым система перемещения ИИ, основанная на проверки коллизии и построению сплайновых путей показывала себя неудовлетворительно в тестовой сборке и в последующих тестах ИИ. В сентябре 2001, вместе с Александром Максимчуком были проведены тесты и доработка передвижения, реакции ИИ и возможность предсказать передвижение игрока, где было решено изменить систему передвижения ИИ по уровню, посредством перемещения по нодам, которые расставлялись уже исходя из имеющейся геометрии, не требуя постоянной адресации к коллизии сцены. ИИ оставалось только выбирать наилучший ближайший AI-нод, чтобы перемещаться по пространству, все также прокладывая сплайновую линию от исходной точки до точки назначения.

Изначально xrAI умел только генерировать AI-ноды по геометрии загружаемой сцены для передвижения ИИ, но за октябрь 2001 его функционал дополнялся. Была добавлена функция сглаживания нод для более плавного наклона плоскостей, возможность объединять несколько нод в одну большую, там, где не требуется большая точность перемещения и возможность визуально отслеживать процесс компиляции.

Позже компилятор в составе полной версиисборки 1098 был выложен пользователем Loxotron на GAMEINATOR forums в сливе сборок от 9 февраля 2011 года.

Технические особенности

XrAI xrDisplayForm

Форма функции xrDisplay, которая должна была визуализировать карту AI-сетки

Компилятор не ссылается на библиотеки, которые включены в состав X-Ray. Однако, в каталоге SDK, вместе с компиляторами находятся и старые библиотеки, используемые прошлыми версиями компилятора. Среди них находится xrSpherical.dll, которая отсутствовала в прошлой известной версии, но была используема компилятором примерно с июля 2001 года до неизвестного срока.

Компилятор содержит в себе следующий функционал, который отсутствует в последующих и релизных версиях xrAI, выводя ряд характерных особенностей:

  • Были добавлены ключи запуска компилятора: -f, -h/-?, -o[прим. 2][прим. 3][источник 2];
  • xrAI сам генерирует AI-сетку на уровне, не получая её от редактора[прим. 4];
  • Уже в этой версии имеется просчет укрытий для АИ[источник 3][прим. 5];
  • Возможность объединять несколько AI-нод в одну большую[источник 4][прим. 6];
  • Присутствует закомментированая функция xrDisplay, отвечающая за просмотр собранной AI-сетки, с различными режимами отображения, например, просчитанных укрытий[источник 5][прим. 7][прим. 8];
  • Для генерации AI-сетки, компилятор размещает эмиттеры, от которых идет покрытие геометрии локации AI-нодами. Но могут возникать случаи, когда эмиттер не может быть поставлен и редактор вылетит с ошибкой Can't align emitter;
  • Для работы с геометрией, компилятор считывает файл build.cform, что сохранится вплоть до релизной версии компилятора;

Скачивание и запуск

Компилятор можно запустить при наличии виртуального диска X, ссылаемого на директорию с компилятором. Для этого нужно создать .bat файл с следующим содержимым:

@%systemroot%\system32\subst.exe x: .

Сама компиляция уровня вызывается через bat-файл или командную строку, в которых нужно прописать:

x:\xrLC.exe -f %1 

Где -f — ключ, осуществляющий компиляцию, а %1 — имя собранной в редакторе сцены. Для изменения параметров сцены следует ввести -o, после имени сцены.

Интересные факты

  • Первая известная сообществу версия xrAI.
  • Первый известный компилятор AI-сетки, где появились ключи запуска.
  • Единственный известный компилятор AI-сетки, чья форма окна оформлена в книжной ориентации.

Галерея

Примечания

  1. ^ В SDK 1097 в редакторе отсутствует возможность собирать AI-сетку, потому что данный функционал присутствует здесь
  2. ^ -f <ИМЯ> — главный ключ запуска, отвечающий за компиляцию уровня
    -h (или -?) — ключ для вывода окна о существующих ключах запуска. Если запускать компилятор как обычное приложение, то это окно будет инициализироваться при запуске
    -o — возможность изменить настройки компилируемого уровня, вызывающий окно настройки сцены редактора, которое содержится в библиотеке xrLC_Options.dll
  3. ^ Однако реальная нужда в xrLC_Options.dll отсутствует по той причине, что его настройки предназначены только под xrLC, и при попытке вызова опций настройки здесь, xrAI закономерно вылетает
  4. ^ Компилятор содержит в себе фазу Building nodes...
  5. ^ Компилятор содержит в себе фазу Calculating coverage...
  6. ^ Компилятор содержит в себе фазу Merging nodes...
  7. ^ Компилятор содержит в себе фазу Visualising nodes...
  8. ^ Вызов функции xrDisplay был закомментирован, поэтому без дополнительных правок реализовать её невозможно
Источник
  1. ^ C:\Projects\xrLC\xrAI\compiler_build.cpp (файл упоминается в двоичном коде приложения)
  2. ^ C:\Projects\xrLC\xrAI\xrAI.cpp (файл упоминается в двоичном коде приложения)
  3. ^ C:\Projects\xrLC\xrAI\compiler_cover.cpp (файл упоминается в двоичном коде приложения)
  4. ^ C:\Projects\xrLC\xrAI\compiler_merge.cpp (файл упоминается в двоичном коде приложения)
  5. ^ C:\Projects\xrLC\xrAI\compiler_display.cpp (файл упоминается в двоичном коде приложения)
Advertisement