如何将ppm文件转换为OpenGL纹理
How would I convert a ppm file to an OpenGL texture?
我有一个P6 PPM图像文件格式。
它将每个值存储为一个字节。
据我所知,我需要将它读取到一个char*数组中,并将其提供给OpenGL,但我不知道如何在中读取它
这样的东西行吗?
for (i number of pixels to read)
char toAdd;
image.read(&toAdd, 1);
charArray[i] = toAdd
主要问题似乎是它没有正确读取文件格式。我不太明白为什么。
根据OpenGL,您不需要将其包含在char数组中。这只是OpenGL提供的众多选项之一。如果你在谷歌上搜索"OpenGL纹理示例",你会发现很多示例:
- null终止符
- NeHe
您的示例是否有效取决于file
类型的工作方式。
在这个页面上,作者给出了另一个纹理映射的例子。他声称他的代码能够读取PPM文件格式。还有另一个SO页面进入纹理映射。
相关文章:
- 如何显示具有 opengl 纹理的灰度图像
- 无法使 opengl 纹理正常工作
- 现代OpenGL纹理金字塔
- OpenGL:纹理渲染被卡住
- 如何使用Qt多媒体和C++将.mp4视频从OpenGL纹理中保存出来
- 在某些情况下,多个 OpenGL 纹理不起作用?
- 如何将硬编码图像加载到 OpenGL 纹理中
- OpenGL 纹理会导致 ImGUI 窗口永久失焦
- 我如何将Win32窗口渲染到OpenGL纹理
- 将Pixeldata渲染到OpenGL纹理四边形中
- OpenGL纹理闪烁/有时在窗口大小上移动
- OpenGL 纹理坐标不起作用
- OpenGL 纹理状态使用警告:
- OpenGL纹理未显示
- OpenGL纹理不呈现
- 获取 OpenGL 纹理中特定像素的颜色
- C++ / OpenGL:纹理到像素图示例 - 缩小转换误差
- OpenGl 纹理拉扯
- OpenGL纹理格式,为OpenGL创建图像/纹理数据
- 创建原始OpenGL纹理数据(C++)