Designer Resources/ru
Внутренние ресурсы |
Начало / Русская DA Builder Wiki / Поделиться ВКонтакте
|
Contents
Обзор
В настоящей статье мы объясним, что такое внутренние ресурсы (Designer Resources). Итак, внутренние ресурсы - это такие ресурсы, как скрипты, диалоги, ролики, Plot-файлы, локации и так далее. Строго говоря, эти ресурсы содержат в себе информацию о том, каким образом игра "использует" художественные ресурсы (en). Внутренние ресурсы всегда хранятся в SQL базе данных Тулсета.
В правой части (по умолчанию) тулсета находится палитра ресурсов, представленных в виде иконок. При нажатии на иконку ниже отображаются все ресурсы выбранного типа, используемые в модуле, с которым вы на настоящий момент работаете. При первом открытии тулсета это будут ресурсы модуля основной кампании (Single Player), которые, ещё раз напоминаем, трогать не надо, лучше скопировать их в свой модуль или сделать свой модуль подчинённым по отношению к модулю основной кампании.
Каждый ресурс имеет в дополнение к обычным свойствам ещё и глобальные свойства, в которых приводятся наименование и связи с модулями, а именно модуль, в расширение которого создан ресурс и модуль - собственник ресурса. Эти свойства определяют внешние связи ресурса и очень важны. Прежде чем создать ресурс необходимо предварительно создать модуль.
Присвоение имён ресурсам должно происходить в соответствии с Соглашением об именах ресурсов. Соглашения о наименовании и структуре папок на палитре ресурсов отсутствует, однако, если вы хотите работать с большим удобством, особенно в больших проектах, следует также соблюдать некоторые правила, о которых написано ниже.
Какой инструмент используется для создания или редактирования ресурса зависит от типа ресурса. Смотрите ниже.
Типы ресурсов
Смотрите статью о Палитре ресурсов (en) и список типов ресурсов (en).
Создание нового ресурса
Вы можете создать новый ресурс посредством меню "File", или нажатием правой кнопки мыши на палитре ресурсов, и выбором пункта меню "New". Далее выберите из списка типов ресурсов необходимый вам.
Далее вам необходимо указать имя ресурса и его глобальные свойства.
- Name - Имя, под которым движок игры будет знать создаваемый вам ресурс. Имя должно быть уникальным для всей базы, а не только для текущего модуля, и написано в нижнем регистре. После создания ресурса имя будет автоматически присвоено и его свойству Tag(признак). Тэг также должен быть только в нижнем регистре.
- Folder - Папка палитры ресурсов, в которую будет перемещён ресурс после его создания. Это свойство применяется только для организации более удобной навигации по ресурсам. Например можно использовать следующую структуру: "Папка модуля/Папка квеста(Основные ресурсы модуля)/Тип ресурса/", например "Your module/Your quest/Scripts" или "Your module/Global/Scripts".
- Module - Устанавливает модуль, расширение которого планируется с помощью создаваемого ресурса. Например, если вы модифицируете основные ресурсы игры, то это значение должно быть "Game Core Resource", если основную кампанию, то "Single Player", если же вы создаёте полноценное расширение, то в этом поле выбираете свой модуль, который будет совпадать с полем "Owner Module" (Модуль - собственник). Ресурсы, включённые в "Game Core Resource" будут доступны для всех модулей, тогда как ресурсы конкретного модуля будут доступны только для него.
Экспорт ресурсов производится в папку модуля - собственника на диске.
- Owner Module - Модуль - собственник ресурса, то есть модуль, который наследует данный ресурс. Экспорт готовых ресурсов производится в папку этого модуля на диске и игра распознаёт его только тогда, когда в игре включён этот модуль.
- State - В данном поле можно указать состояние ресурса, а именно Written, Edited, Pre-localization, Localization, Voice over, Voice over ready, то есть Написан, Отредактирован, Готов к локализации, Локализован, С голосом, Готов к наложению голоса. В общем что-то подобное, может пригодиться для организации работы над проектом нескольких моддеров либо чтобы самому не запутаться в большом проекте.
- Attributes - Здесь только один атрибут, а именно "Checkout resource after creation", позволяющий сделать чекаут ресурса и открыть его сразу после создания.
Редактирование ресурсов
После того, как вы создадите ресурс, вы можете редактировать его. Заметьте, что в тулсете каждому ресурсу ассоциированы отдельные панели инструментов.
В случае ресурсов, размещаемых на локации, необходимо отметить, что если ресурс (например существо или размещаемый объект), уже размещено на локации, редактировать его свойства в тулсете будет невозможно, то есть после редактирования ресурса на палитре, ресурс на локации - не обновится. Вам нужно будет редактировать его свойства в самой локации либо программным путём в игре.
Также, если вы редактируете локацию в тулсете, можно на отредактированном ресурсе на палитре нажать правую кнопку мыши и выбрать пункт меню "Refresh", что обновит все экземпляры ресурса во всех локациях, даже не открытых в тулсете.
Чтобы изменить любое из основных свойств ресурса вам необходимо будет сохранить ресурс, сделать чекин, и только после этого менять основные свойства. После этого также проведите процедуру обновления (Refresh), что обновит все связи.
Удаление ресурсов
Ресурс не может быть удалён до тех пор, пока он находится в состоянии checked out, то есть доступен для редактирования. Для удаления ресурса необходимо либо провести процедуру check in, либо наоборот, отменить процедуру check out. Более подробно об этих процедурах и состояниях можно прочитать здесь.
В тулсете доступна возможность восстановления удалённых ресурсов. Для этого необходимо в меню "Tools" выбрать пункт "Deleted Resources", что вызовет список удалённых ресурсов, в котором вы можете найти и восстановить ресурс.
Зависимости
В тулсет встроены механизмы проверки зависимостей ресурсов, которые позволяют обеспечивать общую целостность базы данных и избегать пустых ссылок. Пример работы этих механизмов можно увидеть при попытке удаления ресурса, на который есть ссылки в других ресурсах, когда тулсет откажется выполнять ваш запрос с указанием связанных ресурсов. Например, если вы пытаетесь удалить с палитры ресурсов существо, размещённое на локации, у вас это не получится до тех пор, пока вы не удалите это существо с локации и не сделаете чекин локации (чекином вы как-бы подтверждаете правильность внесённых изменений), так как если бы вы смогли удалить существо без чекина изменённой локации, а потом бы сделали отмену изменений локации, то в ней бы оказалась пустая ссылка на удалённое существо.
Если вы удаляете ресурс, то убедитесь, что связанные с ним ресурсы освобождены от ссылок на него.
Круговая порука
Некоторые ресурсы содержат круговые ссылки, например ресурс А может ссылаться на ресурс Б, который, свою очередь, имеет ссылку на ресурс А. Такое состояние называется круговой порукой. Такая ситуация возможна, например, между локацией и сценой, когда локация имеет ссылку на размещённую на ней сцену, а сцена имеет ссылку на локацию, в которой размещена. Другим примером такой зависимости может быть пара Plot-файл и ассоциированный с ним скрипт.
Единственным путём удаления ресурсов, связанных круговой порукой, является предварительное изменение связей одного или нескольких ресурсов, позволяющее разорвать эту цепь. Для примера, вы должны удалить сцену с локации, а в сцене удалить ссылку на локацию, и только потом уже можно удалять ресурсы с палитры. Тулсет не признаёт цепочку удалений как одну транзакцию.
Экспорт ресурсов
Информацию о том, как экспортировать ресурсы, ищите в статье Экспорт модуля.
Глобальные свойства ресурса
Каждый ресурс имеет определённый набор глобальных свойств, которые вы можете задать при создании ресурса либо в окне глобальных свойств, вызываемом с помощью выбора пункта "Properties" в контекстном меню ресурса на палитре. Все свойства приводятся на основной вкладке окна свойств. Описание свойств приведено в разделе Создание нового ресурса настоящей статьи.
На вкладке "References" приведён список связанных ресурсов, на которые ссылается текущий ресурс, а вкладка "Referenced by" содержит список связанных ресурсов, которые ссылаются на текущий ресурс.
Разное
- Редактор строк - Инструмент, позволяющий получить доступ почти ко всем текстовым строкам модуля, отображаемым в игре.
- Типы ресурсов (en) - Список используемых в игре типов ресурсов (возможно список неполный).
Язык: | English • русский |
---|