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

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

(Различия между версиями)
Перейти к: навигация, поиск
 
(4 промежуточные версии не показаны)
Строка 1: Строка 1:
-
{{В процессе перевода|дата=16 июня 2012|автор=1}}
+
== Корневой каталог ==
-
== Root directory ==
+
Корневой каталог CryENGINE содержит подкаталоги, которые кратко описаны в этом документе. Кроме того, может содержать конфигурационные файлы ''system.cfg'' и ''systemcfgoverride.cfg'', которые используются для настройки консольных переменных.
-
The root directory of CryENGINE has several sub-folders that are shortly explained in this document. Furthermore, it can contain the configuration files ''system.cfg'' and ''systemcfgoverride.cfg'' which are used to configure console variable settings.
+
-
Multiple log files will be written in the root directory.
+
Многочисленные лог-файлы будут записаны в корневой каталог.
-
== Bin32 and Bin64 ==
+
== Bin32 и Bin64 ==
-
The '''Bin32''' and '''Bin64''' directories contain the 32 bit and 64 bit Sandbox executables ('''Editor.exe'''), the game launcher ('''Launcher.exe'''), and all required engine DLL’s.
+
-
* '''Bin32\rc''': The Bin32 directory also contains a subdirectory called '''rc'''. The [[Using the Resource Compiler]] (RC) can be called by the engine on demand to transform source assets to an optimized format (e.g. TIF textures to DDS). There is no 64bit version of the Resource Compiler.
+
Каталоги '''Bin32''' и '''Bin64''' содержат 32- и 64-разрядные исполняемые файлы Sandbox ('''Editor.exe'''), программы запуска игры ('''Launcher.exe'''), и все необходимые движку DLL-файлы.
 +
 
 +
* '''Bin32\rc''': Каталог Bin32 также содержит подкаталог '''rc'''. [[Использование Resource Compiler|Resource Compiler]] (RC) может быть вызван движком по требованию для преобразования исходных ассетов в оптимизированный формат (например, TIF-текстур в DDS). 64-разрядная версия '''Resource Compiler''' не существует.
== Code ==
== Code ==
-
All C++ source code as well as solution and project files are located in the '''Code''' directory. The main solution of the engine is <tt>Code/Solutions/CryEngine.sln</tt> or <tt>Code/Solutions/CryEngineGfx.sln</tt>, depending on whether you have an SDK with support for Scaleform or not.
 
-
For more information on the source code, please see [[Getting Started with Game Code]].
+
Весь исходный код C++, а также решения и файлы проекта находятся в каталоге '''Code'''. Основное решение — это <tt>Code/Solutions/CryEngine.sln</tt> или <tt>Code/Solutions/CryEngineGfx.sln</tt>, в зависимости от того, есть ли у вас SDK с поддержкой Scaleform или нет.
 +
 
 +
Для получения дополнительной информации о исходным кодом, смотрите статью «[[Работа с кодом игры]]».
== Editor ==
== Editor ==
-
The '''Editor''' folder contains resources that are used by Sandbox, like icons and other UI data, settings and templates.
 
-
When redistributing a stand-alone application or game using CryENGINE, it is not needed to redistribute the '''Editor''' directory.
+
Папка '''Editor''' содержит ресурсы, которые используются в Sandbox, например, иконки и прочие UI данные, настройки и шаблоны.
 +
 
 +
При дистрибуции автономного приложения или игры, используя CryENGINE, нет необходимости включать каталог '''Editor'''.
== Engine ==
== Engine ==
-
The '''Engine''' directory has many redistributable files which are required by the Renderer and other systems. With CryENGINE 2 these files were stored in the '''Game''' directory, but this was moved to one central directory for simplifying maintenance when using multiple '''Game''' directories.
 
-
* '''Engine\Config''': Configuration in text files to set the different engine settings for low/high PC settings, consoles.
+
Каталог '''Engine''' содержит множество распространяемых файлов, которые требуются рендереру и другим системам. В CryENGINE 2 эти файлы хранятся в каталоге '''Game''', но были перенесены в один центральный каталог для упрощения технического обслуживания при использовании нескольких каталогов '''Game'''.
-
* '''Engine\Fonts''': Default TrueType font used by the engine (i.e. the in-game console).
+
 
