我无法找到并解释我对glBitmap()用法的了解。我使用此功能的目的是能够使用OpenGL将字母和文本呈现到SDL屏幕。
我当前错误填写的代码是:
#include <SDL/SDL.h>
#include <SDL/SDL_opengl.h>
#include "functionfile.h"
int main(int argc, char **argv)
{
glClear(GL_COLOR_BUFFER_BIT);
GLubyte A[14] = {
0x00,0x00,
0x60,0xc0,
0x3f,0x80,
0x00,0x00,
0x0a,0x00,
0x0a,0x00,
0x04,0x00,
};
init_ortho(640,480);
glBitmap(100,100,0,0,50,50,A);
glLoadIdentity();
SDL_GL_SwapBuffers();
SDL_Delay(5000);
SDL_Quit();
return 0;
}
导致窗口中出现无法识别的白色100x100像素。
答案 0 :(得分:2)
请阅读glBitmap的文档并尝试理解它。你有一些严重的误解。
glBitmap的前两个参数告诉它,你输入的图像有多大。这不是目的地大小。其他参数会影响栅格位置的调整方式。 glBitmap不会缩放屏幕上的内容。如果您的位图是8x8像素,它将显示为8x8像素。
红皮书有一个关于glBitmap的相当不错的部分:http://fly.cc.fer.hr/~unreal/theredbook/chapter08.html