MonoGame with XNA Content Pipeline: Difference between revisions
Created page with "Because MonoGame doesn't have the XNA content pipeline implemented, my current work around is to create a XNA game just for content pipeline and then copy the compiled content..." |
No edit summary |
||
| Line 11: | Line 11: | ||
xcopy "$(SolutionDir)Presentation\Content\Contents\Contents\bin\x86\Debug\Content" "$(TargetDir)Content" /s /e /i /y | xcopy "$(SolutionDir)Presentation\Content\Contents\Contents\bin\x86\Debug\Content" "$(TargetDir)Content" /s /e /i /y | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== Troubleshooting == | |||
=== Error loading pipeline assembly === | |||
On Visual Studio 2019, whenever I attempt to build a XNA Game with a game content, I get the following error: | |||
{{highlight|lang=text|code= | |||
error loading pipeline assembly "C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Microsoft.Build.Framework.dll". GameContents | |||
}} | |||
The fix is to add the DLL assembly into the global assembly cache. Open a "Developer Command Prompt for VS 2019" as Administrator, then run: | |||
{{highlight|lang=terminal|code= | |||
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0>cd "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\amd64" | |||
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\amd64>gacutil /i Microsoft.Build.Framework.dll | |||
Microsoft (R) .NET Global Assembly Cache Utility. Version 4.0.30319.0 | |||
Copyright (c) Microsoft Corporation. All rights reserved. | |||
Assembly successfully added to the cache | |||
}} | |||
Search the C drive for Microsoft.Build.Framework.dll if you can't find it int he path above. | |||
[[Category:C-Sharp]] | [[Category:C-Sharp]] | ||
Latest revision as of 04:56, 4 March 2020
Because MonoGame doesn't have the XNA content pipeline implemented, my current work around is to create a XNA game just for content pipeline and then copy the compiled contents to my MonoGame project.
The XNA project will have a Pre/Post-build event that does the compiling and copying: Pre:
"$(VS100COMNTOOLS)..\IDE\devenv" "$(SolutionDir)Presentation\Content\Contents\Contents\Contents.csproj" /Rebuild
Post:
REM Copy the compiled XNA contents to the build directory.
xcopy "$(SolutionDir)Presentation\Content\Contents\Contents\bin\x86\Debug\Content" "$(TargetDir)Content" /s /e /i /y
Troubleshooting
Error loading pipeline assembly
On Visual Studio 2019, whenever I attempt to build a XNA Game with a game content, I get the following error:
error loading pipeline assembly "C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Microsoft.Build.Framework.dll". GameContents
The fix is to add the DLL assembly into the global assembly cache. Open a "Developer Command Prompt for VS 2019" as Administrator, then run:
C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0>cd "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\amd64"
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\amd64>gacutil /i Microsoft.Build.Framework.dll
Microsoft (R) .NET Global Assembly Cache Utility. Version 4.0.30319.0
Copyright (c) Microsoft Corporation. All rights reserved.
Assembly successfully added to the cache
Search the C drive for Microsoft.Build.Framework.dll if you can't find it int he path above.