GLSL透明度问题仅适用于iOS

时间:2016-10-23 17:08:06

标签: ios libgdx glsl shader transparency

我的LibGDX应用程序中有一个非常简单的着色器,它在Windows 10,MacOS和各种Android设备上运行良好,但在iOS上一切都是黑色的(用两个设备测试)。

是否有共同的"陷阱"这可以解释一下吗?

解决方案:

我必须在我的片段着色器顶部添加以下内容:

#ifdef GL_ES
  precision mediump float;
#endif

现在它无处不在。

1 个答案:

答案 0 :(得分:0)

如果您或库没有检查错误返回,通常会在没有任何明显原因的情况下获得黑屏,因为渲染上下文无声地失败。事情可能会失败的原因有很多。这些主要是由于驱动程序不支持您所依赖的功能。 (较新的GL版本或不支持的扩展程序的功能)其他常见情况部分缺少渲染。