How to build the source version of the ANX.Framework
Building using the build files is the recommended way to create a binary version of the ANX.Framework. We tried to make it as easy as possible to build all source files for different platforms and with different configurations using the NAnt build system.
The starting point to build ANX is the MakeAnxFramework.cmd
command in the build
folder. If you start this batch file (currently windows only) everything is compiled with a default configuration.Don't use a relative path to start MakeAnxFramework.cmd. Change the current working dir to the build folder. If you don't do that you will get strange error Messages.
Visual Studio 2010 or Visual Studio 2012 (Express or greater) supporting C#
To fully build the ANX.Framework from source you have to install the DirectX SDK (June 2010)
because the HLSL compilers are needed to generate the stock shaders.
If you want to create the msi installer packages for the windows operating system you need to install WIX v3.6
. You can download a installer on their codeplex site: http://wix.codeplex.com/releases/view/93929
Command line arguments
You can influence the building process by passing command line arguments to MakeAnxFramework
. These switches are currently available:project.anx.extended
If you set this value to true the ANX.Framework is compiled as extended version. This breaks
XNA compatibility but you have a extended feature set. The Kinect RenderSystem and MotionSensingDevice support is compiled only with this switch set e.g.
You have to set the switches using this syntax: -D:"project.anx.extended=true"
You can use the name of a build target to build only this target. These are the targets available:
- clean - cleans up the project folders and deletes all build artifacts.
- build - This is the default. It builds all targets that are necessary for creating the ANX.Framework binaries. For the complete list of targets called see the build file.
- windows - Setups the build environment for the default windows build. Must be called before the build target.
- linux - Setups the build environment for the linux build. Must be called before the build target.
- psvita - Setups the build environment for the PS Vita build. Must be called before the build target.
- metro - Setups the build environment for the Windows 8/Metro build. Must be called before the build target.
- anx - Builds the ANX.Framework.dll assembly only.
- rendersystem - Builds all available RenderSystems supported by the platform you are building for.
- inputsystem - Builds all available InputSystems and Assemblies containing InputDevices supported by the platform you are building for.
- soundsystem - Builds all available SoundSystems supported by the platform you are building for.
- platformsystem - Builds all available PlatformSystems supported by the platform you are building for.
- mediasystem - Builds all available MediaSystems supported by the platform you are building for.
- content_pipeline - Builds the ANX custom extensions for the content pipeline (e.g. the AnxEffectProcessor)
- tools - Builds custom tools used by ANX. This is the StockShaderCodeGenerator e.g. which is responsible for compiling all the shaders needed by the ANX.Framework.
- build_stock_shaders - Builds the StockShaderCodeGenerator and after that it generates all the shaders.
- generate_stock_shaders - Generate StockShaders without rebuilding the tools.
- create_packages - Creates the binary distribution packages of the ANX.Framework. Currently this is a ZIP-File and a MSI-Installer.
- create_zip_packages - Creates ZIP-Packages of the ANX.Framework.
- create_msi_packages - Creates a MSI-Installer for the ANX.Framework.
- generate_project_files - converts the default project files to be able to compiled for the specified target platform.