【问题标题】:OpenGL multisampling doesn't work?OpenGL多重采样不起作用?
【发布时间】:2014-11-18 18:08:33
【问题描述】:

我使用 GL_MULTISAMPLE 调用 glEnable 并使用“vec4 颜色中的样本”作为片段着色器中的输入向量,但多重采样仍然关闭。 我究竟做错了什么?有没有我遗漏的部分?

附言我正在阅读官方的 OpenGL 编程指南(4.3 版)。

编辑:一些代码:

片段着色器如下:

#version 430
sample in vec4 color;
out vec4 outputColor;

void main()
{
    outputColor = color;
}

在我的应用程序中,我调用 glEnable(GL_MULTISAMPLE)。 之后我渲染了一个简单的旋转立方体,它显然没有抗锯齿。

【问题讨论】:

  • 你最好澄清你的问题。还要添加您尝试过的代码。
  • 您的代码不符合您的描述:...中的着色器必须是...中的示例
  • 是的,我的错,我使用了样本,但它仍然不起作用

标签: opengl antialiasing fragment-shader multisampling


【解决方案1】:

您必须为实际支持多重采样的窗口选择像素格式。否则,在 OpenGL 中启用多重采样将无效。

【讨论】:

  • 我使用 freeglut。如何为我的窗口选择像素格式?我已经调用了 glutInitDisplayMode( ... | GLUT_MULTISAMPLE )。
  • 另见Multisampling中的Render-to-Window部分。
猜你喜欢
  • 1970-01-01
  • 2013-04-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-07
  • 1970-01-01
相关资源
最近更新 更多