2MGFX
The 2MGFX tool is used to build a MonoGame Effect from an input Microsoft FX or MGFX file.
Command Line
The command line options are:
2MGFX <SourceFile> <OutputFile> [/Debug] [/Profile:<DirectX_11,OpenGL,PlayStation4>]
Source File
The input effect file in typical FX format with samplers, techniques, and passes defined. This parameter is required.
Output File
The file to write for the output compiled MGFX file. This parameter is required.
NOTE: The generated file is not an XNB file for use with the ContentManager.
Debug Info
If the /Debug
flag is passed the resulting compiled MGFX file will contain extra debug information and the fewest possible optimizations.
Platform Profile
The /Profile
option defines the platform we're targeting with this effect file. It can be one of the following:
DirectX_11
OpenGL
PlayStation4
PSVita
XboxOne
Switch
NOTE: PlayStation 4, Xbox One, PS Vita, and Switch support is only available to licensed console developers.
Help
If you use /?
, /help
, or simply pass no paramters to 2MGFX.exe you will get information about these command line options.
Runtime Use
The resulting compiled MGFX file can be used from your game code like so:
byte[] bytecode = File.ReadAllBytes("mycompiled.mgfx"); var effect = new Effect(bytecode);
This is basically how the stock effects (BasicEffect, DualTextureEffect, etc) are compiled and loaded.