Maya(MRenderItem
)中的渲染项目由着色器(MShaderInstance
)绘制,其中包含在绘制之前编译为一个大着色器的片段(gpu着色器片段)。 MShaderInstance
允许您添加自己的片段,首先通过xml声明它们。
我的问题是,如何将几何着色器插入MShaderInstance
?
我知道它们是受支持的,因为xml架构有一个元素geometryShader
,但是没有关于如何实际定义自己的示例。
例如,我有这个简单的几何着色器,仅用于测试,实际上甚至不生成任何东西:
layout (points) in;
layout (points) out;
layout (max_vertices = 1) out;
void main()
{
gl_Position = gl_in[0].gl_Position;
}
MShaderInstance
的相关方法是addOutputFragment
和addInputFragment
。它们都不适用于我的情况(都返回失败代码)。
我也找不到sdk中这个特殊情况(geom着色器)的任何例子。 任何帮助表示赞赏。