【发布时间】:2012-11-03 20:31:41
【问题描述】:
我无法在片段着色器的 gl_PointCoord 变量中获取有效值。我使用 libgdx,它是一个跨平台的 java 框架,它允许在桌面和 android 上运行相同的应用程序。着色器在 android 上与 OpenGL ES 一起工作正常,只有桌面似乎没有提供正确的插值但始终为零。
这可能是 libgdx 或图形驱动程序的问题吗?
英伟达 Quadro 3000M 驱动程序 275.33 Win 7 64 位 (Service Pack 1)
libgdx-0.9.6
【问题讨论】:
-
这是一个愚蠢的问题:你在画点吗?这些点有实际大小吗?无论如何,您没有提供足够的信息来回答这个问题。
-
是的,我是一个绘图点,它有一个实际大小。在带有opengl es的android上,它渲染得很好;即我能够对精灵进行纹理处理,因为我在 gl_PointCoord 中获得了有意义的值。在桌面上,它似乎总是为零。我可以使用 gl_PointCoord 作为片段着色器中的颜色值并得到一个黑色方块。这也支持我有一个有效的大小:我可以看到精灵,但它不能使用 gl_PointCoord 进行纹理处理,因为它似乎没有初始化......