Documentation/Articles/Overview of Deployment Tool

From NeoAxis 3D Engine Wiki

Jump to: navigation, search
Go to higher level

Contents

Description

DeploymentToolIcon.jpg End product deployment tool (DeploymentTool.exe) is an utility to build the release version of the application for a certain platform. This tool provides automation of the end product deployment.

In the end of this article you can find a tutorial on building a package offering a step-by-step manual to use the Deployment Tool.

DeploymentTool 01.jpg

General Tab

The General tab includes main settings.

Property Description
Output Directory The folder where files of the final project are copied to.
Destination Platform Target platform. Currently, you can choose either Windows or Mac OS X. Further, more platforms will be available.
Include 32-bit binaries Should 32-bit executables be included to the project.
Include 64-bit binaries Should 64-bit executables be included to the project.
Application Directory Application folder to store user files. Specify here the name of a folder created after a user installs the application on his or her computer.
Data Directory Archivation Should the contents of the Data folder be packed. If the option is on, all resources are packed into a zip file.
Default Language Default language selected from the list. If Autodetect is selected, the language is chosen automatically based on detected locale settings on the user's computer.

Components Tab

The Components tab allows you to choose components of the engine to include into the final project. You can select libraries and parts of the engine you do or do not want to include. We recommend choosing only those components that you are to use.

DeploymentTool 02.jpg

The table below shows which components you can select for the given platform.

Name Description Win x86 Win x64 Mac OS X
Application_Configurator Engine configuration utility
Yes.jpg
Yes.jpg
No.jpg
Application_DedicatedServer Dedicated server.
Yes.jpg
Yes.jpg
No.jpg
Application_Game Project executable. Application entry point, engine initialization, project structure implementation classes, game screen navigation and user interaction.
Yes.jpg
Yes.jpg
Yes.jpg
Archive_ZIP Zip-archive support.
Yes.jpg
Yes.jpg
Yes.jpg
Entity_DecorativeObjectManager Decorative object manager. Provides rendering of a large number of small 3D objects. You can read the detailed description here.
Yes.jpg
Yes.jpg
Yes.jpg
Entity_GridBasedNavigationSystem. 2D-grid based pathfinding system.
Yes.jpg
Yes.jpg
Yes.jpg
Entity_HeightmapTerrain Heightmap based terrains.
Yes.jpg
Yes.jpg
Yes.jpg
Entity_RecastNavigationSystem Navigation mesh pathfinding system.
Yes.jpg
Yes.jpg
Yes.jpg
GUIControl_WebBrowserControl An in-GUI Web browser control.
Yes.jpg
Yes.jpg
Yes.jpg
ImportingModel_ASSIMP Support for Open Asset Import Library to import 3D models to the engine. You can read more about importing models here.
Yes.jpg
Yes.jpg
No.jpg
ImportingModel_FBX Support for the FBX format by Autodesk. You can read more about importing models here.
Yes.jpg
Yes.jpg
No.jpg
MapEditorAddon_ExampleAddonCreation Example addon for the Map Editor.
Yes.jpg
Yes.jpg
No.jpg
MapEditorAddon_ExportTo3DModel Addon for the Map Editor to export selected map objects to a 3D model.
Yes.jpg
Yes.jpg
No.jpg
PhysicsSystem_ODE Physics subsystem based on the Open Dynamics Engine library.
Yes.jpg
Yes.jpg
Yes.jpg
PhysicsSystem_PhysX Physics subsystem based on the PhysX library by NVIDIA.
Yes.jpg
Yes.jpg
Yes.jpg
ProjectCommon Common library encompassing various project classes including material types, network services, engine console class, user GUI classes and others.
Yes.jpg
Yes.jpg
Yes.jpg
ProjectEnities Library that includes descriptions of various game classes.
Yes.jpg
Yes.jpg
Yes.jpg
RenderingSystem_Direct3D9 Direct3D9 rendering system.
Yes.jpg
Yes.jpg
No.jpg
RenderingSystem_NULL Null rendering system. Can be used in a server application.
Yes.jpg
Yes.jpg
No.jpg
RenderingSystem_OpenGL OpenGL rendering system.
Yes.jpg
Yes.jpg
Yes.jpg
ResourceEditorAddon_ExampleAddonCreation Example addon for the Resource Editor.
Yes.jpg
Yes.jpg
No.jpg
SoundSystem_DirectSound Sound subsystem based on DirectSound.
Yes.jpg
Yes.jpg
No.jpg
SoundSystem_NULL Null sound subsystem.
Yes.jpg
Yes.jpg
Yes.jpg
SoundSystem_OpenAL Sound subsystem based on OpenAL.
Yes.jpg
Yes.jpg
Yes.jpg
StaticLightingCalculation_Simple Simple static lighting calculation system.
Yes.jpg
Yes.jpg
No.jpg

Additional Files Tab

On this tab you can specify libraries and files that aren't registered components (for example a user's custom components). They will be exported along with the project.

DeploymentTool 03.jpg

File Exceptions Tab

On this tab you can specify files to exlude from the final project. In the first box you can specify semicolon separated file extensions to exclude from the project. In the second box you can specify paths to individual files and folders.

DeploymentTool 04.jpg

Build Events Tab

Here you can specify commands executed on the project build stage. Commands are executed using the Windows command line (.cmd, .bat files).

Specify commands to execute after copying files in the first box and commands to execute after the project is built in the second box. commands can use macros. You can view the list of macros by clicking the Macros button.

DeploymentTool 05.jpg

Deployment Tool Menu

File Menu

DeploymentTool 06.jpg

The File menu includes the following items:

Title Description
New Create a new project.
Open Open a saved project.
Save Save settings of the current project. The shortcut is Ctrl+S.
Save As... Save project settings under a new name of the settings file and into another folder.
Exit Exit the tool.

Build Menu

DeploymentTool 07.jpg

There is only one item in the Build menu — "Deploy...", it starts building the project — copying all necessary files to the selected output directory taking all settings into consideration.

Help Menu

DeploymentTool 08.jpg

The Help menu includes the following items:

Title Description
Overview of the Deployment Tool Open the description of the tool, that is the present article.
Documentation Open the documentation homepage.
About... Open the "About" window of the program.

Toolbar

DeploymentTool 09.jpg

The following quick-launch buttons are located on the toolbar:

  • New — create a new project,
  • Open — open a previously saved project,
  • Save — save the project,
  • Deploy — deploy the project.

Tutorial — Building a turnkey package of a common application

This little tutorial shows how to build a turnkey package.

Before you begin building the package, compile your project. Also, we recommend recompile the shader cache.

Now we can run our build. Run the Deployment Tool.

General Tab

At first, specify a folder to store the ready project. Click the "..." button next to the Output Directory field and select a folder.

Then, choose the target operating system: Windows. Leave other parameters with their default values.

Using certain platforms is reflected in component configuration.
DeploymentTool 10.jpg
If you use 64-bit Windows, don't forget to compile the project with the Any CPU option on.

Components Tab

Components for the build are chosen based on the needs of your project and according to capabilities of the target platform. For the sake of this tutorial we leave all component settings intact.

The list of components available for various platforms can be found in this section.

DeploymentTool 11.jpg

Building

Save settings with the File -> Save menu.

Now, let's build. Select the Deploy item in the Build... menu. A window opens asking you whether you want to purge the package folder. Before you click Yes make sure the package folder (Output directory) is empty.

DeploymentTool 12.jpg

After that, a window with the list of successful operations opens. As soon as deployment completes, click the Close button.

DeploymentTool 13.jpg

We finished preparing of the package.