internal void Load()
{
// it is assumed this is only being called when the Material is being loaded
// load each texture unit state
for ( int i = 0; i < textureUnitStates.Count; i++ )
{
( (TextureUnitState)textureUnitStates[ i ] ).Load();
}
// load programs
if ( this.HasVertexProgram )
{
// load vertex program
_vertexProgramUsage.Load();
}
if ( this.HasFragmentProgram )
{
// load vertex program
_fragmentProgramUsage.Load();
}
if ( this.HasShadowCasterVertexProgram )
{
// load shadow caster vertex program
shadowCasterVertexProgramUsage.Load();
}
if ( this.HasShadowCasterFragmentProgram )
{
// load shadow caster fragment program
_shadowCasterFragmentProgramUsage.Load();
}
if ( this.HasShadowReceiverVertexProgram )
{
// load shadow receiver vertex program
_shadowReceiverVertexProgramUsage.Load();
}
if ( this.HasShadowReceiverFragmentProgram )
{
// load shadow receiver fragment program
_shadowReceiverFragmentProgramUsage.Load();
}
// recalculate hash code
DirtyHash();
}