- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试在另一台计算机上打开Visual Studio项目。我不确定这是否相关,但最初我在查找MSAA像素格式时遇到问题,直到将WGL_SAMPLES_ARB参数从8更改为4。
但是,屏幕上的图像为黑白图像,没有响应任何矩阵变换。
我正在使用OpenGL SuperBible 5版中的GLShaderManager代码。调用glCompileShader()之后,它将使用GL_COMPILE_STATUS参数调用glGetShaderiv()。我设置了一个断点,并确定它会返回GL_FALSE。
这在我的另一台计算机上不会发生。知道是什么原因造成的吗?这台机器使用的是ATI Radeon HD 5450,我刚刚更新了驱动程序。
最佳答案
遗憾的是,GLSL是个滑溜溜的野兽,每个图形卡,驱动程序,平台和版本对于有效代码的构成都有不同的想法。
为了进行测试和调试,您应始终添加代码以检查GL_COMPILE_STATUS
和GL_LINK_STATUS
并纾困,或者如果编译失败则至少显示警告。
使用 glGetShaderInfoLog
和 glGetProgramInfoLog
分别从着色器编译器和链接器获取输出。这些可能会告诉您什么是错误的(或编译器认为是错误的)。
关于opengl - glGetShaderiv()GL_COMPILE_STATUS返回GL_FALSE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10806250/
我有时会在帧渲染期间通过 glDepthMask(GL_FALSE) 禁用深度缓冲区写入。这在某些 GPU 上运行得非常好(比如摩托罗拉 Droid 的 PowerVR),但是在带有 Adreno G
我是一名优秀的程序员,十分优秀!