【问题标题】:Can you add a texture to an XNA project with code?你能用代码为 XNA 项目添加纹理吗?
【发布时间】:2014-03-16 03:24:02
【问题描述】:

我最近一直在尝试开发游戏,所以我今天才开始学习 XNA,在最后放弃了一个 WinForms 游戏之后。所以,我知道你应该在使用 Visual Studio 解决方案资源管理器时加载纹理,但是有没有办法用一行代码来做到这一点,类似于Game.LoadTexture(string filename); 或类似的东西?因为我更喜欢从代码中做所有事情以保持一切顺利。

【问题讨论】:

    标签: c# xna runtime textures loading


    【解决方案1】:

    如果您使用的是 XNA 3.1 或更早版本,您可以查看Texture.FromFile (see here)。此方法适用于1D2D3D 纹理,应在LoadContent 方法中使用。

    但是,如果您使用的是 XNA 4.0,则没有 Texture.FromFile 方法。取而代之的是Texture.FromStream(尽管我认为Texture3DTexture 没有FromStream 方法)。您可以创建一个方法来从文件加载纹理(在本例中为 Texture2D):(来自 here 的代码)

    private Texture2D TextureFromFile(string path)  
    {  
        FileStream fs = new FileStream(path, FileMode.Open);  
        Texture2D t2d = Texture2D.FromStream(GraphicsDevice, fs);  
        fs.Close();  
        return t2d;  
    } 
    

    另请参阅herehere 了解更多信息,尤其是后者用于从文件中获取textureTexture3D。 高温

    【讨论】:

    • 非常感谢!这正是我想要的!
    • 当然!很高兴它有帮助。
    猜你喜欢
    • 2023-03-17
    • 1970-01-01
    • 2014-08-31
    • 1970-01-01
    • 2020-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-18
    相关资源
    最近更新 更多