Xna не загружает автоматически текстуры для модели.
Исключение, которое вы получаете, когда текстуры нет, генерируется компилятором ресурсов Xna и не связано с фактическим импортом чего-либо.
Чтобы решить эту проблему, загрузите текстуру вручную в LoadContent()
или в любом другом месте, где у вас есть ContentManager
, используя:
modelTexture = Content.Load<Texture2D>("mytexture");
и затем добавьте текстуру в качестве параметра, если у вас есть пользовательский эффект, или поместите его в свойство Texture
в экземпляре BasicEffect
при его рисовании:
foreach (ModelMesh mesh in model.Meshes)
{
foreach (BasicEffect eff in mesh.Effects)
{
eff.TextureEnabled = true;
eff.Texture = modelTexture;
}
mesh.Draw();
}
(хотя рисовать, очевидно, не следует в LoadContent()
)
Обратите внимание на eff.TextureEnabled = true;
, который требуется для активации текстур при использовании BasicEffect
.