__利用OpenGL对切片图像进行叠加构建三维图像是一个不错的选择。但是在图片叠加过程中必然会遇到多纹理映射,或许一个小小的错误或者几句代码顺序问题就会挡住我们追逐梦想的脚步,哈哈哈,好恶心。
__首先多纹理贴图第一步必然是纹理图片的加载。QImage的load()函数你值得拥有。然而只有load()肯定是不够的,一般的,我们会将图像的格式命名如Image1.bmp,Image2.bmp等有明显序列标识的文件名。`编程平台Qt+Win7+VS2013
QImage buf,tex[32];
QString s,filename;
for (int i = 1; i <= 31; i++)
{
s = QString::number(i, 10);
filename = "D:/chengxu/chengxu/GLWenLi/octdata_jiaomo/" + s + ".bmp";
if (!buf.load(filename))
{
qWarning("load image failed!");
QImage dummy(128, 128, QImage::Format_RGB32);
dummy.fill(Qt::green);
buf = dummy;
}
tex[i-1] = QGLWidget::convertToGLFormat(buf);//转换成OpenGL的图片格式
接下来就是生成纹理了`
glGenTextures(1, &textur[i - 1]);//返回一个未用的ID用来命名纹理图片
glBindTexture(GL_TEXTURE_2D, textur[i-1]);
glTexImage2D(GL_TEXTURE