ラスターアルゴリズムを実装するには、glDrawPixelsを使用する必要があります。
現在、glDrawPixelsが機能しているという簡単な例を取得しようとしていますが、問題があります。
GLint height, width, size = 0;
GLbyte *image = NULL;
int i,j=0;
width = 512;
height = 512;
size = width*height;
image = (GLbyte*)malloc(sizeof(GLbyte)*size*3);
for(i = 0; i < size*3; i=i+width*3){
for(j = i; j < width*3; j=j+3){
image[j] = 0xFF;
image[j+1] = 0x00;
image[j+2] = 0x00;
}
}
glDrawPixels(width, height, GL_RGB, GL_BYTE, image);
free(image);
gluSwapBuffers();
上記は、私が機能させようとしているコードです。私の理解では、512x512の赤い正方形を描画するだけです。
しかし、私が得たのは下部にある1つの赤い行で、それ以外はすべて灰色です。