OpenGL,SOIL:我可以加载一个小的png文件或任何我想要的大小吗?

时间:2013-07-11 04:27:13

标签: opengl 3d soil

我正在学习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
}

1 个答案:

答案 0 :(得分:0)

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