Структура каталогов CryENGINE

Материал из CryWiki Russia

(Различия между версиями)
Перейти к: навигация, поиск
 
Строка 1: Строка 1:
-
{{В процессе перевода|дата=16 июня 2012|автор=1}}
 
-
 
== Корневой каталог ==
== Корневой каталог ==
Строка 11: Строка 9:
Каталоги '''Bin32''' и '''Bin64''' содержат 32- и 64-разрядные исполняемые файлы Sandbox ('''Editor.exe'''), программы запуска игры ('''Launcher.exe'''), и все необходимые движку DLL-файлы.
Каталоги '''Bin32''' и '''Bin64''' содержат 32- и 64-разрядные исполняемые файлы Sandbox ('''Editor.exe'''), программы запуска игры ('''Launcher.exe'''), и все необходимые движку DLL-файлы.
-
*'''Bin32\rc''': Каталог Bin32 также содержит подкаталог '''rc'''. [[Использование Resource Compiler|Resource Compiler]] (RC) может быть вызван движком по требованию для преобразования исходных ассетов в оптимизированный формат (например, TIF-текстур в DDS). 64-разрядная версия '''Resource Compiler''' не существует.
+
* '''Bin32\rc''': Каталог Bin32 также содержит подкаталог '''rc'''. [[Использование Resource Compiler|Resource Compiler]] (RC) может быть вызван движком по требованию для преобразования исходных ассетов в оптимизированный формат (например, TIF-текстур в DDS). 64-разрядная версия '''Resource Compiler''' не существует.
== Code ==
== Code ==
-
Весь исходный код C++, а также решения и файлы проекта находятся в каталоге '''Code'''. Основное решение - это <tt>Code/Solutions/CryEngine.sln</tt> или <tt>Code/Solutions/CryEngineGfx.sln</tt>, в зависимости от того, есть ли у вас SDK с поддержкой Scaleform или нет.
+
Весь исходный код C++, а также решения и файлы проекта находятся в каталоге '''Code'''. Основное решение — это <tt>Code/Solutions/CryEngine.sln</tt> или <tt>Code/Solutions/CryEngineGfx.sln</tt>, в зависимости от того, есть ли у вас SDK с поддержкой Scaleform или нет.
Для получения дополнительной информации о исходным кодом, смотрите статью «[[Работа с кодом игры]]».
Для получения дополнительной информации о исходным кодом, смотрите статью «[[Работа с кодом игры]]».
Строка 29: Строка 27:
Каталог '''Engine''' содержит множество распространяемых файлов, которые требуются рендереру и другим системам. В CryENGINE 2 эти файлы хранятся в каталоге '''Game''', но были перенесены в один центральный каталог для упрощения технического обслуживания при использовании нескольких каталогов '''Game'''.
Каталог '''Engine''' содержит множество распространяемых файлов, которые требуются рендереру и другим системам. В CryENGINE 2 эти файлы хранятся в каталоге '''Game''', но были перенесены в один центральный каталог для упрощения технического обслуживания при использовании нескольких каталогов '''Game'''.
-
*'''Engine\Config''': Конфигурация в текстовых файлах, для установки различных параметров движка для низких/высоких конфигураций ПК, консолей.
+
* '''Engine\Config''': Конфигурация в текстовых файлах, для установки различных параметров движка для низких/высоких конфигураций ПК, консолей.
-
*'''Engine\Fonts''': Стандартный TrueType шрифт, используемый в движке (то есть в внутриигровой консоли).
+
* '''Engine\Fonts''': Стандартный TrueType шрифт, используемый в движке (то есть в внутриигровой консоли).
-
*'''Engine\Shaders''': Все исходные коды и двоичные файлы шейдеров.
+
* '''Engine\Shaders''': Все исходные коды и двоичные файлы шейдеров.
-
*'''Engine\Shaders\EngineAssets''': Основные материалы и текстуры требуемые шейдерами.
+
* '''Engine\Shaders\EngineAssets''': Основные материалы и текстуры требуемые шейдерами.
== Game ==
== Game ==
Строка 38: Строка 36:
Все игровые данные и ассеты, как правило, хранятся в каталоге '''Game'''. Можно изменить название папки с игрой или использовать несколько папок одновременно в одном корневом каталоге CryENGINE. Папку с игрой и DLL игры, которые будут использоваться, могут быть настроены консольными переменными ''sys_game_folder'' и ''sys_dll_game'', которые могут быть установлены в '''system.cfg'''. Смотрите статью «[[Смена папки игры]]» для получения дополнительной информации.
Все игровые данные и ассеты, как правило, хранятся в каталоге '''Game'''. Можно изменить название папки с игрой или использовать несколько папок одновременно в одном корневом каталоге CryENGINE. Папку с игрой и DLL игры, которые будут использоваться, могут быть настроены консольными переменными ''sys_game_folder'' и ''sys_dll_game'', которые могут быть установлены в '''system.cfg'''. Смотрите статью «[[Смена папки игры]]» для получения дополнительной информации.
-
*'''Game\Animations''': Анимации и файлы Animation Graph.
+
* '''Game\Animations''': Анимации и файлы Animation Graph.
-
*'''Game\Entities''': .ent-файлы, указывающие системе сущностей, какие классы скриптовых сущностей должны быть зарегистрированы.
+
* '''Game\Entities''': .ent-файлы, указывающие системе сущностей, какие классы скриптовых сущностей должны быть зарегистрированы.
-
*'''Game\Levels''': Все уровни игры должны быть в этом каталоге.
+
* '''Game\Levels''': Все уровни игры должны быть в этом каталоге.
-
*'''Game\Libs''': Множество файлов данных для поддержки различных игровых систем.
+
* '''Game\Libs''': Множество файлов данных для поддержки различных игровых систем.
-
*'''Game\Fonts''': Дополнительные TrueType шрифты, используемые в игре.
+
* '''Game\Fonts''': Дополнительные TrueType шрифты, используемые в игре.
-
*'''Game\Materials''': Глобальные XML-файлы материалов, используемые уровнемя.
+
* '''Game\Materials''': Глобальные XML-файлы материалов, используемые уровнемя.
-
*'''Game\Music''': Музыка.
+
* '''Game\Music''': Музыка.
-
*'''Game\Objects''': Все статические объекты и персонажи вместе с материалами и текстурами необходимыми им.
+
* '''Game\Objects''': Все статические объекты и персонажи вместе с материалами и текстурами необходимыми им.
-
*'''Game\Prefabs''': XML-файлы префабы созданные в Sandbox.
+
* '''Game\Prefabs''': XML-файлы префабов созданные в Sandbox.
-
*'''Game\Scripts''': Lua scripts for Script Entity classes, AI and different game systems.
+
* '''Game\Scripts''': Lua-скрипты для классов скриптовых сущностей, ИИ и других игровых систем.
-
*'''Game\Sounds''': Все звуки.
+
* '''Game\Sounds''': Все звуки.
-
*'''Game\Textures''': All other textures required by levels or other textures re-used by multiple objects.
+
* '''Game\Textures''': Все другие текстуры требуемые уровням или другие текстуры используемые несколькими объектами.
=== Game\Libs ===
=== Game\Libs ===
-
*'''Game\Libs\ActionGraphs''': Flowgraph saved in .xml format to be used with the AI System.
+
* '''Game\Libs\ActionGraphs''': Flowgraph сохранённый в .xml-формат для использования системой ИИ.
-
*'''Game\Libs\AnimationGraphTemplates''': Templates used by the Animation Graphs that allows special interaction.
+
* '''Game\Libs\AnimationGraphTemplates''': Шаблоны используемые в Animation Graph для особых взаимодействий.
-
*'''Game\Libs\Clouds''': Data used for clouds generation.
+
* '''Game\Libs\Clouds''': Данные, используемые для генерации облаков.
-
*'''Game\Libs\Communication''': .xml files used to implement the different in-game dialogs.
+
* '''Game\Libs\Communication''': .xml-файлы используемые для внедрения различных игровых диалогов.
-
*'''Game\Libs\Config''': Default action maps templates.
+
* '''Game\Libs\Config''': Стандартные шаблоны Action Map.
-
*'''Game\Libs\EntityArchetypes''': Entity archetypes libraries; used to specify predefined entity parameters or to provide new alias names to existing entity classes.
+
* '''Game\Libs\EntityArchetypes''': Архетип-библиотеки сущностней; используются для определения предопределенных параметров сущностней или предоставления новых псевдонимов к существующим классам сущностней.
-
*'''Game\Libs\EquipmentPacks''': Pre-defined sets equipments used by actors on level startup.
+
* '''Game\Libs\EquipmentPacks''': Предустановленные наборы экипировки, используемые актёрами при запуске уровня.
-
*'''Game\Libs\FlowgraphModules''':*'''Game\Libs\FlowNodes''': Flowgraphs templates.
+
* '''Game\Libs\FlowgraphModules''':
-
*'''Game\Libs\GameAudio''':*'''Game\Libs\GameForceFeedback''':*'''Game\Libs\GameTokens''': Used by the GameTokens system to maintain persistent values across multiple levels.
+
* '''Game\Libs\FlowNodes''': Шаблоны Flowgraph.
-
*'''Game\Libs\HitDeathReactionsData''':*'''Game\Libs\MaterialEffects''': Material Effect library.
+
* '''Game\Libs\GameAudio''':
-
*'''Game\Libs\MusicLogic''':*'''Game\Libs\Particles''': Particle Effect library.
+
* '''Game\Libs\GameForceFeedback''':
-
*'''Game\Libs\Readability''':*'''Game\Libs\ReverbPresets''':*'''Game\Libs\Sky''':*'''Game\Libs\SmartObjects''': SmartObject templates.
+
* '''Game\Libs\GameTokens''': Используется системой GameTokens для сохранения постоянных значений на разных уровнях.
-
*'''Game\Libs\SoundMoods''':*'''Game\Libs\UI''':
+
* '''Game\Libs\HitDeathReactionsData''':
 +
