XNA单游戏加载简单的FBX模型
本文关键字:简单 FBX 模型 加载 单游戏 游戏 XNA | 更新日期: 2023-09-27 18:15:25
我试图在Visual Studio Express 2013上使用Monogame加载fbx (cube.fbx)模型。我四处看了看,据我所知,这应该很简单。但是,我找不到解决问题的方法。
我的环境是Visual Studio Express 2013 with Monogame。
无论我尝试什么,我都会得到以下错误:
"无法将多维数据集资源加载为非内容文件"
我把fbx文件的设置改为:[Content, Copy Always]
没有"内容导入器"或"内容处理器"选项,详见: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();
}
程序在试图加载模型的那一行抛出错误。
希望是愚蠢的。
我已经上传了测试解决方案来重新创建这里的问题: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
您的内容需要在一个单独的项目中,一个恰当命名的"内容项目",以便正确构建它。在XNA中,你将添加一个内容引用到你的主项目,但在MonoGame中,我相信你需要手动添加一个链接到内容项目构建时生成的。xnb文件。
移动立方体。fbx和spot.png导入内容项目,然后右键单击->"添加现有项目"并添加多维数据集。XNB和现货。从内容项目的输出文件夹中获取XNB。一定要点击"添加"按钮上的箭头,然后选择"添加为链接",这样你就可以一直使用最新的副本。
你检查你的文件是否在正确的地方了吗?我和你一样有很长一段时间的错误,这只是因为我没有把我的文件放在我的项目的好地方。
(检查您的项目参数和您的计算机上的文件)
在您提供的解决方案中,fbx模型名为Cube。FBX,但你正试图"立方体"。fbx文件名中的大写C很重要。所以尝试加载"Cube"而不是"Cube"