Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Opengl 缩放位图的方法_Opengl_Opengl Es_Opengl 3 - Fatal编程技术网

Opengl 缩放位图的方法

Opengl 缩放位图的方法,opengl,opengl-es,opengl-3,Opengl,Opengl Es,Opengl 3,我已经使用glBitmap很长时间了,我需要根据Windows显示设置进行缩放。对我来说,性能是关键,我买不起纹理喷灯或任何其他东西 glPixelZoom仅适用于glDrawPixels,因此我决定从glBitmap迁移到glDrawPixels 假设glBitmap和glDrawPixels都具有相同的性能 因此,我使用类型为GL\u位图、格式为GL\u COLOR\u索引的glDrawPixels,但像素是黑色的。 glBitmap使用glColor作为像素颜色,但我不知道如何使其适用于G

我已经使用glBitmap很长时间了,我需要根据Windows显示设置进行缩放。对我来说,性能是关键,我买不起纹理喷灯或任何其他东西

glPixelZoom仅适用于glDrawPixels,因此我决定从glBitmap迁移到glDrawPixels 假设glBitmap和glDrawPixels都具有相同的性能

因此,我使用类型为GL\u位图、格式为GL\u COLOR\u索引的glDrawPixels,但像素是黑色的。 glBitmap使用glColor作为像素颜色,但我不知道如何使其适用于GLDRAW像素

我知道从glBitmap生成实际RGB像素的可能性,但我试图找到一种简单的方法,glDrawPixels使用当前glColor绘制,可能使用一些像素贴图操作


有可能吗?

“对我来说,性能是关键”如果这是真的,为什么要使用
glBitmap
,这是一个极其缓慢的函数
glPixelZoom
glDrawPixels
的性能同样不为人所知,而
GL\u COLOR\u INDEX
图像也不为人所知。现代、高性能的OpenGL不会使用这样的东西。我必须维护旧代码,一些软件在1990年左右发布,它们使用旧OpenGL如果你能够从
glBitmap
迁移到
glDrawPixels
,为什么你不能迁移到“上传到纹理并使用着色器渲染它?”有一个没有任何着色器支持的专用旧渲染引擎,我不认为我能够在旧引擎中添加着色器体系结构,如果像素光栅化中存在1像素不匹配,许多测试将失败。您是否尝试使用纹理,或者您只是假设它会很慢?