* '''Game\Libs\MaterialEffects''': Библиотека эффектов материалов (Material Effect).
 +
* '''Game\Libs\MusicLogic''':
 +
* '''Game\Libs\Particles''': Библиотека эффектов частиц (Particle Effect).
 +
* '''Game\Libs\Readability''':
 +
* '''Game\Libs\ReverbPresets''':
 +
* '''Game\Libs\Sky''':
 +
* '''Game\Libs\SmartObjects''': Шаблоны SmartObject.
 +
* '''Game\Libs\SoundMoods''':
 +
* '''Game\Libs\UI''':
=== Game\Scripts ===
=== Game\Scripts ===
-
*'''Game\Scripts\AI''': Scripts needed by the AI system, including behavior scripts and goal pipes.
+
* '''Game\Scripts\AI''': Скрипты необходимые системе ИИ, в том числе скрипты поведения и голпайпы.
-
*'''Game\Scripts\Entities''': Script based entity class.
+
* '''Game\Scripts\Entities''': Классы скриптовых сущностей.
-
*'''Game\Scripts\Expressions''':*'''Game\Scripts\FlowNodes''':*'''Game\Scripts\GameRules''': Script side implementations for the GameRules.
+
* '''Game\Scripts\Expressions''':
-
*'''Game\Scripts\Network''': .xml data to support the network system; including scheduler and compression policies defined for the entity classes.
+
* '''Game\Scripts\FlowNodes''':
-
*'''Game\Scripts\Utils''': General purpose script functions for math operations, etc.
+
* '''Game\Scripts\GameRules''': Скриптовые реализации для GameRules.
 +
