可以';t使用DevIL打开文件

本文关键字:DevIL 文件 使用 可以 | 更新日期: 2023-09-27 18:22:10

以下是代码:

 public void LoadTexture(string textureId, string path)
    {
        int devilId = 0;
        Il.ilGenImages(1, out devilId);
        Il.ilBindImage(devilId); // set as the active texture
        if (!Il.ilLoadImage(path))
        {
            System.Diagnostics.Debug.Assert(false, "Could not open file, [" + path + "].");
        }
        // The files we'll be using need to be flipped before passing to OpenGL
        Ilu.iluFlipImage();
        int width = Il.ilGetInteger(Il.IL_IMAGE_WIDTH);
        int height = Il.ilGetInteger(Il.IL_IMAGE_HEIGHT);
        int openGLId = Ilut.ilutGLBindTexImage();
        System.Diagnostics.Debug.Assert(openGLId != 0);
        Il.ilDeleteImages(1, ref devilId);
        _textureDatabase.Add(textureId, new Texture(openGLId, width, height));
    }

我收到断言失败,无法打开文件[face.tif]错误。我确保face.tif文件在项目文件夹、解决方案文件夹、bin文件夹、bin''debug文件夹中,但仍然无法打开它。

我正在努力学习《严肃游戏创作的C#游戏编程》这本书。

可以';t使用DevIL打开文件

它正在代码运行的同一目录中查找文件face.tif

什么是设置传递到方法LoadTexture中的path

Form主类(Ex:Form.cs)上,将这两行放在构造函数的顶部:

public Form1(){
    InitializeComponent();
    _openGLControl.InitializeContexts();