-
* '''Engine\Shaders''': All the shader source and binary.
+
* '''Engine\Config''': Конфигурация в текстовых файлах, для установки различных параметров движка для низких/высоких конфигураций ПК, консолей.
-
* '''Engine\Shaders\EngineAssets''': Basic materials and textures required by the shaders.
+
* '''Engine\Fonts''': Стандартный TrueType шрифт, используемый в движке (то есть в внутриигровой консоли).
 +
* '''Engine\Shaders''': Все исходные коды и двоичные файлы шейдеров.
 +
* '''Engine\Shaders\EngineAssets''': Основные материалы и текстуры требуемые шейдерами.
== Game ==
== Game ==
-
All game specific data and assets are usually stored in the '''Game''' directory. It is possible to change the name of the game folder or have several game folders at the same time in a single CryENGINE root directory. The game folder and game DLL to be used can be configured with the console variables ''sys_game_folder'' and ''sys_dll_game'' that can be set in the system.cfg. Please see [[Смена папки игры]] for more information.
 
-
* '''Game\Animations''': Animation assets and Animation Graph files.
+
Все игровые данные и ассеты, как правило, хранятся в каталоге '''Game'''. Можно изменить название папки с игрой или использовать несколько папок одновременно в одном корневом каталоге CryENGINE. Папку с игрой и DLL игры, которые будут использоваться, могут быть настроены консольными переменными ''sys_game_folder'' и ''sys_dll_game'', которые могут быть установлены в '''system.cfg'''. Смотрите статью «[[Смена папки игры]]» для получения дополнительной информации.
-
* '''Game\Entities''': .ent files which instruct the Entity System about which script entity class should be registered.
+
 
-
* '''Game\Levels''': All the game levels should be in this directory.
+
* '''Game\Animations''': Анимации и файлы Animation Graph.
-
* '''Game\Libs''': Multiple data files to support different game systems.
+
* '''Game\Entities''': .ent-файлы, указывающие системе сущностей, какие классы скриптовых сущностей должны быть зарегистрированы.
-
* '''Game\Fonts''': Optional TrueType fonts used by the game.
+
* '''Game\Levels''': Все уровни игры должны быть в этом каталоге.
-
* '''Game\Materials''': Global XML Material files used by levels.
+
* '''Game\Libs''': Множество файлов данных для поддержки различных игровых систем.
-
* '''Game\Music''': Music assets.
+
* '''Game\Fonts''': Дополнительные TrueType шрифты, используемые в игре.
-
* '''Game\Objects''': All the static objects and skinned characters along with materials and textures required by them.
+
* '''Game\Materials''': Глобальные XML-файлы материалов, используемые уровнемя.
-
* '''Game\Prefabs''': XML Prefabs files created in Sandbox.
+
* '''Game\Music''': Музыка.
-
* '''Game\Scripts''': Lua scripts for Script Entity classes, AI and different game systems.
+
* '''Game\Objects''': Все статические объекты и персонажи вместе с материалами и текстурами необходимыми им.
-
* '''Game\Sounds''': All sounds assets.
+
* '''Game\Prefabs''': XML-файлы префабов созданные в Sandbox.
-
* '''Game\Textures''': All other textures required by levels or other textures re-used by multiple objects.
+
* '''Game\Scripts''': Lua-скрипты для классов скриптовых сущностей, ИИ и других игровых систем.
 +
* '''Game\Sounds''': Все звуки.
 +
* '''Game\Textures''': Все другие текстуры требуемые уровням или другие текстуры используемые несколькими объектами.
=== Game\Libs ===
=== Game\Libs ===
-
* '''Game\Libs\ActionGraphs''': Flowgraph saved in .xml format to be used with the AI System.
+
 