* '''Game\Scripts\Network''': .XML-данные для поддержки сетевой системы, в том числе планировщик и политики сжатия определенные для классов сущностей.
 +
* '''Game\Scripts\Utils''': Универсальные скриптовые функции для математических операций и так далее.
-
=== Pak Files ===
+
=== PAK-файлы ===
-
It is possible to store most of the content of the '''Game''' inside Pak files. The only exceptions are level files which should be stored outside of the Pak files.
+
Также можно хранить большую часть контента '''Game''' внутри PAK-файлов. Исключение составляют лишь файлы уровней, которые должны храниться за пределами PAK-файлов.
-
It is recommended to use the Resource Compiler to generate Pak files. The RC Jobs can used to automate this process along with converting intermediate files to optimized platform specific files. The [[Compiling Assets for Multiple Platforms]] document explain this process.
+
Рекомендуется использовать Resource Compiler для создания PAK-файлов. RC Job может использоваться для автоматизации этого процесса наряду с преобразованием промежуточных файлов в оптимизированные для конкретной платформы файлы. Статья «[[Компиляция ассетов для различных платформ]]» объяснит этот процесс.
== TestResults ==
== TestResults ==
-
This folder is used to place user-generated files that may be created when using console commands like '''SaveLevelStats'''.
+
Эта папка используется для размещения пользователями файлов, которые могут быть созданы при использовании консольных команд, как '''SaveLevelStats'''.
== Tools ==
== Tools ==
-
Multiple stand-alone tools and exporters for CryENGINE can be found in the <tt>\Tools</tt> directory. When redistributing a stand-alone application or game using CryENGINE, it is not needed to redistribute the <tt>\Tools</tt> directory.
+
Многочисленные автономные инструменты и экспортеры для CryENGINE можно найти в каталоге <tt>\Tools</tt>. При дистрибуции автономного приложения или игры, используя CryENGINE, нет необходимости включать каталог '''Tools'''.
== User ==
== User ==
-
This directory is creating during run-time to store files generated by CryENGINE or Sandbox. This include User profiles, compiled shader combination and some temporary files created by Sandbox. It’s safe to delete this directory when CryENGINE is not running.
+
Этот каталог создается во время выполнения для хранения файлов, созданных CryENGINE или Sandbox. Они включают в себя профили пользователей, скомпилированные комбинации шейдеров и временные файлы, созданные в Sandbox. Можно смело удалить этот каталог, когда CryENGINE не работает.
-
<br/>[[Category:Бесплатный CryEngine|Бесплатный_CryEngine]] <br/><br/>
+
[[Категория:Бесплатный CryEngine]]

