对于视觉研究实验,我有一个支持10位/通道(=30位颜色)的监视器。我想在一个使用全位深度的简单场景中呈现一个三角形网格,并且我想将这个呈现保存为一个.png文件。渲染只用于单一的静态图像,并且不需要闪电般的快速发生。
对于三角形网格,我有:
我的硬件包括(可能不相关)
我尝试使用pyrender,但它将呈现的场景输出为uint8 (限制为8位)。
我找不到任何OpenGL或PyOpenGL在10位或更高位置呈现网格的代码示例。随着>8位监视器的日益流行,这当然是可能的吗?
我可以用什么来渲染10位/通道深度的网格呢?
带有更具体问题的编辑:
我有一个三角形网格(点,顶点,法线)。如何在场景中呈现它(在此步骤中没有必要显示),并将此呈现保存为10位深度的.png文件?稍后,我想在10位显示器上显示这个.png .
发布于 2021-02-23 10:57:49
当您创建一个framebuffer对象(FBO)时,您可以决定要呈现给哪种缓冲区。大多数应用程序都会使用GL_RGBA8纹理作为颜色缓冲区,但您不必.
下面列出了您的图形驱动程序需要支持的所有格式。它还可能支持其他不在此列表中的格式,但该列表中有一些您可能感兴趣的格式:
GL_RGB10_A2 -每个R/G/B 10位,每像素A- 32位2位GL_RGBA16 - 16位GL_RGBA16F - 16位,但它们是浮点数,有1位符号,5位指数和10位尾数。https://stackoverflow.com/questions/66323974
复制相似问题