-
* '''Game\Libs\AnimationGraphTemplates''': Templates used by the Animation Graphs that allows special interaction.
+
* '''Game\Libs\ActionGraphs''': Flowgraph сохранённый в .xml-формат для использования системой ИИ.
-
* '''Game\Libs\Clouds''': Data used for clouds generation.
+
* '''Game\Libs\AnimationGraphTemplates''': Шаблоны используемые в Animation Graph для особых взаимодействий.
-
* '''Game\Libs\Communication''': .xml files used to implement the different in-game dialogs.
+
* '''Game\Libs\Clouds''': Данные, используемые для генерации облаков.
-
* '''Game\Libs\Config''': Default action maps templates.
+
* '''Game\Libs\Communication''': .xml-файлы используемые для внедрения различных игровых диалогов.
-
* '''Game\Libs\EntityArchetypes''': Entity archetypes libraries; used to specify predefined entity parameters or to provide new alias names to existing entity classes.
+
* '''Game\Libs\Config''': Стандартные шаблоны Action Map.
-
* '''Game\Libs\EquipmentPacks''': Pre-defined sets equipments used by actors on level startup.
+
* '''Game\Libs\EntityArchetypes''': Архетип-библиотеки сущностней; используются для определения предопределенных параметров сущностней или предоставления новых псевдонимов к существующим классам сущностней.
-
* '''Game\Libs\FlowgraphModules''':*'''Game\Libs\FlowNodes''': Flowgraphs templates.
+
* '''Game\Libs\EquipmentPacks''': Предустановленные наборы экипировки, используемые актёрами при запуске уровня.
-
* '''Game\Libs\GameAudio''':*'''Game\Libs\GameForceFeedback''':*'''Game\Libs\GameTokens''': Used by the GameTokens system to maintain persistent values across multiple levels.
+
* '''Game\Libs\FlowgraphModules''':
-
* '''Game\Libs\HitDeathReactionsData''':*'''Game\Libs\MaterialEffects''': Material Effect library.
+
* '''Game\Libs\FlowNodes''': Шаблоны Flowgraph.
-
* '''Game\Libs\MusicLogic''':*'''Game\Libs\Particles''': Particle Effect library.
+
* '''Game\Libs\GameAudio''':
-
* '''Game\Libs\Readability''':*'''Game\Libs\ReverbPresets''':*'''Game\Libs\Sky''':*'''Game\Libs\SmartObjects''': SmartObject templates.
+
* '''Game\Libs\GameForceFeedback''':
-
* '''Game\Libs\SoundMoods''':*'''Game\Libs\UI''':
+
* '''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 ===
-
* '''Game\Scripts\AI''': Scripts needed by the AI system, including behavior scripts and goal pipes.
 
-
* '''Game\Scripts\Entities''': Script based entity class.
 
-
* '''Game\Scripts\Expressions''':*'''Game\Scripts\FlowNodes''':*'''Game\Scripts\GameRules''': Script side implementations for the GameRules.
 
-
* '''Game\Scripts\Network''': .xml data to support the network system; including scheduler and compression policies defined for the entity classes.
 
-
* '''Game\Scripts\Utils''': General purpose script functions for math operations, etc.
 
-
=== Pak Files ===
+
* '''Game\Scripts\AI''': Скрипты необходимые системе ИИ, в том числе скрипты поведения и голпайпы.
-
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\Scripts\Entities''': Классы скриптовых сущностей.
 +
* '''Game\Scripts\Expressions''':
 +
* '''Game\Scripts\FlowNodes''':
 +
* '''Game\Scripts\GameRules''': Скриптовые реализации для GameRules.
 +
* '''Game\Scripts\Network''': .XML-данные для поддержки сетевой системы, в том числе планировщик и политики сжатия определенные для классов сущностей.
 +
* '''Game\Scripts\Utils''': Универсальные скриптовые функции для математических операций и так далее.
-
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.
+
=== PAK-файлы ===
 +
 
 +
Также можно хранить большую часть контента '''Game''' внутри PAK-файлов. Исключение составляют лишь файлы уровней, которые должны храниться за пределами PAK-файлов.
 +
 
 +
Рекомендуется использовать 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 не работает.
[[Категория:Бесплатный CryEngine]]
[[Категория:Бесплатный 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 не работает.