protected override void dispose(bool disposeManagedResources)
{
// this causes infinite recursions in axiom
//Shutdown();
// Deleting the HLSL program factory
if ( _hlslProgramFactory != null )
{
// Remove from manager safely
if ( HighLevelGpuProgramManager.Instance != null )
HighLevelGpuProgramManager.Instance.RemoveFactory( _hlslProgramFactory );
_hlslProgramFactory.Dispose();
_hlslProgramFactory = null;
}
if ( _pD3D != null )
{
_pD3D.Dispose();
_pD3D = null;
}
if ( _resourceManager != null )
{
_resourceManager.Dispose();
_resourceManager = null;
}
LogManager.Instance.Write( "D3D9 : {0} destroyed.", Name );
_D3D9RenderSystem = null;
base.dispose( disposeManagedResources );
}