private void ReadShaders( InternalBspLump lump, BinaryReader reader )
{
reader.BaseStream.Seek( lump.offset, SeekOrigin.Begin );
shaders = new InternalBspShader[ lump.size / Marshal.SizeOf( typeof( InternalBspShader ) ) ];
for ( int i = 0; i < shaders.Length; i++ )
{
char[] name = Encoding.ASCII.GetChars( reader.ReadBytes( 64 ) );
shaders[ i ] = new InternalBspShader();
shaders[ i ].surfaceFlags = (SurfaceFlags)Enum.Parse( typeof( SurfaceFlags ), reader.ReadInt32().ToString() );
shaders[ i ].contentFlags = (ContentFlags)Enum.Parse( typeof( ContentFlags ), reader.ReadInt32().ToString() );
foreach ( char c in name )
{
if ( c == '\0' )
break;
shaders[ i ].name += c;
}
}
}