openGL的问题能在这里问吗?
怎样能把读出来的.ppm图像,显示在窗口里!下面的code是我把.ppm文件读出来,不知道怎样才能把图像显示出来,谢谢。还有我有个很奇怪的问题,我的cat_1.ppm如果放在source files里,读出来的就都是乱码,只好放在C://目录了。不知道问什么。
#include <stdafx.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <GL/glut.h>
int main(int argc, char** argv){
GLubyte *file;
FILE* pfile;
char ch[100];
int w,h,ccv;
pfile = fopen("C:\\cat_1.ppm","r");
if (pfile == NULL){
printf("No such file!");
}
else{
fgets(ch,100,pfile);
fgets(ch,100,pfile);
fscanf(pfile,"%d%d%d",&w,&h,&ccv); //因为第三行才有width, height
int r,g,b;
file = (GLubyte *)calloc(3*h*w,sizeof(GLubyte));
int c =0;
for (int i = h-1;i>=0;i--){
for (int j = 0; j<w; j++){
fscanf(pfile,"%d%d%d",&r,&g,&b);
file[c++] = (GLubyte)r;
file[c++] = (GLubyte)g;
file[c++] = (GLubyte)b;
}
}
fclose(pfile);
}
return 0;
}
[ 本帖最后由 crystalcarey 于 2010-2-9 00:05 编辑 ]