Model XNA模型渲染:纹理存在,但混乱

Model XNA模型渲染:纹理存在,但混乱,model,3d,xna,textures,blender,Model,3d,Xna,Textures,Blender,我刚刚发现如何从blender导出3D纹理模型,并成功地将其导入到我的xna程序中,但它似乎对纹理采样错误。起初我以为我的自定义HLSL效果文件搞砸了,但当我使用BasicFect渲染它时,发生了完全相同的事情。以下是纹理文件的图像: 这就是我的程序呈现立方体的方式: 请注意,我不是在谈论纹理的插值,我的自定义HLSL文件使用点夹渲染纹理,这是使用基本效果。另外,如果你想知道,我还没有对它的照明效果,出于某种原因,纹理采样器变暗了脸上的红色像素。面部应具有与侧面相同的红色。 以下是我的模型加

我刚刚发现如何从blender导出3D纹理模型,并成功地将其导入到我的xna程序中,但它似乎对纹理采样错误。起初我以为我的自定义HLSL效果文件搞砸了,但当我使用BasicFect渲染它时,发生了完全相同的事情。以下是纹理文件的图像:

这就是我的程序呈现立方体的方式:

请注意,我不是在谈论纹理的插值,我的自定义HLSL文件使用点夹渲染纹理,这是使用基本效果。另外,如果你想知道,我还没有对它的照明效果,出于某种原因,纹理采样器变暗了脸上的红色像素。面部应具有与侧面相同的红色。 以下是我的模型加载方法:

private Model LoadModel(string assetName, out Texture2D[] textures) {
        Model newModel = Content.Load<Model>(assetName);
        textures = new Texture2D[newModel.Meshes.Count];
        int i = 0;
        foreach (ModelMesh mesh in newModel.Meshes)
            foreach (BasicEffect currentEffect in mesh.Effects)
                textures[i++] = currentEffect.Texture;

        return newModel;
    }

我完全不知道这是什么原因。让我知道我是否应该发布更多的代码,如果链接不起作用。非常感谢您的帮助

该纹理非常小,并且在大屏幕空间上被拉伸,您是否尝试过使用更高分辨率的纹理?效果很好:谢谢。知道为什么小纹理会发生这种情况吗?我不认为分辨率与采样有多大关系这里有三种纹理采样方法,点、线性和mipmap。Point是速度最快、质量最低的方法。但是无论你使用哪种方法,当你要求它以原始尺寸的许多倍显示纹理时,它都会很困难。
private void DrawModel(Model model, Texture2D[] textures, Matrix wMatrix, string technique) {
        Matrix[] transforms = new Matrix[model.Bones.Count];
        float aspectRatio = graphics.GraphicsDevice.Viewport.AspectRatio;
        model.CopyAbsoluteBoneTransformsTo(transforms);

        foreach (ModelMesh mesh in model.Meshes)
        {
            foreach (BasicEffect effect in mesh.Effects)
            {
                effect.View = Player.Camera.ViewMatrix;
                effect.Projection = Player.Camera.ProjectionMatrix;
                effect.World = Matrix.Identity;
            }
            mesh.Draw();
        }
    }