当前位置:  开发笔记 > 编程语言 > 正文

使用gldrawpixels进行opengl旋转

如何解决《使用gldrawpixels进行opengl旋转》经验,为你挑选了1个好方法。

我的团队目前仅限于在opengl 1.4平台上绘制图像,这意味着我们不能使用任何漂亮的纹理映射来绘制图像(是的,我们仅限于使用intel集成图形平台,这非常烦人).到目前为止,我们能够绘制,缩放和翻转图像,但是做图形的人声称在使用glDrawPixels时无法通过glRotate进行旋转,我们必须转到纹理等等,哪些不适用于英特尔平台.

我敢打赌他午餐时有一个旋转功能,比如glRotate,它可以用于直接位图.这样的功能存在吗?glRotate会工作吗?我对这个图形事物有点新手,但是除了通过纹理旋转之外,库不允许位图旋转似乎很荒谬.

谢谢.



1> Nils Pipenbr..:

你不能将glRotate与glDrawPixels一起使用.

glDrawPixels是迄今为止将像素放到屏幕上的最差且性能最差的方法.通过使用糟糕的书面软件光栅化器将像素放在屏幕上,您甚至可以获得更好的性能.

简而言之,glDRawPixels会将像素数据从过程内存复制到图形内存,并会进行一些非常简单的转换,如翻转和缩放.更先进的一切(如旋转)要求您实际使用图形芯片组的功能.例如,您必须使用纹理.

纹理确实有效.它们也适用于GL 1.4和Intel图形芯片组.我自己在这样的芯片组上工作了很长一段时间.你不会得到现代ATI或NVIDIA芯片组的性能,但它们也不是那么糟糕.

我最好的选择是有人试图创建两种尺寸的非功率纹理,但未能这样做并且决定纹理通常不适用于芯片组.

这不是真的.他们确实有效.您只需要知道OpenGL要求您以二维的力量创建纹理,并且您必须使用较大纹理的子矩形或将多个图像放入一个非常大的纹理(后者称为纹理图集).

您可以通过调整纹理坐标来补偿较大纹理中的较小图像.

推荐阅读
yzh148448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有