Текущая версия на 18:25, 9 февраля 2013

Содержание

Корневой каталог

Корневой каталог CryENGINE содержит подкаталоги, которые кратко описаны в этом документе. Кроме того, может содержать конфигурационные файлы system.cfg и systemcfgoverride.cfg, которые используются для настройки консольных переменных.

Многочисленные лог-файлы будут записаны в корневой каталог.

Bin32 и Bin64

Каталоги Bin32 и Bin64 содержат 32- и 64-разрядные исполняемые файлы Sandbox (Editor.exe), программы запуска игры (Launcher.exe), и все необходимые движку DLL-файлы.

  • Bin32\rc: Каталог Bin32 также содержит подкаталог rc. Resource Compiler (RC) может быть вызван движком по требованию для преобразования исходных ассетов в оптимизированный формат (например, TIF-текстур в DDS). 64-разрядная версия Resource Compiler не существует.

Code

Весь исходный код C++, а также решения и файлы проекта находятся в каталоге Code. Основное решение — это Code/Solutions/CryEngine.sln или Code/Solutions/CryEngineGfx.sln, в зависимости от того, есть ли у вас SDK с поддержкой Scaleform или нет.

Для получения дополнительной информации о исходным кодом, смотрите статью «Работа с кодом игры».

Editor

Папка Editor содержит ресурсы, которые используются в Sandbox, например, иконки и прочие UI данные, настройки и шаблоны.

При дистрибуции автономного приложения или игры, используя CryENGINE, нет необходимости включать каталог Editor.

Engine

Каталог Engine содержит множество распространяемых файлов, которые требуются рендереру и другим системам. В CryENGINE 2 эти файлы хранятся в каталоге Game, но были перенесены в один центральный каталог для упрощения технического обслуживания при использовании нескольких каталогов Game.

  • Engine\Config: Конфигурация в текстовых файлах, для установки различных параметров движка для низких/высоких конфигураций ПК, консолей.
  • Engine\Fonts: Стандартный TrueType шрифт, используемый в движке (то есть в внутриигровой консоли).
  • Engine\Shaders: Все исходные коды и двоичные файлы шейдеров.
  • Engine\Shaders\EngineAssets: Основные материалы и текстуры требуемые шейдерами.

Game

