gamebryo的shader几乎支持所有已知类型。前面一篇已经说过了。这里说下他的流程:
首先对于一种shader方式要先 new 一个NiDefaultClickRenderStep可以设置为不激活NiDefaultClickRenderStep::SetActive();
然后根据shader的作用把step加入到NiFrame.比如你是后期效果那么就要加入到队列的后面
m_spFrame->AppendRenderStep.
如果是运行时局部的shader那么就加入到队列前段
m_spFrame->PrependRenderStep
在初始化的时候按照为你的shader程序设置全局变量或者局部变量
NiShaderFactory::UpdateGlobalShaderConstant("LightDiffuse", sizeof(afLightDiffuse), &afLightDiffuse)
其他的gb会帮你完成了。具体没看那么细可能以后看完了回来补充