The GPU may have multiple texture units. By definition there is at least one, and in many cases there will be multiple. When a texture is 'bound', it is bound to a specific texture unit. TextureUnit0, is the default texture unit. In order to access a texture from within GLSL code, the texture is referenced based on the TextureUnit that it is bound to. So, for example, a texture that is bound to TextureUnit3 would be accessed in a sampler2D using the ordinal value '3'. The property 'OrdinalForShaders' gives this value.