永发信息网

MFC中opengl编程画图没有结果显示?

答案:3  悬赏:0  手机版
解决时间 2021-04-28 05:47
MFC中opengl编程画图没有结果显示?
最佳答案
OnDraw()是由OnPaint()内部调用的,系统只有在收到WM_PAINT消息后才调用OnPaint()。你可以试一试手动用CWnd::UpdateWindow()发出WM_PAINT消息,看看有没有图案;

你还可以试一试不在OnCreate()里获取DC,而在OnInitialUpdate()里获取DC,可能窗口创建完成后还不能马上获得DC;

其实,如果你能看到黑色背景,就说明已经在绘图了。只是因为观察点/视截体设置不当,才看不到三角形
另外,glClearColor()只需要在初始化阶段调用一次即可
全部回答
glLoadIdentity();后加一句glTranslate(0,0,-3);试试。追问还是不行,坐标的范围很奇怪,看网上的很多代码中的坐标范围都是从-1到1,但是我的好像不是,要把坐标中X,Y设的很大才能显示二维的图像,而Z坐标超过正负一就看不到图像了!真是搞不懂,默认的不都是正交投影吗,为什么这么奇怪呢?
glMatrixMode(GL_PROJECTION);// 选择投影矩阵
glLoadIdentity();// 重置投影矩阵
// 设置视口的大小
gluPerspective(45.0f,(GLfloat)width/(GLfloat)height,0.1f,100.0f);//width、height是窗口宽高
// 默认Z值范围太小了,自己调大点
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
然后把顶点Z值都设置为-5.0看看
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
嗓子总是左面疼,有时候疼的说话都说不来了,
问道电子密保怎么活的啊?
我的内存卡让狗吃了怎么办啊
你可以给我开通游戏人生不?
现在还能开10元的万花筒吗?有谁会?请教教·
西厢记的经典语句
我用qq旋风下载游戏,原本是用我的大号登陆的
相约银饰滦平店这个地址在什么地方,我要处理
请大师帮忙解解梦,谢谢了。
梦幻诛仙庆典大使的坐标是多少啊
中行跨省存款手续费
windows7能玩穿越火线么?
如何下载手机QQ 2010版
1.02Q奇迹。求高手指导加点。乱撞的离开
是不是人长大了就没有烦恼了呢?
推荐资讯
磁盘插入电脑打开出现系统内存被其他程序完全
谁能把空间名“那些过往”设计的好看点?
从鹰潭去福建永定坐什么车方便
3500以内 配个游戏电脑 带个低音效果好的音箱
松野木崎,怎么写(用日文)读(找几个相似音代替
梦龙为什么那么贵
同房时,应提前准备啥
什么才是铁哥们??
什么叫棉花.?
南川属于哪个省,重庆南川属于哪个省市区的
现在用什么护肤品最好??
请问2009腾讯嘉年华游戏礼包怎么可以得到的?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?