如何使用 SOIL for OpenGL c++ 加载不同的图像(循环)?

发布于 2024-12-12 03:28:11 字数 1016 浏览 0 评论 0原文

任何人都知道如何从我解析的 xml 中循环不同的图像(我使用 libxml2)然后加载它>在 C++ 中使用 SOIL 进行 OpenGL?这是我的代码:

LoadImage *img[0];
File getFile;
int a;
string imge;
vector<char*> image3;
void getImageNode(File getFile){
    vector<Image> image = getFile.getChildrenImage();
    a = image.size();
    Image image2;
    while(image.size()){
        image2 = image.front();
        imge = image2.getthumb();
        char *fileImage = &imge[0];
        image3.push_back(fileImage);  
        image.erase(image.begin());
    }
}
int main(int argc,char **argv){
    GetRootNode getrootNode;
    string xmlFile = "educationalVideo.xml";
    Parser xmlObj(xmlFile);
    getFile = xmlObj.getNode();  
    getImageNode(getFile);
    for(int i=0; i<=a; i++){
        while(image3.size()){
            char *fileImage2 = image3.front();
            img[i]=new LoadImage(fileImage2); //getting last image 
            image3.erase(image3.begin());
        }
    }
    return 0;
}

Anyone knows how to loop different image from xml I parse (I used libxml2) then load it > using SOIL for OpenGL in c++? here's my code:

LoadImage *img[0];
File getFile;
int a;
string imge;
vector<char*> image3;
void getImageNode(File getFile){
    vector<Image> image = getFile.getChildrenImage();
    a = image.size();
    Image image2;
    while(image.size()){
        image2 = image.front();
        imge = image2.getthumb();
        char *fileImage = &imge[0];
        image3.push_back(fileImage);  
        image.erase(image.begin());
    }
}
int main(int argc,char **argv){
    GetRootNode getrootNode;
    string xmlFile = "educationalVideo.xml";
    Parser xmlObj(xmlFile);
    getFile = xmlObj.getNode();  
    getImageNode(getFile);
    for(int i=0; i<=a; i++){
        while(image3.size()){
            char *fileImage2 = image3.front();
            img[i]=new LoadImage(fileImage2); //getting last image 
            image3.erase(image3.begin());
        }
    }
    return 0;
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

何以畏孤独 2024-12-19 03:28:11

这个怎么样?

GLuint tex_2d_1 = SOIL_load_OGL_texture
(
    "img1.png",
    SOIL_LOAD_AUTO,
    SOIL_CREATE_NEW_ID,
    SOIL_FLAG_MIPMAPS | SOIL_FLAG_INVERT_Y | SOIL_FLAG_NTSC_SAFE_RGB | SOIL_FLAG_COMPRESS_TO_DXT
);

GLuint tex_2d_2 = SOIL_load_OGL_texture
(
    "img2.png",
    SOIL_LOAD_AUTO,
    SOIL_CREATE_NEW_ID,
    SOIL_FLAG_MIPMAPS | SOIL_FLAG_INVERT_Y | SOIL_FLAG_NTSC_SAFE_RGB | SOIL_FLAG_COMPRESS_TO_DXT
);

How about this?

GLuint tex_2d_1 = SOIL_load_OGL_texture
(
    "img1.png",
    SOIL_LOAD_AUTO,
    SOIL_CREATE_NEW_ID,
    SOIL_FLAG_MIPMAPS | SOIL_FLAG_INVERT_Y | SOIL_FLAG_NTSC_SAFE_RGB | SOIL_FLAG_COMPRESS_TO_DXT
);

GLuint tex_2d_2 = SOIL_load_OGL_texture
(
    "img2.png",
    SOIL_LOAD_AUTO,
    SOIL_CREATE_NEW_ID,
    SOIL_FLAG_MIPMAPS | SOIL_FLAG_INVERT_Y | SOIL_FLAG_NTSC_SAFE_RGB | SOIL_FLAG_COMPRESS_TO_DXT
);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文