【问题标题】:Use one vertex/fragment shader in multiple programs在多个程序中使用一个顶点/片段着色器
【发布时间】:2011-11-25 11:17:47
【问题描述】:

在 OpenGL ES 2.0 中,是否可以在多个链接程序中使用已编译的顶点/片段着色器?

例如,假设我有 1 个已编译的顶点着色器和 5 个已编译的片段着色器。我可以创建 5 个不同的程序(vsh1+fsh1、vsh1+fsh2 等)吗?

据我所知,这应该是可能的,但问也无妨。

谢谢

【问题讨论】:

    标签: opengl-es-2.0 shader pixel-shader fragment-shader vertex-shader


    【解决方案1】:

    是的,你可以,但据我了解,你仍然需要单独设置所有制服。 我认为这就是可分离程序诞生的原因,但您在 Es 2.0 中无法访问它们(这是 OpenGL 4.0 功能),所以我认为这是唯一的方法。

    关于它的一些讨论here

    【讨论】:

    • 是的,设置制服和属性是在程序上完成的,因此必须为每个人设置它们是有意义的(即使在同一个顶点着色器中使用了一些制服)。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-24
    • 2011-05-24
    • 1970-01-01
    • 1970-01-01
    • 2020-01-21
    • 2019-07-31
    相关资源
    最近更新 更多