GLSLShaderObjectsState vs. VertexProgramState/FragmentProgramState

Would someone please explain the differences between GLSLShaderObjectsState and VertexProgramState/FragmentProgramState?



I'm more used to seeing something like GLSLShaderObjectsState.



They both extend RenderState and provide methods for loading shader source.  But, the setUniform/setAttribute methods are more familiar.



AFAIK, there's only one jmetest example that uses GLSLShaderObjectsState.



Thanks in advance,

GLSL vs ARB shaders

Thanks … got it.