【问题标题】:OpenGL,SOIL: Can I load a small png file or any size I want?OpenGL,SOIL:我可以加载一个小的 png 文件或我想要的任何大小吗?
【发布时间】:2013-10-29 20:26:53
【问题描述】:

我正在学习 OpenGL,我使用 SOIL lib 将纹理(PNG 文件)映射到四边形 (遵循 NeHe 教程)。NeHe 使用了 256x256 的图像尺寸。我可以使用较小的图片吗?(任何尺寸或 2 尺寸的幂)? 我的加载纹理函数:

int LoadGLTextures()                                    
{


    texture[0] = SOIL_load_OGL_texture
        (
        "NeHe.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 |SOIL_FLAG_POWER_OF_TWO 
        );

    if(texture[0] == 0)
        return false;

    //glGenTextures(1, &texture[0]);
    glBindTexture(GL_TEXTURE_2D, texture[0]);
    glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR);
    glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR);


    return true;                                        // Return Success
}

【问题讨论】:

  • “我无法将其加载到纹理”...就像有人冲进房间并在您尝试时将您的键盘敲开一样?
  • 亲爱的 genpfault,请提出您的问题,而不是讽刺地暗示缺乏信息,OP 可能会对您的意思感到困惑 :) 他的母语可能不是英语。

标签: opengl 3d soil


【解决方案1】:

我认为您已经使用 Photoshop 或相同的软件重新调整图片大小,并注意您的图片大小应该是 2 的幂,并且在 64 和 256 之间。不需要为此编码,但是 openGL 屏幕的大小可以通过编码确定您要用于加载图片的内容;)

【讨论】:

    猜你喜欢
    • 2019-08-25
    • 1970-01-01
    • 1970-01-01
    • 2019-01-05
    • 1970-01-01
    • 2022-12-25
    • 2012-03-05
    • 2020-03-20
    • 2011-11-09
    相关资源
    最近更新 更多