Все игровые данные и ассеты, как правило, хранятся в каталоге Game. Можно изменить название папки с игрой или использовать несколько папок одновременно в одном корневом каталоге CryENGINE. Папку с игрой и DLL игры, которые будут использоваться, могут быть настроены консольными переменными sys_game_folder и sys_dll_game, которые могут быть установлены в system.cfg. Смотрите статью «Смена папки игры» для получения дополнительной информации.

  • Game\Animations: Анимации и файлы Animation Graph.
  • Game\Entities: .ent-файлы, указывающие системе сущностей, какие классы скриптовых сущностей должны быть зарегистрированы.
  • Game\Levels: Все уровни игры должны быть в этом каталоге.
  • Game\Libs: Множество файлов данных для поддержки различных игровых систем.
  • Game\Fonts: Дополнительные TrueType шрифты, используемые в игре.
  • Game\Materials: Глобальные XML-файлы материалов, используемые уровнемя.
  • Game\Music: Музыка.
  • Game\Objects: Все статические объекты и персонажи вместе с материалами и текстурами необходимыми им.
  • Game\Prefabs: XML-файлы префабов созданные в Sandbox.
  • Game\Scripts: Lua-скрипты для классов скриптовых сущностей, ИИ и других игровых систем.
  • Game\Sounds: Все звуки.
  • Game\Textures: Все другие текстуры требуемые уровням или другие текстуры используемые несколькими объектами.

Game\Libs

  • Game\Libs\ActionGraphs: Flowgraph сохранённый в .xml-формат для использования системой ИИ.
  • Game\Libs\AnimationGraphTemplates: Шаблоны используемые в Animation Graph для особых взаимодействий.
  • Game\Libs\Clouds: Данные, используемые для генерации облаков.
  • Game\Libs\Communication: .xml-файлы используемые для внедрения различных игровых диалогов.
  • Game\Libs\Config: Стандартные шаблоны Action Map.
  • Game\Libs\EntityArchetypes: Архетип-библиотеки сущностней; используются для определения предопределенных параметров сущностней или предоставления новых псевдонимов к существующим классам сущностней.
  • Game\Libs\EquipmentPacks: Предустановленные наборы экипировки, используемые актёрами при запуске уровня.
  • Game\Libs\FlowgraphModules:
  • Game\Libs\FlowNodes: Шаблоны Flowgraph.
  • Game\Libs\GameAudio:
  • Game\Libs\GameForceFeedback:
  • Game\Libs\GameTokens: Используется системой GameTokens для сохранения постоянных значений на разных уровнях.
  • Game\Libs\HitDeathReactionsData:
  • Game\Libs\MaterialEffects: Библиотека эффектов материалов (Material Effect).
  • Game\Libs\MusicLogic:
  • Game\Libs\Particles: Библиотека эффектов частиц (Particle Effect).
  • Game\Libs\Readability:
  • Game\Libs\ReverbPresets:
  • Game\Libs\Sky:
  • Game\Libs\SmartObjects: Шаблоны SmartObject.
  • Game\Libs\SoundMoods:
  • Game\Libs\UI:

Game\Scripts

  • Game\Scripts\AI: Скрипты необходимые системе ИИ, в том числе скрипты поведения и голпайпы.
  • Game\Scripts\Entities: Классы скриптовых сущностей.
  • Game\Scripts\Expressions:
  • Game\Scripts\FlowNodes:
  • Game\Scripts\GameRules: Скриптовые реализации для GameRules.
  • Game\Scripts\Network: .XML-данные для поддержки сетевой системы, в том числе планировщик и политики сжатия определенные для классов сущностей.
  • Game\Scripts\Utils: Универсальные скриптовые функции для математических операций и так далее.

PAK-файлы

Также можно хранить большую часть контента Game внутри PAK-файлов. Исключение составляют лишь файлы уровней, которые должны храниться за пределами PAK-файлов.

Рекомендуется использовать Resource Compiler для создания PAK-файлов. RC Job может использоваться для автоматизации этого процесса наряду с преобразованием промежуточных файлов в оптимизированные для конкретной платформы файлы. Статья «Компиляция ассетов для различных платформ» объяснит этот процесс.

TestResults

Эта папка используется для размещения пользователями файлов, которые могут быть созданы при использовании консольных команд, как SaveLevelStats.

Tools

Многочисленные автономные инструменты и экспортеры для CryENGINE можно найти в каталоге \Tools. При дистрибуции автономного приложения или игры, используя CryENGINE, нет необходимости включать каталог Tools.

User

Этот каталог создается во время выполнения для хранения файлов, созданных CryENGINE или Sandbox. Они включают в себя профили пользователей, скомпилированные комбинации шейдеров и временные файлы, созданные в Sandbox. Можно смело удалить этот каталог, когда CryENGINE не работает.