XNA Monogame加载简单的FBX模型

mis*_*tzy 2 c# xna model visual-studio-express monogame

我正在尝试在Visual Studio Express 2013上使用Monogame加载一个fbx(cube.fbx)模型.我一直在环顾四周,从我能说的这应该是如此简单.但是,我无法找到解决问题的方法.

我的环境是带有Monogame的Visual Studio Express 2013.

我得到以下错误,无论我尝试什么:

"无法将多维数据集资产加载为非内容文件"

我已将fbx文件上的设置更改为:[内容,始终复制]

根据以下内容,没有"内容导入器"或"内容处理器"选项:http://msdn.microsoft.com/en-us/library/bb203933.aspx

初始化功能是:

protected override void Initialize()
    {
        // TODO: Add your initialization logic here
        Model model;
        Texture2D tex2d;

        tex2d = Content.Load<Texture2D>("spot");
        model = Content.Load<Model>("cube");
        base.Initialize();
    }
Run Code Online (Sandbox Code Playgroud)

程序在尝试加载模型的行处抛出错误.

希望,这是一个愚蠢的事情.

我上传了测试解决方案以重新创建此问题:https: //www.dropbox.com/s/2a6lir2z04kyv7u/CubeTest.rar

在此先感谢您的帮助!

编辑:添加以下目录结构以显示测试应用程序的结构:

   C:.
?   CubeTest.sln
?
????CubeTest
    ?   CubeTest.csproj
    ?   Game1.cs
    ?   Icon.ico
    ?   Program.cs
    ?
    ????bin
    ?   ????Windows
    ?       ????Debug
    ?       ?   ?   CubeTest.exe
    ?       ?   ?   CubeTest.pdb
    ?       ?   ?   CubeTest.vshost.exe
    ?       ?   ?   Lidgren.Network.dll
    ?       ?   ?   MonoGame.Framework.dll
    ?       ?   ?   SharpDX.Direct2D1.dll
    ?       ?   ?   SharpDX.Direct2D1.xml
    ?       ?   ?   SharpDX.Direct3D11.dll
    ?       ?   ?   SharpDX.Direct3D11.xml
    ?       ?   ?   SharpDX.Direct3D9.dll
    ?       ?   ?   SharpDX.Direct3D9.xml
    ?       ?   ?   SharpDX.dll
    ?       ?   ?   SharpDX.DXGI.dll
    ?       ?   ?   SharpDX.DXGI.xml
    ?       ?   ?   SharpDX.MediaFoundation.dll
    ?       ?   ?   SharpDX.MediaFoundation.xml
    ?       ?   ?   SharpDX.RawInput.dll
    ?       ?   ?   SharpDX.RawInput.xml
    ?       ?   ?   SharpDX.XAudio2.dll
    ?       ?   ?   SharpDX.XAudio2.xml
    ?       ?   ?   SharpDX.XInput.dll
    ?       ?   ?   SharpDX.XInput.xml
    ?       ?   ?   SharpDX.xml
    ?       ?   ?
    ?       ?   ????Content
    ?       ?           Cube.fbx
    ?       ?           spot.png
    ?       ?
    ?       ????Release
    ????Content
    ?       cube.fbx
    ?       spot.png
    ?
    ????obj
    ?   ????x86
    ?       ????Debug
    ?           ?   CubeTest.csproj.FileListAbsolute.txt
    ?           ?   CubeTest.csprojResolveAssemblyReference.cache
    ?           ?   CubeTest.exe
    ?           ?   CubeTest.pdb
    ?           ?   DesignTimeResolveAssemblyReferencesInput.cache
    ?           ?
    ?           ????InProcessTempFiles
    ?           ?       _CubeTest.g.cs
    ?           ?
    ?           ????TempPE
    ????Properties
            AssemblyInfo.cs
Run Code Online (Sandbox Code Playgroud)

Col*_*ell 5

您的内容需要位于一个单独的项目中,这是一个恰当命名的"内容项目",以便正确构建它.在XNA中,您将向主项目添加内容引用,但在MonoGame中,我认为您需要手动添加指向构建内容项目时生成的.xnb文件的链接.

因此,将cube.fbx和spot.png移动到内容项目中,然后右键单击 - >"添加现有项",并从内容项目的输出文件夹中添加cube.xnb和spot.xnb.确保单击"添加"按钮上的箭头并选择"添加为链接",这样您就可以使用最新的副本.