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

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

(Различия между версиями)
Перейти к: навигация, поиск
Строка 15: Строка 15:
== 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.
+
Весь исходный код C++, а также решения и файлы проекта находятся в каталоге '''Code'''. Основное решение - это <tt>Code/Solutions/CryEngine.sln</tt> или <tt>Code/Solutions/CryEngineGfx.sln</tt>, в зависимости от того, есть ли у вас SDK с поддержкой Scaleform или нет.
-
For more information on the source code, please see [[Getting Started with Game Code]].
+
Для получения дополнительной информации о исходным кодом, смотрите статью «[[Работа с кодом игры]]».
== Editor ==
== Editor ==
-
The '''Editor''' folder contains resources that are used by Sandbox, like icons and other UI data, settings and templates.
+
Папка '''Editor''' содержит ресурсы, которые используются в Sandbox, например, иконки и прочие UI данные, настройки и шаблоны.
-
When redistributing a stand-alone application or game using CryENGINE, it is not needed to redistribute the '''Editor''' directory.
+
При дистрибуции автономного приложения или игры, используя 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''' содержит множество распространяемых файлов, которые требуются рендереру и другим системам. В CryENGINE 2 эти файлы хранятся в каталоге '''Game''', но были перенесены в один центральный каталог для упрощения технического обслуживания при использовании нескольких каталогов '''Game'''.
-
*'''Engine\Config''': Configuration in text files to set the different engine settings for low/high PC settings, consoles.
+
*'''Engine\Config''': Конфигурация в текстовых файлах, для установки различных параметров движка для низких/высоких конфигураций ПК, консолей.
-
*'''Engine\Fonts''': Default TrueType font used by the engine (i.e. the in-game console).
+
*'''Engine\Fonts''': Стандартный TrueType шрифт, используемый в движке (то есть в внутриигровой консоли).
-
*'''Engine\Shaders''': All the shader source and binary.
+
*'''Engine\Shaders''': Все исходные коды и двоичные файлы шейдеров.
-
*'''Engine\Shaders\EngineAssets''': Basic materials and textures required by the 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'''. Можно изменить название папки с игрой или использовать несколько папок одновременно в одном корневом каталоге CryENGINE. Папку с игрой и DLL игры, которые будут использоваться, могут быть настроены консольными переменными ''sys_game_folder'' и ''sys_dll_game'', которые могут быть установлены в '''system.cfg'''. Смотрите статью «[[Смена папки игры]]» для получения дополнительной информации.
*'''Game\Animations''': Animation assets and Animation Graph files.
*'''Game\Animations''': Animation assets and Animation Graph files.

Версия 18:43, 5 февраля 2013

Эта страница страница помечена как находящиеся в процессе перевода с: 16 июня 2012.
Статью пометил сам автор статьи.


Содержание

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

Корневой каталог 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 assets and Animation Graph files.
  • 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\Libs: Multiple data files to support different game systems.
  • Game\Fonts: Optional TrueType fonts used by the game.
  • Game\Materials: Global XML Material files used by levels.
  • Game\Music: Music assets.
  • Game\Objects: All the static objects and skinned characters along with materials and textures required by them.
  • Game\Prefabs: XML Prefabs files created in Sandbox.
  • Game\Scripts: Lua scripts for Script Entity classes, AI and different game systems.
  • Game\Sounds: All sounds assets.
  • Game\Textures: All other textures required by levels or other textures re-used by multiple objects.

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\Clouds: Data used for clouds generation.
  • Game\Libs\Communication: .xml files used to implement the different in-game dialogs.
  • Game\Libs\Config: Default action maps templates.
  • Game\Libs\EntityArchetypes: Entity archetypes libraries; used to specify predefined entity parameters or to provide new alias names to existing entity classes.
  • Game\Libs\EquipmentPacks: Pre-defined sets equipments used by actors on level startup.
  • Game\Libs\FlowgraphModules:*Game\Libs\FlowNodes: Flowgraphs templates.
  • Game\Libs\GameAudio:*Game\Libs\GameForceFeedback:*Game\Libs\GameTokens: Used by the GameTokens system to maintain persistent values across multiple levels.
  • Game\Libs\HitDeathReactionsData:*Game\Libs\MaterialEffects: Material Effect library.
  • Game\Libs\MusicLogic:*Game\Libs\Particles: Particle Effect library.
  • Game\Libs\Readability:*Game\Libs\ReverbPresets:*Game\Libs\Sky:*Game\Libs\SmartObjects: SmartObject templates.
  • Game\Libs\SoundMoods:*Game\Libs\UI:

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

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.

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.

TestResults

This folder is used to place user-generated files that may be created when using console commands like SaveLevelStats.

Tools

Multiple stand-alone tools and exporters for CryENGINE can be found in the \Tools directory. When redistributing a stand-alone application or game using CryENGINE, it is not needed to redistribute the \Tools directory.

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.