テスト用に連番画像を出力して動画を作成したい場合のメモ
ちょっとレンダリング結果を動画にして確認したい場合に、.txt形式で出力してconvert (ImageMagic
1 /* 2 * Output image 3 */ 4 std::vector<unsigned char> buf(3*width*height); 5 glFlush(); 6 glReadBuff er(GL_BACK); 7 glPixelSto rei(GL_UNPACK_ ALIGNMENT, 1); 8 glReadPixe ls(0, 0, width, height, 9 GL_RGB, GL_UNSIGNE D_BYTE, &buf[0]); 10 11 char filename[1024]; 12 sprintf(filename, "%s_%04d.txt", basename, frame); 13 FILE *fp = fopen(filename, "w"); 14 fprintf(fp, 15 "# ImageMagic k pixel enumeratio n: %d,%d,%d,rgb\n", 16 width, height, 255); 17 for(int y = 0; y < host->height; ++y){ 18 for(int x = 0; x < host->width; ++x){ 19 int idx = (host->height - y - 1)*host->width + x; 20 fprintf(fp, "%d,%d: (%d,%d,%d)\n", 21 x, y, 22 buf[3*idx + 0], 23 buf[3*idx + 1], 24 buf[3*idx + 2]); 25 } 26 } 27 fclose(fp);
出来上がったら、
1 % convert basename_*.txt basename.mp4